Bosch Rexroth R911289191 Manuel utilisateur

Ajouter à Mes manuels
422 Des pages
Bosch Rexroth R911289191 Manuel utilisateur | Fixfr
Guide de programmation
SPS
18VRS
Manuel de l’utilisateur
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2 8 9 1 9 1
A propos de ce manuel
Guide de programmation SPS - 18VRS
Titre
Guide de programmation SPS 18VRS
Nature de la documentation
Manuel de l’utilisateur
Document
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Remarque pour classement
interne
• Dossier 3 / Registre 3
Objectif de la documentation?
La présente documentation donne un aperçu du système de
programmation et de mise en route de la SPS en conformité avec la
norme EN 61131-3.
• Numéro d'identification: 120-0400-B338-01/FR
• Chapitre
2
Afin de représenter l'étendue de ce manuel dans son contexte, le
chapitre 2 donne tout d'abord un aperçu des modèles fondamentaux
de la norme.
• Chapitre
3 - 10
Description des différents éditeurs du système.
• Chapitre
11
Survol intégral du système de programmation.
Suivi des modifications
Protection
Désignation du
document Editions
antérieures
Etat
Remarque
109-1041-4123-01
06.98
Nouvelle édition Version 18
nouveautés:
par rapport à la version 4.17
-document: 109-0768-4197-01
Variables système en SFC/AB
Modes de fonctionn. SFC/AB
Qualificatifs d'action P0/P1
Variables globales/ externes
Extension éditeur IO
 INDRAMAT GmbH, 1998
Toute transmission et reproduction de la présente documentation ainsi
que toute exploitation et communication à tiers de son contenu sont
interdites, à moins qu’elles n’aient été expressément autorisées. Toute
infraction à la présente disposition obligera son auteur à paiement de
dommages et intérêts. Les droits découlant d’une délivrance de brevet ou
d’enregistrement en tant que modèle déposé sont réservés. (DIN 34-1)
Validité
Sous réserve de modifications du contenu de la présente documentation
et des possibilités de livraison des produits.
Editeur
Rexroth Indramat GmbH ### Bgm.-Dr.-Nebel-Str. D-97816 Lohr a. Main
Téléphone 09352/40-0 • Tx 689421 • Fax 09352/40-4885 Dépt.
Dépt. ECS (DR.V.Ha)
Remarque
La présente documentation est imprimée sur papier blanchi sans
chlore
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Sommaire I
Sommaire
1 Préface ......................................................................................................................... 1-1
2 Généralités .................................................................................................................. 2-1
1.1 Conventions générales ........................................................................................................................ 2-3
Jeu de caractères.......................................................................................................................... 2-3
Indentificateur (Nom)........................................................................................................ 2-3
Mots clés (Keyword) ......................................................................................................... 2-3
Emploi des caractères espace ......................................................................................... 2-3
Commentaires .................................................................................................................. 2-3
Représentation des données ........................................................................................................ 2-3
Représentation numérique, .............................................................................................. 2-3
Représentation temporelle, .............................................................................................. 2-4
Représentation de chaînes de caractères........................................................................ 2-4
1.2 Types de données................................................................................................................................ 2-5
Types élémentaires de données ................................................................................................... 2-5
Types de données dérivés ............................................................................................................ 2-7
Pointeur et Adresse de.................................................................................................................. 2-8
Initialisation.................................................................................................................................. 2-11
1.3 Variables ............................................................................................................................................ 2-11
Représentation de variables à un élément.................................................................................. 2-11
Accès périphérique direct en évitant la structure triphasée ........................................................ 2-13
Représentation de variables à plusieurs éléments ..................................................................... 2-14
Constantes d'adresse.................................................................................................................. 2-17
Déclaration et initialisation........................................................................................................... 2-18
1.4 Unités d'organisation de programme ................................................................................................. 2-19
Fonctions (FUNCTION)............................................................................................................... 2-19
Fonctions standard et micrologicielles ........................................................................... 2-19
Architecture d'une fonction définie par utilisateur........................................................... 2-19
Exemple Fonction utilisateur ........................................................................................ 2-20
Utilisation de fonctions à l'intérieur de fonctions............................................................. 2-21
Blocs fonctionnels (FUNCTION BLOCK) .................................................................................... 2-21
Blocs fonctionnels standard et micrologiciels................................................................. 2-22
Architecture d'un bloc fonctionnel utilisateur .................................................................. 2-22
Exemple Bloc fonctionnel utilisateur............................................................................. 2-23
Utilisation de fonctions et de blocs fonctionnels dans des blocs fonctionnels ............... 2-26
Programme (PROGRAM) ........................................................................................................... 2-27
Exemple: Programme écrit par utilisateur .................................................................... 2-28
Utilisation de fonctions et de blocs fonctionnels dans des programmes........................ 2-28
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
II Sommaire
Guide de programmation SPS - 18VRS
Variables globales dans programmes et variables externes dans FB ........................................ 2-29
Blocs fonctionnels standard et Fonctions standard dans la bibliothèque.................................... 2-30
Représentation de programmes, blocs fonctionnels, fonctions et types de données en format
ASCII ........................................................................................................................................... 2-31
3 Détermination de la configuration matérielle, Tableaux IO..................................... 3-1
3.1 Principe de base de la configuration .................................................................................................... 3-2
Tableau IO du Maître à fibres optiques (LWL-Master), MT-CNC ................................................. 3-3
Architecture du maître à fibres optiques .......................................................................... 3-3
Edition du tableau IO du Maître à fibres optiques ............................................................ 3-3
Représentation ASCII- du Maître à fibres optiques.......................................................... 3-5
Tableau IO de l'esclave à fibres optiques (LWL-Slave), MT-CNC................................................ 3-7
Architecture de l'esclave à fibres optiques ....................................................................... 3-7
Edition du tableau IO de l'esclave à fibres optiques......................................................... 3-7
Représentation ASCII l'esclave à fibres optiques............................................................. 3-7
Tableau IO IBM1 (IBS-Master G3), MT-CNC ............................................................................... 3-7
Architecture de l'IBM1 ...................................................................................................... 3-7
Edition du tableau IO IBM1 (IBS-Master G3) ................................................................... 3-8
Représentation ASCII de l'IBM1..................................................................................... 3-10
Création de nouveaux postes dans la liste de sélection Interbus-S-.............................. 3-10
Tableau IO IBM2 (IBS-Master G4), ISP200-P/R......................................................................... 3-12
Architecture de l'IBM2 (IBS-Masters G4) ....................................................................... 3-12
Edition du tableau IO de l'IBM2 ...................................................................................... 3-12
Représentation ASCII de l'IBM2..................................................................................... 3-16
Création de nouveaux postes dans la liste de sélection Interbus-S-.............................. 3-17
Modification du comportement au démarrage................................................................ 3-18
Tableau IO DPM01 (Profibus DP Master), ISP200-P/R............................................................. 3-19
Architecture du Maître DP (DP-Master) ......................................................................... 3-19
Edition du tableau IO du Maître DP (DP-MASTER) ....................................................... 3-19
Représentation ASCII du Maître DP (DP-MASTER)...................................................... 3-20
Tableau IO DPS1 (Profibus DP Slave), ISP200-P/R ................................................................. 3-20
Architecture de l'esclave DP (DP-Slave) ........................................................................ 3-20
Edition du tableau IO de l'esclave DP (DP-Slave).......................................................... 3-21
Représentation ASCII de l'esclave DP (DP-Slave) ........................................................ 3-21
Tableau IO DNM01 (DeviceNet Master), ISP200-P/R ............................................................... 3-22
Architecture du DeviceNet-Master ................................................................................. 3-22
Edition du tableau IO du DeviceNet-MASTER ............................................................... 3-22
Représentation ASCII du DeviceNet-Master.................................................................. 3-23
Tableau IO des SIO-3 (Ports série), MT-CNC ............................................................................ 3-23
Représentation ASCII des SIO-3 ................................................................................... 3-23
Tableau IO CLC-P02 (Synax/ GPS), Synax ISP200/ VM ISP200............................................... 3-24
Architecture du CLC-P02 ............................................................................................... 3-24
Edition du tableau IO du CLC-P02 ................................................................................. 3-24
Représentation ASCII du CLC-P02................................................................................ 3-24
Tableau IO PEA3/4, IPS200-P/R ................................................................................................ 3-25
Architecture du PEA3/4 .................................................................................................. 3-25
Edition du tableau IO du PEA3/4.................................................................................... 3-25
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Sommaire III
Représentation ASCII du PEA3/4................................................................................... 3-25
Tableau IO du bus RECO .......................................................................................................... 3-26
Architecture du Bus RECO............................................................................................. 3-26
Edition du tableau IO du Bus RECO .............................................................................. 3-26
Représentation ASCII du Bus RECO ............................................................................ 3-27
Tableau IO de la boucle SERCOS.............................................................................................. 3-28
Edition du tableau IO du Bus RECO .............................................................................. 3-28
Représentation ASCII du bus SERCOS......................................................................... 3-30
3.2 Options dans l'éditeur IO.................................................................................................................... 3-31
Option 'Paramètres généraux'..................................................................................................... 3-31
3.3 Aide à la mise en route dans l'éditeur IO ........................................................................................... 3-32
3.4 Aide dans l'éditeur IO ......................................................................................................................... 3-32
3.5 Touches dans l'éditeur IO .................................................................................................................. 3-34
Menu local dans Editeur IO (Pop_Up-Menü) .............................................................................. 3-34
Instructions bloc dans l'éditeur IO ............................................................................................... 3-35
Instructions Quick dans l'éditeur IO ............................................................................................ 3-36
4 Importation .................................................................................................................. 4-1
4.1 Architecture de la section importation.................................................................................................. 4-2
4.2 Edition d'une section d'importation....................................................................................................... 4-3
Importation de blocs fonctionnels.................................................................................................. 4-4
Importation de fonctions................................................................................................................ 4-5
Importation de types de données .................................................................................................. 4-6
Editeur d'interfaces........................................................................................................................ 4-6
Possibilités d'adaptation dans l'éditeur d'interfaces ......................................................... 4-9
Représentation ASCII de l'éditeur d'importation ......................................................................... 4-10
4.3 Aide à la mise en route dans l'éditeur d'importation .......................................................................... 4-10
4.4 Options dans l'éditeur d'importation................................................................................................... 4-10
4.5 Aide dans l'éditeur d'importation ........................................................................................................ 4-10
4.6 Touches dans l'éditeur d'importation ................................................................................................. 4-14
Touches générales...................................................................................................................... 4-14
Touches accessibles via le menu local dans l'éditeur d'importation ........................................... 4-14
Instructions bloc dans l'éditeur d'importation .............................................................................. 4-15
Instructions quick dans l'éditeur d'importation............................................................................. 4-15
5 Déclaration .................................................................................................................. 5-1
5.1 Architecture de la section déclaration .................................................................................................. 5-2
Section déclaration d'un programme ............................................................................................ 5-3
Section déclaration d'un bloc fonctionnel ...................................................................................... 5-7
Section déclaration d'une fonction .............................................................................................. 5-11
5.2 Edition d'une section déclaration ....................................................................................................... 5-13
Déclaration de variables.............................................................................................................. 5-13
Fenêtre de sélection lors de la déclaration de variables ............................................................. 5-14
Convention pour l'affectation des blocs fonctionnels .................................................................. 5-16
Fenêtre de sélection pour la convention de blocs fonctionnels................................................... 5-17
5.3 Convention de types de données dans l'éditeur de déclaration......................................................... 5-18
Entrée d'une structure avec variables élémentaires ................................................................... 5-19
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
IV Sommaire
Guide de programmation SPS - 18VRS
Entrée d'un tableau avec variables élémentaires........................................................................ 5-20
Entrée d'un tableau avec des structures en tant qu'élément ...................................................... 5-21
5.4 Aide à la mise en route dans l'éditeur de déclaration ........................................................................ 5-23
Affichage d'informations sur l'état ............................................................................................... 5-23
Listage de variables et d'éléments de variables avec noms et informations sur leur état .......... 5-26
5.5 Options dans l'éditeur de déclaration................................................................................................. 5-28
Option 'Paramètres généraux'..................................................................................................... 5-28
Option ‘Paramètres de l'écran’ .................................................................................................... 5-29
5.6 Aide dans l'éditeur de déclaration ...................................................................................................... 5-30
5.7 Touches dans l'éditeur de déclaration ............................................................................................... 5-34
Touches générales...................................................................................................................... 5-34
Touches accessibles via le menu local dans l'éditeur de déclaration ......................................... 5-35
Combinaisons de touches pour Instructions bloc dans l'éditeur de déclaration.......................... 5-36
Combinaisons de touches pour instructions Quick dans l'éditeur de déclaration ....................... 5-38
6 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART....................... 6-1
6.1 Eléments de base ................................................................................................................................ 6-2
Etapes (STEP) .............................................................................................................................. 6-2
Transitions (TRANSITION) ........................................................................................................... 6-2
Lignes fléchées ............................................................................................................................. 6-3
Séquences alternatives. ................................................................................................................ 6-3
Séquences parallèles .................................................................................................................... 6-4
Lois d'exécution............................................................................................................................. 6-4
6.2 Entrées de séquences dans l'éditeur SFC........................................................................................... 6-6
Entrée d'un SFC simple ................................................................................................................ 6-7
Insertion d'étapes (S), de transitions (T), de branchements (V) et de regroupements (Z) ......... 6-12
Effacement d'Etapes(S), Transitions (T) et branchements (V) ................................................... 6-17
Instructions bloc dans l'éditeur SFC............................................................................................ 6-21
Simples opérations en bloc ............................................................................................ 6-21
Marquage d'une structure SFC complète en tant que bloc......................................................... 6-28
Représentation ASCII de l'éditeur SFC....................................................................................... 6-28
6.3 Niveaux de détail de l'organigramme séquentiel ............................................................................... 6-30
Conditions pour la poursuite de commutation des transitions .................................................... 6-30
Liste de transitions ...................................................................................................................... 6-31
Utilisation multiple de transitions ................................................................................................. 6-32
Actions des étapes ...................................................................................................................... 6-32
6.4 Aide à la mise en route pour le niveau d'exécution............................................................................ 6-32
Affichage de l'état dans la séquence........................................................................................... 6-32
Tableaux des étapes et des transitions....................................................................................... 6-33
Recherche de l'étape active suivante.......................................................................................... 6-33
6.5 Options dans l'éditeur SFC ................................................................................................................ 6-34
Option 'Paramètres généraux'..................................................................................................... 6-34
Option ‘Paramètres de l'écran’ .................................................................................................... 6-35
6.6 Aide dans l'éditeur SFC ..................................................................................................................... 6-36
6.7 Touches dans l'éditeur SFC............................................................................................................... 6-38
Menu local dans l'éditeur SFC .................................................................................................... 6-39
Instructions bloc dans l'éditeur SFC............................................................................................ 6-39
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Sommaire V
Instructions Quick dans l'éditeur SFC ......................................................................................... 6-39
Déclaration d'une chaîne d'étapes ............................................................................................. 6-41
6.8 Modes de fonctionnement SFC ......................................................................................................... 6-42
Problématique ............................................................................................................................. 6-42
Principes de solution ................................................................................................................... 6-42
Variables système SFC............................................................................................................... 6-43
Entrée et utilisation...................................................................................................................... 6-44
Modes de fonctionnement des SFC............................................................................................ 6-46
6.9 Particularités du traitement SFC ........................................................................................................ 6-48
Mode de travail du nouvel interpréteur de structures .................................................................. 6-48
Calcul de l'état des étapes SFC (mode automatique)................................................................. 6-48
Implémentation du mode automatique........................................................................... 6-48
Programmes SPS existants et nouvel interpréteur de structures ............................................... 6-49
Traitement des SFC en mode manuel ........................................................................................ 6-53
Remise à zéro du SFC................................................................................................................ 6-53
7 Blocs d’actions (ACTION BLOCK) et actions (ACTION) .......................................... 7-1
7.1 Blocs d'actions et leur fonctionnement ................................................................................................ 7-2
Architecture d'un bloc d'actions..................................................................................................... 7-2
Traitement d'actions assisté par Action_Control........................................................................... 7-4
Mode général d'exécution des actions .......................................................................................... 7-7
Définition du moment 'Etape est active' ........................................................................... 7-7
Définition du moment 'Etape est inactive'......................................................................... 7-7
Qualificatifs d'action et leurs effets sur les actions........................................................................ 7-9
N – Non mémorisant ........................................................................................................ 7-9
S - mémorisant ............................................................................................................... 7-10
L – non mémorisant, limité dans le temps...................................................................... 7-11
D – non mémorisant, retardé ......................................................................................... 7-12
P - Impulsion (complété par P0/P1) ............................................................................... 7-13
DS – retardé et mémorisant ........................................................................................... 7-14
SD – mémorisé et retardé .............................................................................................. 7-15
SL – mémorisé et limité dans le temps .......................................................................... 7-16
R – Remise à zéro.......................................................................................................... 7-17
Actions avec blocs fonctionnels contenant des structures SFC..................................... 7-17
7.2 Edition de blocs d'actions................................................................................................................... 7-18
Travail dans l'éditeur des blocs d'actions.................................................................................... 7-18
Effacement d'un bloc d'action ..................................................................................................... 7-20
Modifications de texte dans un bloc d'actions ............................................................................. 7-20
Liste d'actions <Alt>+<N> ........................................................................................................... 7-21
Utilisation multiple d'actions ........................................................................................................ 7-22
Utilisation multiple d'actions dans une étape .............................................................................. 7-22
Niveau de détail de l'éditeur de blocs d'actions........................................................................... 7-23
Représentation ASCII de l'éditeur de blocs d'actions ................................................................. 7-23
7.3 Aide à la mise en route au niveau blocs d'actions ............................................................................. 7-24
Forçage d'actions assisté par le système ................................................................................... 7-24
Affichage d'état dans l'éditeur des blocs d'actions ...................................................................... 7-24
Tableaux des actions, étapes et transitions ................................................................................ 7-26
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
VI Sommaire
Guide de programmation SPS - 18VRS
7.4 Options dans l'éditeur de blocs d'actions ........................................................................................... 7-27
Option 'Paramètres généraux'..................................................................................................... 7-27
Option ‘Paramètres de l'écran’ .................................................................................................... 7-28
Option 'Paramètres du compilateur' ............................................................................................ 7-28
7.5 Aide dans l'éditeur de blocs d'actions ................................................................................................ 7-29
7.6 Touches dans l'éditeur de blocs d'actions ......................................................................................... 7-31
Menu local dans l'éditeur de blocs d'actions ............................................................................... 7-32
Instructions bloc dans l'éditeur de blocs d'actions ..................................................................... 7-32
Instructions Quick dans l'éditeur de blocs d'actions.................................................................... 7-33
7.7 Modifications de l'exécution des actions par rapport à la version 17 ................................................. 7-36
8 Liste d’instructions, IL, INSTRUCTION LIST............................................................. 8-1
8.1 Eléments de base ................................................................................................................................ 8-2
Architecture de la liste d'instructions ............................................................................................. 8-2
Opérateurs et modificateurs.......................................................................................................... 8-3
8.2 Edition de listes d'instructions .............................................................................................................. 8-5
Entrée d'une liste d'instructions simple ......................................................................................... 8-5
Fonctions et blocs fonctionnels dans la liste d'instructions ........................................................... 8-8
Fonctions dans la liste d'instructions ................................................................................ 8-8
Blocs fonctionnels dans la liste d'instructions ................................................................ 8-10
Représentation ASCII de l'éditeur de listes d'instructions ........................................................... 8-12
8.3 Aide à la mise en route dans la liste d'instructions ............................................................................ 8-13
8.4 Options dans l'éditeur de listes d'instructions .................................................................................... 8-14
Option 'Paramètres généraux'..................................................................................................... 8-14
Option ‘Paramètres de l'écran’ .................................................................................................... 8-15
8.5 Aide dans l'éditeur de listes d'instructions.......................................................................................... 8-16
8.6 Touches dans l'éditeur IL ................................................................................................................... 8-19
Menu local dans l'éditeur IL......................................................................................................... 8-20
Instructions bloc dans la liste d'instructions ................................................................................ 8-21
Instructions Quick dans la liste d'instructions.............................................................................. 8-22
9 Diagramme à contacts, LD, LADDER DIAGRAM ...................................................... 9-1
9.1 Architecture d'un diagramme à contacts.............................................................................................. 9-2
9.2 Edition de diagrammes à contacts....................................................................................................... 9-3
Entrée d'un diagramme à contacts simple .................................................................................... 9-4
Entrée d'un diagramme à contacts avec symboles supplémentaires ........................................... 9-7
Opérateurs de diagramme à contacts........................................................................................... 9-8
Fonctions et blocs fonctionnels dans un diagramme à contacts................................................. 9-10
Fonctions dans un diagramme à contacts ..................................................................... 9-10
Blocs fonctionnels dans un diagramme à contacts ........................................................ 9-14
Représentation ASCII de l'éditeur LD ......................................................................................... 9-17
9.3 Aide à la mise en route dans le diagramme à contacts ..................................................................... 9-18
9.4 Options dans l'éditeur LD................................................................................................................... 9-19
Option 'Paramètres généraux'..................................................................................................... 9-19
Option ‘Paramètres de l'écran’ .................................................................................................... 9-20
9.5 Aide dans l'éditeur LD ........................................................................................................................ 9-21
9.6 Eléments du diagramme à contacts .................................................................................................. 9-24
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Sommaire VII
Eléments de base dans le diagramme à contacts ...................................................................... 9-24
Représentation des opérateurs dans le diagramme à contacts.................................................. 9-25
Représentation de fonctions dans le diagramme à contacts ...................................................... 9-27
Représentation de blocs fonctionnels dans le diagramme à contacts ........................................ 9-28
Etiquettes intermédiaires............................................................................................................. 9-29
Eléments de clôture couplés en parallèle ................................................................................... 9-29
9.7 Touches dans l'éditeur LD ................................................................................................................. 9-30
Menu local dans l'éditeur LD ....................................................................................................... 9-31
Instructions bloc dans le diagramme à contacts ......................................................................... 9-32
Instructions Quick dans le diagramme à contacts ...................................................................... 9-33
1 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM1-1
1.1 Architecture d'un réseau en langage FBD ........................................................................................... 1-1
1.2 Edition de réseaux en langage FBD .................................................................................................... 1-2
Entrée d'un réseau simple en langage FBD.................................................................................. 1-4
Entrée de réseaux en langage FBD avec symboles supplémentaires.......................................... 1-6
Opérateurs en langage FBD ......................................................................................................... 1-7
Fonctions et blocs fonctionnels en langage FBD .......................................................................... 1-9
Fonctions en langage FBD............................................................................................... 1-9
Blocs fonctionnels en langage FBD ............................................................................... 1-13
Représentation ASCII de l'éditeur FBD....................................................................................... 1-16
1.3 Aide à la mise en route dans le langage FBD.................................................................................... 1-17
1.4 Options dans l'éditeur FBD ................................................................................................................ 1-18
Option 'Paramètres généraux'..................................................................................................... 1-18
Option ‘Paramètres de l'écran’ .................................................................................................... 1-19
1.5 Aide dans l'éditeur FBD ..................................................................................................................... 1-20
1.6 Eléments du langage FBD ................................................................................................................. 1-23
Eléments de base du langage FBD ............................................................................................ 1-23
Représentation des opérateurs du langage FBD........................................................................ 1-24
Représentation de fonctions en langage FBD ............................................................................ 1-25
Représentation de blocs fonctionnels en langage FBD .............................................................. 1-25
Etiquettes intermédiaires en langage FBD.................................................................................. 1-26
Eléments de clôture couplés en parallèle ................................................................................... 1-26
1.7 Touches dans l'éditeur FBD............................................................................................................... 1-27
Menu local dans l'éditeur FBD .................................................................................................... 1-28
Instructions bloc en langage FBD ............................................................................................... 1-29
Instructions Quick dans l'éditeur FBD ......................................................................................... 1-30
11 Système global........................................................................................................ 11-1
11.1 Généralités....................................................................................................................................... 11-1
Généralités sur l'interface de programmation SPS ..................................................................... 11-1
Technique des fenêtres............................................................................................................... 11-3
Contrôle syntaxique intégré en cours d'entrées .......................................................................... 11-7
Consignes d'installation pour le système de programmation...................................................... 11-8
11.2 Menu Fichier <Alt>+<A> .................................................................................................................. 11-9
Charger <F3> .............................................................................................................................. 11-9
Nouveau ...................................................................................................................................... 11-9
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
VIII Sommaire
Guide de programmation SPS - 18VRS
Retour <Alt>+<F3>...................................................................................................................... 11-9
Sauvegarder <F2> .................................................................................................................... 11-10
Mémoriser sous......................................................................................................................... 11-10
Charger en format ASCII........................................................................................................... 11-10
Mémoriser en format ASCII ...................................................................................................... 11-10
Impression (de fichiers)............................................................................................................. 11-10
Protection .................................................................................................................................. 11-12
Actualiser................................................................................................................................... 11-13
Gestionnaire de fichiers ............................................................................................................ 11-13
EXIT <Alt>+<X> ........................................................................................................................ 11-14
11.3 Menu Edition .................................................................................................................................. 11-14
Implémentation, Sélection de langage ...................................................................................... 11-15
EXTRAS.................................................................................................................................... 11-16
Liaison de données de process.................................................................................... 11-16
Simulation IO ................................................................................................................ 11-17
Implémentation 2ms ..................................................................................................... 11-18
Editeur de déclaration <Alt>+<D> ............................................................................................. 11-18
Editeur d'importation <Alt>+<M>............................................................................................... 11-19
Actions <Alt>+<N> .................................................................................................................... 11-19
Transitions................................................................................................................................. 11-19
Option de menu 'Chercher' ....................................................................................................... 11-19
Chercher....................................................................................................................... 11-20
Chercher & Remplacer................................................................................................. 11-20
Répéter......................................................................................................................... 11-20
GOTO........................................................................................................................... 11-20
Dernière position... ....................................................................................................... 11-20
Liste des renvois / Aide aux renvois ............................................................................. 11-20
Renvoi précédent <Alt>+<F7> ..................................................................................... 11-22
Renvoi suivant <Alt>+<F8> .......................................................................................... 11-22
Mémoire tampon (Editeur de texte) ) <Alt>+<B> ...................................................................... 11-23
11.4 Menu compilation ........................................................................................................................... 11-25
Traduction du fichier de travail / Compiler <Alt>+<F9>............................................................. 11-26
Traduction, fichiers nécessaires / Make <F9> .......................................................................... 11-26
Traduction intégrale / Build........................................................................................................ 11-27
Modifications online................................................................................................................... 11-28
11.5 Mise en route / Démarrage ............................................................................................................ 11-29
Programme →Commande <Ctrl>+<F9>................................................................................... 11-30
Reset Commande ..................................................................................................................... 11-30
Affichage d'état <Shift>+<F9>................................................................................................... 11-30
Variables à plusieurs éléments <Shift>+<F3> .......................................................................... 11-30
Etapes, Transitions, Actions actives ......................................................................................... 11-32
Observation de variables........................................................................................................... 11-33
Evaluer/Modifier <Ctrl>+<F4> ................................................................................................... 11-34
11.6 Menu Diagnostic ............................................................................................................................ 11-35
Messages diagnostic................................................................................................................. 11-35
Alarme SPS............................................................................................................................... 11-36
Information SPS ........................................................................................................................ 11-36
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Sommaire IX
Information projet ...................................................................................................................... 11-37
Analyse logique ......................................................................................................................... 11-38
Accès à l'éditeur de protocoles..................................................................................... 11-39
Représentation du protocole ........................................................................................ 11-39
Instructions de pied de page ........................................................................................ 11-40
11.7 Menu projet .................................................................................................................................... 11-45
Documentation .......................................................................................................................... 11-46
Ensemble de la documentation .................................................................................... 11-46
Textes de pied de page................................................................................................ 11-48
Structure , Structure de programme <Alt>+<F4>...................................................................... 11-49
Affectation IO <Alt>+<I>............................................................................................................ 11-50
Archivage .................................................................................................................................. 11-50
Archiver ........................................................................................................................ 11-51
Récupérer..................................................................................................................... 11-52
Gestionnaire des archives............................................................................................ 11-53
Données RETAIN......................................................................................................... 11-53
Archivage des commentaires.................................................................................................... 11-54
11.8 Options dans le système global ..................................................................................................... 11-55
Option 'Généralités' ................................................................................................................... 11-55
Option 'Ecran' ............................................................................................................................ 11-57
Option 'Couleurs' ....................................................................................................................... 11-58
Option 'Compilateur'.................................................................................................................. 11-58
Option 'Mémoire' ....................................................................................................................... 11-59
Option 'Fenêtres' ....................................................................................................................... 11-60
Option 'Mot de passe'................................................................................................................ 11-60
11.9 Aide ................................................................................................................................................ 11-61
11.10 Touches dans le système global.................................................................................................. 11-63
12 Glossaire.................................................................................................................. 12-1
13 Index......................................................................................................................... 13-1
14 Répertoire des figures ............................................................................................ 14-1
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
X Sommaire
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Préface 1-1
Guide de programmation SPS - 18VRS
1 Préface
Sources/
documentation
Abréviations
Il est fait référence aux sources et documents suivants:
/1/
DIN IEC1131-3 / EN 61131-3
/2/
Documentation de la Société "Types de données standard"
'Fonctions standards',
'Blocs fonctionnels standard'
/3/
Documentation de la société 'Poste Interbus-S'
/4/
Documentation de la société ‘INDRASTEP, orientée utilisateur
Chaîne d'étapes avec diagnostic
/5/
Documentation de la société ‘Jeu d'instructions SPS’
Les abréviations suivantes sont utilisées:
AB
Bloc d'actions
AQ
Marque d'identification, qualificatif d'action, ACTION QUALIFIER
AS
Commande séquentielle, synonyme de SFC
IL
IUC
CNC
FB
Liste d'instructions
Interface utilisateur de ligne de commande
Commande numérique, Computerized Numerical Control
Bloc fonctionnel
spécial: Bloc fonctionnel défini par utilisateur, FB utilisateur
fb
spécial: Bloc fonctionnel micrologiciel, bloc fonctionnel standard
Fb
spécial: Bloc fonctionnel particulier, non éditable
FBD
FK
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK
DIAGRAM
Fonction,
spéciale: Fonction écrite par utilisateur, utilisateur FK
fk
spéciale: Fonction micrologicielle, fonction standard
Fk
spécial:
Fonction particulière, non éditable
GUI
Interface graphique utilisateur
IBS
Interbus-S
LD
Fichier MAP
Langage de programmation par langage à contacts, LD-LADDER DIAGRAM
Fichier avec les informations adresse du projet dans la commande SPS
pour interface graphique utilisateur GUI et affichage d'état
SPS
Commande à mémoire programmable
PC
Ordinateur de bureau, programmateur
POU
Unité d'organisation de programme, c'est-à-dire un programme, un bloc
fonctionnel ou une fonction
PR
Programme,
spécial: Programme défini par l'utilisateur, PR utilisateur
TY
Type de données,spécial: Type de données défini par l'utilisateur, TY
utilisateur
ty
spécial: Type de données micrologiciel, type de données standard
Ty
spécial: Type de données particulier, non éditable
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
1-2 Préface
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-1
2 Généralités
Le système de programmation et de mise en route SPS de la commande
permet:
• l'édition,
• la documentation et
• la mise en route de programmes SPS basée sur la norme EN 61131-3.
Les langages de programmation suivants (langages spéciaux d'entrée)
sont implémentés:
• Liste d'instructions (IL),
• Langage à contacts (LD),
• Langage en diagramme de blocs fonctionnels (FBD)
avec ou sans
(Eléments SFC)
utilisation
d'éléments
d'organigramme
séquentiel
Pour une meilleure compréhension de l'ensemble, on a ré-exposé
ci-après les modèles de base du standard:
• Modèle logiciel,
• Modèle de programmation.
Dans le modèle logiciel, on utilise des éléments qui ont été programmés en
utilisant les langages de programmation.
Modèle logiciel,
Dans ce contexte s'inscrivent les éléments suivants:
• PROGRAM (Programme),
• FUNCTION_BLOCK (bloc fonctionnel)
voir Chapitre 2.4
,
Page 2-19
• FUNCTION (Fonction)
PROGRAM
Le programme est la plus petite unité logiciel qui peut être chargée et
démarrée. Un programme peut utiliser des modules de fonction et des
fonctions.
FUNCTION_BLOCK
Un bloc fonctionnel peut utiliser d'autres blocs fonctionnels et des fonctions.
Une fonction peut se servir d'autres fonctions.
FONCTION
Programme
Bloc fonctionnel FB
Fonction FK
)% )% ).
)% ). ). ). ). Fig. 2-1: Structure d'un programme suivant le modèle logiciel EN 61131-3
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-2 Généralités
La Fig. 2-2: Combinaison des éléments langage SPS donne un aperçu
Modèle d'établissement de
programme
des éléments des langues de programmation SPS.
Eléments Bibliothèque
Production
Eléments dérivés
Déclaration
Importation
Déclaration
Importation
IL, LD,
FBD
(FB) Déclaration/Import
IL, LD, FBD
Eléments SFC
Déclaration/Import
IL, LD, FBD
Eléments SFC
Types de données (TY)
Type standard
Type dérivé
Fonctions (FK)
FB-Standard
FK dérivée
Bloc fonctionnel
FB-Standard
FB dérivé
Type de données
dérivé
Fonction
dérivée
Bloc fonctionnel
dérivé
Programme
Fig. 2-2: Combinaison des éléments langage SPS
L'utilisateur peut créer lui-même de nouveaux éléments, comme par
exemple:
• des types de données
par déclaration à partir du type de données standard et des types de
données importées par utilisateur.
• des fonctions
l'interface externe doit être définie par déclaration, la fonctionnalité interne du corps de fonction doit être programmée en IL, LD ou FBD;
l'importation des types de données utilisateur et fonctions utilisateur
doit précéder leur utilisation.
• des blocs fonctionnels
L'interface externe doit être définie par déclaration, la fonctionnalité du
corps de bloc fonctionnel doit être programmée en IL, LD ou FBD; des
éléments SFC sont permis. L'importation des types de données utilisateur et fonctions utilisateur doit précéder leur utilisation.
La déclaration de tous les blocs fonctionnels, quel que soit leur type, doit précéder leur utilisation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-3
2.1 Conventions générales
Le présent chapitre donne un aperçu des éléments textuels et graphiques
qui sont communs à tous les langages de programmation du système.
Jeu de caractères
Le système de programmation utilise le jeu de caractères ASCII (ISO 646)
Majuscules et minuscules ont des significations différentes, c'est-à-dire
que la combinaison ‘abcd’ est différente de ‘ABCD’ et différente de
‘AbcD’. Les trémas ne peuvent être utilisés que dans les commentaires.
Indentificateur (Nom)
Un identificateur est une chaîne de caractères commençant par une lettre
et composé de lettres, de chiffres et du caractère souligné ‘_’ .
‘A_BCD’ et ‘AB_CD’ sont interprétés en tant qu'identificateurs distincts l'un
de l'autre.
Le caractère souligné en début de chaîne ou plusieurs caractères soulignés
dans une même chaîne ne sont pas permis.
Un ‘Identificateur’ ne doit pas comporter de caractère espace.
Les identificateurs de variables, étapes, transitions et actions se composent
au maximum de 9 caractères.
Les noms de programmes, de blocs fonctionnels, de fonctions et de types
de données ne doivent comporter au maximum que 8 caractères.
Mots clés (Keyword)
Les mots clés sont des chaînes de caractères dont la signification est
définie sous ‘EN 61131-3’ (voir /1/). Ils ne doivent pas être utilisés en tant
qu'identificateur. (Le système de programmation les refuse).
N.B.
Les mots clés ne comprennent que des majuscules et ‘_’.
Emploi des caractères espace
Le nombre et la position des caractères espace utilisés dans les commentaires sont indifférents. Ils ne doivent entre autre pas être utilisés dans les
indentificateurs, mots clés etc.
Commentaires
Les commentaires n'ont sur le plan syntaxe et sémantique aucune signification quel que soit le langage de programmation employé. Ils peuvent être
entrés dans les colonnes correspondantes des éditeurs (par exemple éditeur
de déclaration, éditeur IL) ou bien via une fenêtre de commentaires séparée.
Représentation des données
Dans les différents langages de programmation SPS, il est permis de
représenter les données de la façon suivante
• Représentation numérique,
• Représentation temporelle,
• Représentation sous forme de chaînes de caractères.
Représentation numérique,
Les opérations arithmétiques pour nombres entiers et nombre avec virgule flottante sont disponibles dans la commande.
Les nombres entiers sont définis en tant que nombres décimaux ou bien en
tant que nombre avec pour base numérique 2, 8 ou 16.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-4 Généralités
La base numérique utilisée est indiquée sous forme décimale séparée
par une diésis ‘#’ avant le nombre.
Les nombres décimaux sont représentés avec la notation conventionnelle.
Pour la représentation hexadécimale, il faut à côté des chiffres 0 – 0
également utiliser des majuscules, à savoir A – F.
Les données booléennes sont représentées avec ‘2#0’ (FALSE) ou ‘2#1’
(TRUE)
Description:
Exemples
Notation à base 10 (décimale)
Notation à base 2 (binaire)
Notation à base 8 (octale)
Notation à base 16 (hexadécimale)
240
2#11100000
8#340
16#E0
Les nombres avec virgule flottante peuvent être entrés dans:
-3.402823E38...-1.175495E-38 et 1.175495E-38...3.402823E38.
Le chiffre "Zéro" n'existe donc pas. Il est arrondi sous forme -1.175495E38 ou 1.175495E-38 en fonction de la plage (négative ou positive) dans
laquelle les calculs sont effectués.
-0 ≠ +0
ATTENTION
Représentation temporelle,
L'indication de la durée commence à gauche avec l'indentificateur
réservé ‘T#’.
Les unités de temps suivantes sont permises:
Unité de temps
Exemple:
Jour (d)
T#14d
Heure (h)
T#147h
Minute (m)
T#47m
Seconde (s)
T#14s
Milliseconde (ms)
T#12ms
Combinaisons de ces unités
T#25h3s, T#12m13s127ms, T#1m33.3s
Un dépassement de la plus grande unité de temps est permis, comme
par exemple l'indication ‘T#25h15m’.
Un point décimal est possible.
La marge temporelle est limitée à 23d 23h 59m 59s 998ms.
Représentation de chaînes de caractères
Une chaîne de caractères est une succession de caractères isolée par
deux guillemets simples. Les chaînes de caractères vides sont permises.
Le signe monétaire ‘$’ au début d'une chaîne de caractère signalise une
interprétation particulière:
• S'il est suivi d'un nombre à deux chiffres, l'ensemble des 3 caractères
remplace alors le caractère du tableau ASCII ($00...$FF)
• D'autres interprétations particulières sont exposées au tableau ciaprès:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-5
Représentation de chaînes de caractères
N°
Exemple:
Explication
1
‘’
Chaîne de caractères vide, longueur nulle
‘A’
Chaîne de caractères de longueur 1 avec le caractère
‘A’
‘‘
Chaîne de caractères de longueur 1 avec un caractère
espace
‘$05’
Chaîne de caractère de longueur 1 avec le caractère
‘♣’
‘$’’
Chaîne de caractères de longueur 1 avec un guillemet
simple
‘$R$L’
Chaîne de caractères de longueur 2 avec les caractères ‘CR’ et ‘LF’
‘$$1.00’
Chaîne de caractères de longueur 5, a été imprimée
sous la forme ‘$1.00’
N°
combi.
Représentation, si imprimée/sortie
2
$$
Dollar
3
$’
Guillemets simples
4
$L
Linefeed, saut de ligne
6
$P
Form feed (page), saut de page
7
$R
Carriage return, Retour chariot
8
Tab, Tabulateur
$N, Newline, n’est pas possible
2.2 Types de données
Les types (élémentaires) de données suivantes et les types de données
micrologiciels INDRAMAT (voir /2/) sont acceptés par la SPS sans aucune mesure supplémentaire. L'utilisateur a la possibilité d'élargir la palette de types de données en convenant de nouveaux types et en les important dans les fichiers à utiliser.
Types élémentaires de données
Les types élémentaires suivants sont permis:
Mot clé
Types de données
bits
BOOL
Logique
OCTET
WORD
DWORD
Débit binaire Longueur 8
Débit binaire Longueur 16
Débit binaire Longueur 32
8
16
32
Débits binaires seulement,
Aucune entrée de nombre possible
CHAR
STRING
Caractère
Chaîne de caractères
8
.....
Caractère individuel
1 Séquences longues de 255 caractères
SINT
INT
DINT
Nombre Short Integer
Nombre Integer
Nombre Double Integer
8
16
32
USINT
UINT
UDINT
Unsigned Short Integer-Number
Unsigned Integer-Number
Unsigned Double Integer-Number
8
16
32
0 255
0 65535
0 - 2147483647 (limité)
REAL
Nombre à virgule flottante
32
-3.402823E38...-1.175495E-38
1.175495E-38...3.402823E38.
TIME
Durée
32
0ms...23d23h59m59s999ms
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
1
Indication de domaine
TRUE/FALSE, 0/1
-128 -32768 -2147483648 -
127
32767
2147483647
2-6 Généralités
Remarques sur les types de donnée
Séquences de bits et nombres
Les séquences binaires BYTE, WORD, DWORD ne présentent aucune
information de position nécessaire pour les chiffres, c'est-à-dire qu'il n'est
pas possible d'y effectuer des opérations arithmétiques. Elles peuvent
toutefois être converties en nombres présentant le même nombre de bits
(Fonctions de conversion de type).
Une reconversion de nombres en séquences binaires est possible.
• BYTE en SINT ou USINT
• WORD en INT ou UINT
• DWORD en DINT ou UDINT.
Caractère (CHAR et
Chaîne de caractères (STRING)
Le type de données CHAR a besoin d'un OCTET pour l'archivage d'un
caractère.
Le type de données STRING permet un nombre quelconque de caractères entre 1 et 255 caractères. Il se compose de la longueur du STRING et
du caractère utile.
En conséquence, CHAR ‘A’ requiert 1 octet et STRING[1] ‘A’ deux octets
(Besoin en mémoire pour un caractère ou une chaîne de caractère de
même contenu):
CHAR ’A’
STRING[1] ’A’
$ $ Contenu
Longueur
Le tableau suivant illustre le rapport entre le nombre d'octets réservé, la
longueur utilisée et le contenu de la chaîne de caractères après initialisation:
Nom
Type
STR_1
STR_2
STR_3
STR_4
STRING
STRING
STRING[10]
STRING[10]
:=
‘abc’
‘abc’
Nombre
d’octets réservé
Chaîne de caractère après l'initialisation
256 octets
256 octets
11 octets
11 octets
Longueur:
Longueur:
Longueur:
Longueur:
0,
3,
0,
3,
Contenu:
Contenu:
Contenu:
Contenu:
„ “ , Affichage „ „
„abc“
„ “ , Affichage „ „
„abc“
Si en cours de fonctionnement du programme, le nombre de caractères
écrit dans une chaîne de caractères est supérieur à la place réservée, les
différents caractères sont enregistrés à partir de la gauche et les caractères excédentaires sont alors coupés. (Aucun influence de ErrorFlg/ErrorTyp/ErrorN°.)
Pour, lors de la génération d'un programme SPS, pouvoir utiliser le type
de données STRING de façon continue, il est possible de convertir un
caractère isolé dans l'un ou l'autre des langages de programmation en
une chaîne de caractères de longueur 1 et réciproquement.
Conversion d'un caractère en une chaîne de caractères:
Déclaration des variables nécessaires
Nom
VAR
char_1
string_1
END_VAR
AT
TYPE
CHAR
STRING[1]
Liste d'instructions
gramme fonctionnel)
LD char_1
ST string_1[1]
Commentaire
langage à contacts/ Langage FBD (dia-
char_1
VWULQJB>@
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-7
Types de données dérivés
Sur la base des types élémentaires de données explicités jusqu'à présent, il est possible de générer des types de données dérivés (définis soit
par le constructeur soit par l'utilisateur de la SPS). Le constructeur de la
SPS peut utiliser la possibilité d'archivage de ce types de données qui est
disponible dans la bibliothèque du système de programmation tandis que
l'utilisateur de la SPS se doit de convenir (de déclarer) dans chacun des
fichiers respectifs chacun des types de données qu'il a définis.
Les types de données convenus dans la bibliothèque standard sont définis de façon ferme pour l'utilisateur. Il peut les utiliser, comme les types
élémentaires de données, pour la déclaration de variables mais il ne peut
pas les modifier.
L'importation des types de données convenus par l'utilisateur dans le fichier devant être utilisé doit précéder leur utilisation .
Des structures (STRUCT) et des tableaux (ARRAY) sont implémentés
dans le système de programmation et de mise en route de la SPS.
Structures
Une structure se compose de plusieurs éléments de données séparés qui,
d'après le constructeur de la commande ou d'après son utilisateur, vont
ensemble sur le plan fonctionnel ( par exemple toutes les informations
d'état d'un axe NC pouvant être traitées dans la SPS ou bien un bloc de
données complet caractérisant une sorte précise de pièces d'usinage). Les
différents éléments peuvent appartenir à différents types de données. Leur
ordre est défini par l'utilisateur.
Fig. 2-3: Type de données défini par l'utilisateur (STRUCT)
Les types d'éléments de données suivants sont utilisés:
• Types élémentaires de données (voir tableau sous chapitre 'Types élémentaires de données, Page 2-2),Structures
Jusqu'à présent des tableaux ne sont pas prévus en tant qu'éléments
dans les structures.
Tableaux
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Un tableau se compose de plusieurs éléments séparés de données qui
appartiennent au même type de données et qui, d'après le constructeur de
la commande ou d'après son utilisateur, vont ensemble (par exemple les
informations sur le lieu d'archivage des pièces d'usinage sur une palette ou
les informations sur l'équipement d'un dispositif de changement d'outils)
Les tableaux peuvent, en fonction de leur destination, être uni- ou pluridimensionnel (au max. 4 dimensions). Chaque dimension peut comporter au
maximum 1000 éléments. Les besoins max. en mémoire d'un tableau font
l'objet d'une surveillance et sont limités à 64 Ko.
2-8 Généralités
Fig. 2-4: Type de données défini par l'utilisateur (ARRAY of BOOL)
Les types d'éléments de données suivants sont applicables:
• Types élémentaires de données (voir Tableau au Chap. ‘Types élémentaires de données’, Page 2-5)
• Structures (voir Fig. 2-3: Type de données défini par l'utilisateur
(STRUCT)).
Le système n'assiste pour le moment aucune utilisation de tableaux en
tant qu'éléments dans un tableau
Fig. 2-5:
Type de données défini par l'utilisateur (ARRAY of STRUCT),
Le Type de données OUTILLAGE (Fig. 2-3: Type de données défini
par l'utilisateur (STRUCT)) doit être importé auparavant.
Pointeur et Adresse de
A partir de la version 17, il est possible d'accéder aux données via le type
POINTEUR / ADRESSE DE.
Pointeur
La convention d'un pointeur s'effectue dans la section déclaration d'un
programme ou d'un bloc fonctionnel.
Un pointeur est alors caractérisé par ‘^’ placé devant le type de données.
Le type de données qui suit le signe ‘^’ permet de définir la longueur de la
plage ainsi que la nature et le nombre des éléments se trouvant dans la
plage.
L'accès en écriture comme en lecture fait l'objet d'une surveillance.
Nom
VAR
bitptr
AT
TYPE
Commentaire
^ A_BOOL16
(* pointeur,typededonnées
A_BOOL16: 0..15 of BOOL *)
END_VAR
Adresse de
L'emplacement que le pointeur doit indiquer est transmis avec un ‘P#’Opérateur:
Marque
Opérande
Opérateur
Commentaire
LD
P#bytetab [9]
(* Charger adresse du 9°
élément des variables tableau octet *)
ST
bitptr
(*=> Adresse initiale de la
section de type
A_BOOL16*)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-9
Le pointeur indique
Un pointeur peut accéder soit à une plage complète pour un accès aux
données (en lecture ou en écriture) en fonction du type de données auquel il correspond, soit à un élément quelconque de son type de données.
Marque
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Opérande
Opérateur
Commentaire
LD
bitptr^
signifie:
Cherche toute la section
LD
bitptr^[1]
signifie:
Cherche le premier élément
(A_BOOL16 est un
ARRAY 1-d)
2-10 Généralités
Exemple:
Un tableau de 0..39 OCTETS est prédéfini.
De ce tableau , 16 bits doivent être copiés à partir de l'octet 9.
Les 16 bits doivent être organisés en tableau 0...15 of BOOL
OCTET 0
0
...
7
OCTET 9
72
...
79
OCTET
10
80
...
87
...
...
...
OCTET
39
Í
Bit
0
...
15
...
312
...
Nom
AT
VAR
Tableau octet
319
TYPE
Commentaire
A_BYTE40
(* Tableau d’OCTET initial
0..39 of BYTE*)
bitptr
^ A_BOOL16
(* pointeur, typededonnées
A_BOOL16: 0..15 of BOOL *)
Tableau bits ^ A_BOOL16
(* Tableau à remplir:
0..15 of BOOL *)
END_VAR
‘bitptr’ est un pointeur qui peut enregistrer des informations sur l'adresse et
le type.
Les informations sur le type sont transmises dans la déclaration.
Le pointeur est un pointeur-NIL, tant qu'il n'a pas reçu d'adresse.
L'adresse actuelle est transmise (au moins une fois) au moyen de P# dans
l'implémentation. Elle peut, si besoin est, être changée aussi souvent que
nécessaire.
OCTET 0
0
...
7
OCTET 9
72
...
79
OCTET
10
80
...
87
...
P#Bytetab [9]
...
...
OCTET
39
Marque
N.B.
312
...
...
319
Opérande
Opérateur
Commentaire
LD
P#Bytetab
[9]
(* Charger adresse OCTET 9 *)
ST
bitptr
(*=> Adresse initiale de la section de type A_BOOL16*)
LD
bitptr^
(*Copier Section du tableau
octet*)
ST
Tableau de
bits
(*dans le tableau octet, les limites de type sont contrôlées*)
LD
bitptr^
Signifie:
Cherche toute la section
(la totalité des 16 bits)
LD
bitptr^[1]
signifie:
Cherche le bit 73
Pour d’autres exemples voir Description ’Jeu d’instructions
SPS’.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-11
Initialisation
Si un nouveau programme est chargé dans la commande, toutes les variables seront ré-initialisées. L'utilisateur peut prédéfinir les valeurs des
types élémentaires de données (en cours de déclaration) ou bien laisser
le système charger les valeurs initiales standard du type de données respectif. Toutes les autres variables reçoivent en tant que valeur initiale
standard la valeur des types auxquels elles se rapportent.
Type
Valeur initiale standard
SINT/INT/DINT
USINT/UINT/UDINT
BOOL
BYTE, WORD, DWORD,
REAL
TIME
CHAR
STRING
STRING[t]
0
0
FALSE
0
+0
T#0s
Contenu: “ “ / Affichage: Contenu: “ “ / Affichage: „ „ 256 octets réservés
Contenu: “ “ / Affichage: „ „ t octets réservés
POINTEUR
NIL
2.3 Variables
Avec une variable, on définit un emplacement de mémoire (zone de mémorisation) présentant des propriétés bien particulières (Type des variables) à laquelle il sera ensuite possible de recourir au moyen d'un adressage symbolique via le nom ou via l'adresse absolue si cette dernière est
connue. Le contenu de l'adresse de mémoire (valeur des variables) peut
être modifié dans les limites permises par le type.
On distingue entre entrées, sorties et variables drapeaux.
Les variables drapeaux peuvent en outre présenter des propriétés rémanentes, c'est-à-dire qu'elles conserveront leur valeur même en cas de
remise à zéro de la commande (Variables RETAIN).
Le système de programmation et de mise en route assiste les variables
de types suivants:
• Variable à un élément
La variable ne comprend qu'un seul élément de données.
• Variable à plusieurs éléments
Plusieurs éléments de données de même type ou de type de données
différents font partie de la variable.
Représentation de variables à un élément
Le nom (indentificateur) d'une variable peut présenter au maximum 9 caractères.
L'adresse (absolue) d'une variable est structurée de la façon suivante:
• Un caractère pourcentage ‘%’ au début,
• Un indicateur d'emplacement (entrée, sortie, marqueur, indicateur de
retenue)
• Un indicateur de format de données (BOOL, BYTE, ...),
• Un indicateur d'accès périphérique direct
(standard: sans, suppl. à la norme…)
• un ou plusieurs nombres entiers sans signe en amont et séparés par
des points.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-12 Généralités
Composants de l’adresse
d’une variable
Indicateur
Explication
Emplacement
I ou E
Q ou A
M
R
Entrée
Sortie
Marqueur
Indicateur de retenue
Format de données
rien ou X
B
W
D
BOOL
OCTET
WORD
DWORD
Accès périphérique direct
sans objet
P
Standard
Accès particulier
(1 bit)
(8 bits)
(16 bits)
(32 bits)
Exemple:
%I1.2.3
%IX1.2.3
Numéro logique de l'appareil 1, octet d'entrée 2, bit 3 ou
(autre forme de représentation)
%Q127.5.2
ou
%QX127.5.2
Numéro logique de l'appareil 127, octet de sortie 5, bit 2
%IB1.2
%QW127.5
Numéro logique de l'appareil 1, octet d'entrée 2,
Numéro logique de l'appareil 127, octet de sortie 5
%IWP1.10
%QBP3.10
Mot d'entrée rapide, adresse 1.10 (section. 0)
Mot d'entrée rapide, adresse 3,10 (section. 0)
(autre forme de représentation)
Les numéros de postes / add-in suivants pour entrées et sorties sont autorisés:
Poste
0,
Poste
1...999,
octet
0...2046
CNC/SPS intern
octet/add-in
0...31...63
autres systèmes bus
Pour les données dont la largeur est supérieure à un bit, le système applique
pour entrées et sorties les définitions suivantes:
WORD:
add-in indiqué et add-in suivant
Exemple: %IW1.0 HighByte: %IB1.0, LowByte: %IB1.1
DWORD: Add-in indiqué et les trois add-in suivants
Exemple: %ID1.0 HighByte: %IB1.0,....., LowByte: %IB1.3
2048 octets-marqueurs sont disponibles en tant que marqueur Il est possible d'accéder à ces marqueurs par adresse bit, octet, mot et mot double:
Marqueur bits
Marqueur - octets
Marqueur – Mot
Marqueur – mot
double
Exemple:
%M0.0
%MB0
%MW0
%MD0
...
...
...
...
%M2047.7 ou. %MX0.0 ... %MX2047.7
%MB2047
%MW2046
%MD2044
Position des zones de mémorisation
%MD1 contient la valeur 16#3F2E1D0C.
0'!
0:! 0:!
0:! 00 ) ( ' & %MB0 0% 0% 0% 0% 0%
%M2.7 6 5 4 3 2 1 0
0 0 1 0 1 1 1 0
2048 octets-marqueurs sont également disponibles en tant qu'indicateur
de retenue Il est possible d'accéder à ces indicateurs de retenue par
adresse bit, octet, mot et mot double:
Marqueur bits
Marqueur - octets
Marqueur – Mot
Marqueur – mot
double
%R0.0 ... %R2047.7
ou %RX0.0 ... %RX2047.7
%RB0 ... %RB2047
%RW0 ... %RW2046
%RD0 ... %RD2044
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-13
N.B.
Dans le programme, l'utilisation de variables adressées de façon absolue n'est toutefois pas permise dans un bloc fonctionnel ou dans une fonction
Accès périphérique direct en évitant la structure triphasée
Une exécution accélérée de parties de programme en tant que réaction à
une modification des affectations d'entrées peut être obtenue par:
• Accès périphérique par mot/octet aux variables d'entrée et de sortie
(avec la programmation multiple suivante de sections de programme)
• Option de menu ‘Traitement/Extras/2ms-Implementation’ (en même
temps que l'accès périphérique direct)
Définitions
Grâce aux nouvelles adresses absolues, il est possible d'accéder directement à la périphérie entrées/ sorties.
• %IBP – Entrée périphérie OCTET;
%QBP – Sortie périphérie OCTET
• %IWP - Entrée périphérie WORD;
%QWP - Sortie périphérie WORD.
Des accès directs à la périphérie I/O peuvent être appliqués sur les variables 8/16 bits.
Des adresses absolues ne peuvent être programmées qu'au niveau PR.
En définissant différentes adresses abolues, il est possible à l'intérieur
d'un mot (octets) d'accéder aux entrées/sorties "lentes" et rapides.
Mode d'action
Périphérie
entrées
Périphérie
Sorties
SPS-Zyklus
%IWP
Représent.
entrées
Représent.
sorties
%QWP
%QW
%QWP
%IW
Programme SPS
Fig. 2-6:
Mode d’accès périphérique direct
Ci-après, une explication du mode d'accès rapide à la périphérie I/O est
donnée en s'appuyant sur les opérateurs ‘%IW’, ‘%IWP, ‘%QW’ et
‘%QWP’ Les autres opérateurs fonctionnent de façon similaire:
• %IWP
accède à la périphérie entrée en lisant les entrées. La représentation I
n'est pas actualisée
• %IW
lit les données d'entrée qui ont été écrites dans la représentation des
entrées avant le démarrage du cycle SPS en cours.
• %QWP
accède à la périphérie sortie et à la représentation de sortie en écrivant les sorties.
• %QW
écrit les données de sortie dans la représentation des sorties
N.B.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
OCTET apparaît par démasquage à partir de WORD Å plus
lentement
2-14 Généralités
Exemple de programme
Déclaration
FINWORD1
AT %IWP1.1
(*Mot d'entrée rapide Adr. 1.1*)
INWORD1
AT %IW1.1
(*Mot d'entrée via représentation Adr. 1,1*)
FINWORD10
AT %IWP1.10
(*Mot d'entrée rapide Adr. 1,10*)
INWORD10
AT %IW1.10
(*Mot d'entrée via représent. Adr. 1,10*)
OUTWORD2
AT %QW1.2
(*Mot de sortie via représent. Adr. 1,2*)
FOUTWORD2
AT %QWP1.2
(*Mot de sortie rapide Adr. 1,2*)
MWORD1
AT %MW1
(*Mot drapeau Adr.*)
Implémentation
(*Récupérer entrées rapides et les écrire dans représentation
des entrées*)
LD
FINWORD1
(*Mot d'entrée rapide Adr. 1.1*)
ST
MWORD1
(*Mot drapeau Adr.*)
(*Exécuter un/des liaison(s)*)
(*Transmettre résultat dans représentation des sorties et aux
sorties rapides*)
LD
MWORD1
(*Mot drapeau Adr.*)
AND
INWORD10
(*Mot d'entrée via représent. Adr. 1,10*)
ST
FOUTWORD2
(*Mot de sortie rapide Adr. 1,2*)
Représentation de variables à plusieurs éléments
Le niveau actuel du système de programmation et de mise en route permet l'utilisation des variables du type:
• Chaîne de caractères (STRING),
• Structure (STRUCT) et
• Tableau (ARRAY),
A la différence des variables à un élément qui sont liées à un emplacement mémoire concret, pour les variables à plusieurs éléments une zone
est convenue (… à partir de l'adresse mot…)
Le nom de chaque variable à plusieurs éléments se compose au maximum de 9 caractères. Un accès aux différents éléments des variables est
possible, comme expliqué ci-après.
Chaînes de caractères
Une variable du type de données STRING permet un nombre quelconque
de caractères entre 1 et 255 caractères.
Un STRING est un type élémentaire de données.
La variable contient la longueur du STRING et son caractère utile.
Une chaîne de caractère peut recevoir des informations des entrées SPS
Une influence des sorties SPS est également possible.
Influence des sorties de la SPS par une variable de chaîne de caractères:
Déclaration des variables de sortie 'string' par le type élémentaire STRING
Nom
AT
TYPE
:=
string
%QW1.4
STRING[3]
’IDA’ (*Prédéfinition dans
déclaration*)
Commentaire
Conformément à la convention des variables 'string', la sortie commence
à partir de l'adresse mot %QW1.4 (en commençant avec mit %QB1.4) et
se poursuit en fonction de la longueur de la chaîne de caractères.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-15
L'exécution du programme entraîne les outputs suivants aux sorties de la
SPS.
Indication de longueur:
Structures
%QB1.4
%QB1.5
%QB1.6
%QB1.7
16#03
‘I’ (16#49)
‘D’(16#44)
‘A’(16#41)
Le nom respectif, le type des éléments et leur ordre à l'intérieur d'une
structure sont prédéfinis par convention ou par la bibliothèque standard.
Le nom d'un élément se compose du nom des variables et de son propre
nom, séparé par ‘.’. :
variables_nom.élément_nom
Il est recommandé d'accéder aux éléments de la structure au moyen de
ce nom étant donné que le stockage interne SPS s'effectue sous une
forme mémoire et vitesse effectives.
Les éléments d'une structure peuvent recevoir des informations des entrées SPS
Une influence des sorties SPS est également possible.
Influence des sorties de la SPS par une variable STRUCT:
Convention du type de données BSP_STRU
TYPE
BSP_STRU
(*Structure test pour convertisseur de sorties *)
BSP_STRU
STRUCT
b
BOOL
b2
BOOL
int
INT
byte
BYTE
b3
BOOL
END_STRUCT
Déclaration des variables de sortie 'struktur' de type BSP_STRU
Nom
AT
TYPE
structure
%QW1.4
BSP_STRU
:=
Commentaire
(*Prédéfinition dans
implémentation*)
Affectation des éléments des variables de sortie 'structure'
Marque
Opération
LD
ST
LD
ST
LD
ST
LD
ST
LD
ST
Opérande
Commentaire
2#1
structure.b1
2#0
structure.b2
38
structure.int
16#A5
structure.octet
2#1
structure.b3
Conformément à la convention des variables 'structure', la sortie commence à partir de l'adresse mot %QW1.4 (en commençant avec
%QB1.4) et se poursuit en fonction de la longueur de la structure. L'exécution du programme entraîne les outputs suivants aux sorties de la SPS.
%QB1.4
%QB1.5
b b
1 2
0 0 0 0 0 0 1 0
%QB1.6
int
16#00
%QB1.7
%QB1.8
octet
16#26
16#A5
b
3
0 0 0 0 0 0 0 1
Remarque:
Octet de poids fort de 38: 16#00, Octet de poids faible de 38:
Les bits non utilisés ont la valeur initiale standard 2#0 (FALSE).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
16#26
2-16 Généralités
Tableaux
Le type des éléments et leur ordre à l'intérieur d'un tableau sont prédéfinis
par convention ou par la bibliothèque standard. Le nom d'un élément se
compose du nom des variables et de l'indication de sa position à l'intérieur du tableau.
variables_nom[i,j]
i,j - Position (2-d-Tableau)
Il est recommandé d'accéder aux éléments du tableau au moyen de ce
nom étant donné que le stockage interne SPS s'effectue sous une forme
mémoire et vitesse effectives. Les éléments d'un tableau peuvent recevoir des informations des entrées SPS Une influence des sorties SPS est
également possible.
Influence des sorties de la SPS par une variable ARRAY:
Convention du type de données 'BYTE_ARR'
TYPE
BYTE_ARR
(*Tableau test pour convertisseur de sorties, *)
BYTE_ARR
ARRAY [
0 ..
1
0 ..
1
] OF
BYTE
END_TYPE
Déclaration
BYTE_ARR
des
variables
de
Nom
AT
TYPE
OutArray
%QW1.4
BYTE_ARR
sorties
:=
'OutArray'
du
type
Commentaire
(*Prédéfinition dans
implémentation*)
Affectation des éléments des variables de sortie 'OutArray'
Marque
Opération
LD
ST
LD
ST
LD
ST
LD
ST
Opérande
Commentaire
16#FE
OutArray[0,0]
16#DC
OutArray[0,1]
16#BA
OutArray[1,0]
16#98
OutArray[1,1]
Conformément à la convention des variables ‘OutArray’ , la sortie commence à partir de l'adresse mot %QW1.4 (en commençant avec
%QB1.4) et se poursuit en fonction de la longueur du tableau. L'exécution
du programme entraîne les outputs suivants aux sorties de la SPS.
%QB1.4
%QB1.5
%QB1.6
%QB1.7
OutArray[0,0]
OutArray[0,1]
OutArray[1,0]
OutArray[1,1]
16#FE
16#DC
16#BA
16#98
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-17
Constantes d’adresse
Outre l'entrée directe d'adresses, l'utilisateur peut pour les types de données micrologiciels INDRAMAT utiliser une seconde possibilité très
avantageuse (réduction des possibilités d'erreur, vu que l'adresse est
toujours correcte) (jusqu'à présent implémentée dans MT-CNC).
Variables d'entrée/état
Signaux axe
Axe01
Axe02
Axe32
Type de
données
iAXIS
Variables de sortie/Command
Const adress
Adresse
A#A01S
A#A02S
...
A#A32S
%IW0.10
%IW0.30
...
%IW0.630
Variables d'entrée/état
Processus
Processus00
Processus01
Processus06
Type de
données
iPROC
Mécan07
Mécan08
Mécan31
Type de
données
iMECH
Const adress
Adresse
A#P00S
A#P01S
...
A#P06S
%IW0.660
%IW0.700
...
%IW0.900
DEA0
DEA1
DEA2
Type de
données
iDEA
Adresse
A#A01C
A#A02C
...
A#A32C
%QW0.0
%QW0.20
...
%QW0.620
Type de
données
qPROC
Const adress
Adresse
A#P00C
A#P01C
...
A#P06C
%QW0.640
%QW0.680
...
%QW0.880
Variables de sortie/Command
Const adress
Adresse
A#M07S
A#M08S
...
A#M31S
%IW0.930
%IW0.950
...
%IW0.1410
Variables d'entrée/état
DEA
qAXIS
Const adress
Variables de sortie/Command
Variables d'entrée/état
Mécanisme
Type de
données
Type de
données
qMECH
Const adress
Adresse
A#M07C
A#M08C
...
A#M31C
%QW0.920
%QW0.940
...
%QW0.1400
Variables de sortie/Command
Const adress
Adresse
A#iDEA0
A#iDEA1
A#iDEA2
%IW0.1434
%IW0.1454
%IW0.1474
Type de
données
qDEA
Const adress
Adresse
A#qDEA0
A#qDEA1
A#qDEA2
%QW0.1424
%QW0.1444
%QW0.1464
Touches de fonction machine à gauche
Touches de fonction machine à droite
Type de
données
Const adress
Adresse
Type de
données
Const adress
Adresse
MFK_L
A#MFK_L
%IW0.1480
MFK_R
A#MFK_R
%IW0.1481
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-18 Généralités
Déclaration et initialisation
Chaque POU (c'est-à-dire, PROGRAM FUNCTION_BLOCK ou FUNCTION)
présente une section déclaration dans laquelle les variables utilisées sont
définies avec leur nom, leur type de données et, le cas échéant, leur valeur
initiale dans l'ordre indiqué ci-après.
Entrées:
VAR_INPUT
END_VAR
Sorties:
VAR_OUTPUT
END_VAR
Marqueur
VAR
END_VAR
Indicateur de retenue:
VAR RETAIN
END_VAR
Variables globales:
VAR_GLOBAL
END_VAR
Variables externes
VAR_EXTERNAL
END_VAR
Mot clé
Application
VAR_INPUT
Entrées:
•
est reçue de l'extérieur, ne peut pas
être modifiée dans l'unité d'organisation du programme
VAR_OUTPUT
Sorties:
•
est calculée dans l'unité d'organisation du programme et est utilisée à
l'extérieur (Monitorage de réécriture
multiple possible)
VAR
Marqueur
•
à l'intérieur d'une unité d'organisation de programme
VAR RETAIN
Indicateur
de retenue:
•
à l'intérieur d'une unité d'organisation de programme, propriétés rémanentes
VAR_GLOBAL
Variables
globales:
•
variables déclarées à l'intérieur d'un
programme et accessible directement par VAR_EXTERNAL à partir
du bloc fonctionnel
Variables
externes
•
Variables définies en tant que variable globale dans le programme supérieur et à laquelle il est possible
d'accéder directement à l'intérieur du
bloc fonctionnel.
(nouveau dans
Version 18)
VAR_EXTERNAL
(nouveau dans
Version 18)
Le domaine d'application des déclarations est LOCAL en ce qui concerne
l'unité d'organisation où se trouve la section déclaration. Ceci signifie que
d'autres unités d'organisation de programme ne peuvent accéder qu'aux
variables déclarées en tant qu'entrées ou sorties de cette unité.
L'initialisation des variables entrées, sorties et drapeaux avec les valeurs
définies par l'utilisateur ou avec les valeurs standard s'effectue lors du
chargement d'un nouveau programme ou d'une réinitialisation de la commande; dans le cas des marqueurs de retenue seulement lors du chargement d'un nouveau programme.
Des valeurs initiales peuvent être allouées par l'utilisateur aux niveaux
suivants:
• Programme pour VAR_OUTPUT et VAR, VAR RETAIN,
• FB pour VAR_INPUT, VAR_OUTPUT et VAR, VAR RETAIN.
Les éléments des variables structurées et des tableaux sont prédéfinis
avec leurs valeurs initiales standard.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-19
2.4 Unités d'organisation de programme
Les unités d'organisation de programme suivantes (POU) sont supportées:
• FUNCTION (Fonction)
• Bloc fonctionnel (FUNCTION_BLOCK) et
• PROGRAM (Programme),
Chacune de ces unités d'organisation peut être définie par l'utilisateur.
En supplément, INDRAMAT met à disposition des modules de fonction et
des fonctions dans une bibliothèque s'inscrivant dans le système de programmation. A l'intérieur d'un programme écrit par l'utilisateur, il est possible d'utiliser des fonctions standard et des fonctions utilisateurs comme
des blocs fonctionnels standard ou utilisateur. Cette possibilité se reflète
dans la structure du programme.
Fonctions (FUNCTION)
Une fonction (FK) est une unité d'organisation de programme qui possède 1...n entrées et une sortie
La variable de sortie peut se présenter sous la forme d'une variable à un
élément ou d'une chaîne de caractères.
L'appel d'une fonction avec la même affectation aux entrées livre toujours
le même résultat à la sortie.
Tous les résultats intermédiaires de calculs seront refusés après détermination de la valeur de la fonction (de sortie). Une préinitialisation de
variables n'est pas possible.
Une fonction peut être utilisée dans chaque unité d'organisation de programme.
Il existe des fonctions standard et des fonctions micrologicielles qui sont
mises à disposition par INDRAMAT et qui peuvent être utilisées immédiatement, mais qui ne peuvent pas être modifiées. Par ailleurs, chaque utilisateur peut écrire ses propres fonctions.
Fonctions standard et micrologicielles
INDRAMAT met à disposition de l'utilisateur des fonctions standard et
micrologicielles.
Elles ont été empruntées à la norme 'EN 61131-3’ ou bien développées
en complément par le constructeur SPS.
La section déclaration et le contenu restent constants même dans le cas
des bibliothèques standard et systèmes d'exploitation optimisés. /2/ permet
d'avoir un aperçu.
Architecture d'une fonction définie par utilisateur
Au cours de la déclaration de la fonction utilisateur, l'utilisateur définit tout
d'abord la forme extérieure de la fonction, c'est-à-dire, le nombre, le nom
et les types des entrées.
En définissant le nom de la fonction, il définit le nom de la sortie. Par
ailleurs, le type de sortie est également défini. A l'intérieur de la fonction, il
peut en supplément y avoir des variables pour l'utilisation interne. Un accès de l'extérieur à ces variables n'est cependant pas possible.
Il est possible d'attribuer un commentaire(de déclaration) à chaque variable.
Ce commentaire permet de caractériser les variables de façon plus précise
chaque fois qu'elles apparaissent (par exemple les variables pouvant être
affichées dans les fenêtres de sélection ou bien imprimées).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-20 Généralités
Une fonction à définir par l'utilisateur comprend la section déclaration et
l'implémentation. La section déclaration comprend:
• Le mot clé FUNCTION suivi du nom de la fonction, de deux points ':' et
du type de données de la fonction (L'inscription du nom s'effectue automatiquement),
• le commentaire à la déclaration de la fonction (les 5 premières lignes
sont utilisées pour des fonctions auxiliaires),
• les noms et types d'entrées de la fonction sont définis entre
VAR_INPUT..END_VAR
• Les noms et types des variables internes à la fonction sont entrées
entre VAR..END_VAR . Dans la section implémentation de la fonction
il faut pré-initialiser les variables avant tout accès en lecture afin
d'éviter que les variables reçoivent une valeur au hasard (affectation
au hasard).
Ensuite, on peut procéder à l'implémentation de la fonction.
Les langages de programmation suivants sont à disposition:
• La liste d'instructions 'IL',
• le langage à contacts 'LD' ou
• le langage en diagramme de blocs fonctionnels 'FBD'.
Des éléments SFC ne sont pas autorisés
Le mot clé END_FUNCTION est automatiquement complété par le système de programmation lors de la mémorisation.
Exemple Fonction utilisateur
Tâche
En fonction d'une entrée SEL, l'une des deux entrées ‘i1’ ou ‘i2’ est envoyée à la sortie de fonction.
Représentation graphique (langage à contacts, langage en blocs fonctionnels)
BOOL
INT
INT
6(/(&7
6(/
L
L
,17
Il est tout d'abord procédé à la déclaration de la nouvelle fonction à créer
(voir Fig. ci-après).
Fig. 2-7: Déclaration de la fonction SELECT
Ensuite une copie sur écran de l'implémentation est effectuée. En tant
que langage de programmation, on a retenu la liste d'instructions
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-21
Fig. 2-8: Implémentation de la fonction SELECT
Utilisation de fonctions à l'intérieur de fonctions
Une fonction utilisateur peut utiliser les fonctions utilisateur ’FK’ et les
fonctions standard ’fk’.
• Fonction fk standard ou micrologiciel
− Utilisation directe sans importation ou déclaration conformément au
langage de programmation sélectionné.
• Fonction utilisateur FK
− Importation de la fonction → Editeur d'importation
− Utilisation conformément au langage de programmation retenu
L'imbrication peut être poursuivie sur une profondeur quelconque.
N.B.
Tout appel de la fonction 'A' par elle-même (récursivité) est
interdit, comme il est interdit que la fonction 'A' appelle la
fonction 'B' et que cette dernière utilise à nouveau la fonction
'A' etc.
Des erreurs de ce type seront au plus-tard détectées au moment de la traduction par le compilateur.
Blocs fonctionnels (FUNCTION BLOCK)
Un bloc fonctionnel (FB) est une POU qui peut posséder 1...n entrées et
1…m sorties et des variables internes.
La conception DIN/EN prévoit une séparation de principe entre le code
programme du bloc fonctionnel et la mémoire de données nécessaires
pour le stockage des valeurs des variables.
La mémoire de données est neutralisée d'exécution en exécution Si un tel
FB, par exemple un compteur de type COUNTER est requis trois fois, c'està-dire que l'utilisateur désire l'utiliser trois fois à des fins différentes sous les
noms 'compteur1', 'compteur2', 'compteur3', le code programme à attribuer
au bloc fonctionnel COUNTER n'existe qu'une seule fois avec trois jeux de
variables (Affectation, INSTANCE) liés aux noms 'compteur1', 'compteur2',
'compteur3''.
La séparation conséquente entre code programme et variables permet
l'utilisation répétée et simultanée de blocs fonctionnels à l'intérieur d'autres
blocs fonctionnels ou à l'intérieur de programmes sans que l'utilisateur soit
contraint de s'occuper du transfert ou de la sauvegarde des variables.
Seules les entrées et sorties d'un bloc fonctionnel sont visibles de l'extérieur. Les variables internes restent invisibles à l'utilisateur.
Une distinction est opérée entre blocs fonctionnels standard, blocs fonctionnels micrologiciels et blocs fonctionnels définis par utilisateur.
Blocs fonctionnels standard et micrologiciels peuvent être utilisés, mais ils
ne peuvent pas être modifiés.
Chaque utilisateur peut définir ses propres blocs fonctionnels.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-22 Généralités
Blocs fonctionnels standard et micrologiciels
INDRAMAT met à disposition de l'utilisateur des blocs fonctionnels standard et micrologiciels. Ils sont basés sur des propositions IEC et sont
réalisés en tant que complément par le constructeur de la SPS
L'interface reste constante également dans le cas de bibliothèques et systèmes d'exploitation standard perfectionnés Les blocs fonctionnels standards sont utilisables dans tous les langages de programmation. Déclaration et représentation graphique sont contenues dans /2/.
Architecture d’un bloc fonctionnel utilisateur
Dans le cadre de la déclaration d'un bloc fonctionnel utilisateur, l'utilisateur
définit tout d'abord la forme externe du bloc fonctionnel, c'est-à-dire le nombre, les noms et les types d'entrées ainsi que le nombre, les noms et les
types de sorties.
A l'intérieur du bloc fonctionnel (FB), des variables peuvent en supplément
être définies pour l'utilisation interne. Un accès de l'extérieur à ces variables
n'est cependant pas possible. A chaque variable peut correspondre un
commentaire (de déclaration) qui caractérise cette variable de façon plus
détaillée à chaque endroit où elle apparaît.
Un bloc fonctionnel défini par utilisateur doit être déclaré de la façon suivante:
⇒ Mot clé FUNCTION_BLOCK avec le nom. (L'inscription du nom est
effectuée automatiquement lorsqu'on entre dans l'éditeur)
⇒ Commentaire de déclaration du bloc fonctionnel. (Les 5 premières
lignes continuent à être utilisées pour des fonctions auxiliaires).
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des entrées du bloc fonctionnel.
N.B.
A partir de la version 17, des pointeurs sont également permis
ici. A la différence des autres entrées de bloc fonctionnel, les
pointeurs doivent être connectés étant donné que la valeur
standard initiale est sinon un NIL-POINTER!
⇒ Chaque entrée de pointeur peut indiquer soit une adresse soit un
pointeur.
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des sorties du bloc fonctionnel. (Des pointeurs ne sont pas permis ici)
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des variables internes. Si
d'autres FB doivent être utilisés à l'intérieur d'un FB, il faut ajouter au
nom respectif du FB leurs noms d'affectation (déclaration). A partir de la
version 17, des pointeurs sont permis.
Ne pas oublier d’assigner une adresse
⇒ sinon NIL-POINTER
(Voir aussi Chapitre 0, ‘FIG. 2-5:
TYPE DE données défini par l'utilisateur (ARRAY of STRUCT),
ATTENTION
Le Type de données OUTILLAGE (Fig. 2-3: Type de
données défini par l'utilisateur (STRUCT)) doit être importé auparavant.’, Page 2-8.)
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des variables internes qui doivent présenter des propriétés rémanentes
Si d'autres FB avec des propriétés rémanentes doivent être utilisés à
l'intérieur d'un FB, il faut ajouter au nom respectif du FB leurs noms
d'affectation (déclaration). (Des pointeurs ne sont pas permis ici)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-23
⇒ Entre VAR EXTERNAL..END_VAR, il faut entrer les noms et types de
variables qui ont été validées en tant que variables globales au niveau
du programme et auxquelles on doit avoir accès directement à l'intérieur du FB. Les variables doivent du point de vue nom et type de données correspondre à leur original au niveau du programme. Dans le cas
contraire, une erreur de lien se produit lors de la traduction. Des valeurs
initiales ne peuvent être entrées que pour l'original dans le programme.
Si l'original au niveau du programme est déclaré dans la plage
VAR_INPUT..END_VAR, on ne peut y accéder qu'en lecture. (nouveau
dans Version 18)
Ensuite, on peut procéder à l'implémentation du bloc fonctionnel. Un FB
peut contenir des éléments de langage séquentiel SFC
Les langages de programmation suivants sont à disposition:
• La liste d'instructions 'IL',
• le langage à contacts 'LD' ou
• le langage en diagramme de blocs fonctionnels 'FBD'.
Le mot clé END_FUNCTION est automatiquement complété par le système de programmation lors de la mémorisation.
Exemple Bloc fonctionnel utilisateur
Tâche
Un bloc fonctionnel AOVR doit convertir l'octet d'entrée IOVR (0...$FF) à
la valeur de sortie QOVR correspondant à la valeur maximale MAX.
QOVR := (IOVR* MAX )/255.
Le module FB doit être configuré via l'entrée ENA de façon à pouvoir être
verrouillable Une autre entrée TOG100 commute la sortie QOVR entre la
valeur 100% et la valeur spécifique. Si la valeur 0% ou 100% se trouve à la
sortie, il faut que ceci soit affiché via les sorties AT_0 ou AT_100.
Représentation graphique
(Langage à contacts ./. Langage
de bloc fonctionnel
Extrait de la documentation de la section de déclaration:
BOOL
BOOL
INT
BYTE
$295
(1$4295
72*$7B
0$;$7B
,295|
,17
%22/
%22/
On procède tout d'abord à la déclaration du nouveau bloc fonctionnel à créer.
Fig. 2-9: Déclaration du bloc fonctionnel AOVR
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-24 Généralités
Un extrait de la documentation sur l'implémentation dans les langages de
programmation 'FBD', 'IL' et 'LD' est donné ci-après.
LE FB a été entré dans la liste IL et documenté en FBD ou LD.
Bloc fonctionnel
AOVR en FBD
1
2
(*Validation Override*)
ENA
3
4
2 !!2(
(*Remise sur 100% OVERRIDE*)
TOG100 HMM100 2
HM100 5
6
(*Mise sur 100% OVERRIDE*)
TOG100 HM100 2
HMM100 2
7
8
13
14
15
16
17
100
4295
2#1
!!2(
(*Cadrer OVERRIDE *)
(*DINT, da 129*255 > INT!!*)
O100:
%<7(B,17 ,17B',17 IOVR %<7(B
,17B
,17B',17 MAX ,17B
',17B,17 ,17B86,
255 ',17B
,17B
4295
(*Etiquette auxiliaire pour sélection 100%*)
OE:
TOG100 +00
(*Affichage de 0% OVERRIDE*)
QOVR
0
18
19
2 !!2
(*Charger/Transférer 100%*)
11
12
6 +0
(*Fixer sur 100% OVERRIDE*)
HM100
9
10
5 +0
!!2(
$7B
(*Affichage de 100% OVERRIDE*)
QOVR
100
$7B
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-25
Bloc fonctionnel
AOVR en IL
1
2
3
4
5
6
7
8
9
¦
10
11
12
13
14
15
16
17
18
19
(*Validation Override*)
....... LD........ ENA...............
....... JMPCN..... OE................
(*Remise sur 100% OVERRIDE*)
....... LD........ TOG100............
....... ANDN...... HMM100............
....... AND....... HM100.............
....... RESC...... HM100.............
....... JMPC...... OE................
(*Mise sur 100% OVERRIDE*)
....... LD........ TOG100............
....... ANDN...... HM100.............
....... ANDN...... HMM100............
....... SETC...... HM100.............
(*OVERRIDE auf 100% festsetzen*)
....... LD........ HM100.............
....... JMPCN..... O100..............
¦(*Charger/Transférer 100%*)
(*Validation *)...............
(**)..........................
(*Commutation n%/100% OVR*)...
(*Etiquette auxiliaire 2*)....
(*Etiquette auxiliaire 1*)....
(*Etiquette auxiliaire 1*)....
(**)..........................
(*Commutation n%/100% OVR*)...
(*Etiquette auxiliaire 1*)....
(*Etiquette auxiliaire 2*)....
(*Etiquette auxiliaire 1*)....
(*Etiquette auxiliaire 1*)....
(**)..........................
....... LD........ 100............... ..............................
....... ST........ QOVR.............. (*OVERRIDE cadré*)............
....... LD........ 2#1............... ..............................
....... JMPC...... OE................ (**)..........................
(*Cadrer OVERRIDE *)
(*DINT, da 129*255 > INT!!*)
O100:.. LD........ IOVR.............. (*OVERRIDE*)..................
....... BYTE_INT.. .................. ..............................
....... INT_DINT.. .................. ..............................
....... MUL(...... .................. ..............................
....... LD........ MAX............... (*Valeur max. Override*)......
....... INT_DINT.. .................. ..............................
....... )......... .................. ..............................
....... DIV....... 255............... ..............................
....... DINT_INT.. .................. ..............................
....... INT_USI... .................. ..............................
....... ST........ QOVR.............. (*OVERRIDE cadré*).......
(*Etiquette auxiliaire pour sélection 100%*)
OE:.... LD........ TOG100............ (*Commutation n%/100% OVR*)...
....... ST........ HMM100............ (*Etiquette auxiliaire 2*)....
(*Affichage de 0% OVERRIDE*)
....... LD........ QOVR.............. (*OVERRIDE cadré*).......
....... EQ........ 0................. ..............................
....... ST........ AT_0.............. (*Affichage OVERRIDE sur 0%*).
(*Affichage de 100% OVERRIDE*)
....... LD........ QOVR.............. (*OVERRIDE cadré*).......
....... EQ........ 100............... ..............................
....... ST........ AT_100............ (*Affichage OVERRIDE sur 100%*)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-26 Généralités
Bloc fonctionnel
AOVR en LD
1
2
(*Validation Override*)
(1$
2!2(
3
4
(*Remise sur 100% OVERRIDE*)
5
6
(*Fixer sur 100% OVERRIDE*)
7
8
(*Réglage sur 100% OVERRIDE*)
9
10
(*Charger/Transférer 100%*)
12
(*Cadrer OVERRIDE *)
72*+00+0 HM100
5
!!2(
72*+0+00+0
6
+0
2!2
4295
11
!!2(
13
',17GD !,17 2
%<7(B,17 ,17B',17 ',17B,17 ,17B86, ,295 %<7(B
,17B
',17B
,17B 4295
,17B',17 0$; ,17B
14
15
(*Etiquette auxiliaire pour sélection 100%*)
16
17
(*Affichage de 0% OVERRIDE*)
18
19
(*Affichage de 100% OVERRIDE*)
2(
72*+00
$7B
4295 $7B
4295 Utilisation de fonctions et de blocs fonctionnels dans
des blocs fonctionnels
Un bloc fonctionnel utilisateur peut utiliser des fonctions utilisateur, standard et micrologicielles ’FK’, ’fk’ ainsi que des blocs fonctionnels utilisateur, standard et micrologiciels:
• fk est une fonction standard ou micrologicielle
− Utilisation directe sans importation ou déclaration conformément au
langage de programmation sélectionné.
• FK est une fonction utilisateur
− Importation de la fonction
→
Editeur d'importation
− Utilisation conformément au langage de programmation sélectionné
• fb est un bloc fonctionnel standard ou micrologiciel:
− Déclaration de l'affectation du bloc fonctionnel FB →
de déclaration
Editeur
− Utilisation conformément au langage de programmation sélectionné
− Aucune importation nécessaire, car déjà présent dans la bibliothèque standard
• FB est un bloc fonctionnel utilisateur
− Importation du bloc fonctionnel
→
Editeur d'importation
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-27
− Déclaration de l'affectation du bloc fonctionnel FB →
de déclaration
Editeur
− Utilisation conformément au langage de programmation sélectionné
L'imbrication peut être poursuivie sur une profondeur quelconque.
N.B.
Tout appel du bloc fonctionnel 'A' par lui-même (récursivité) est
interdit, comme il est interdit que le bloc fonctionnel 'A' appelle
le bloc fonctionnel 'B' et que ce dernier utilise à nouveau le bloc
fonctionnel 'A' etc.
Des erreurs de ce type seront au plus-tard détectées au moment de la traduction par le compilateur.
Programme (PROGRAM)
Suivant 'EN 61131', un programme est la plus petite unité qui puisse être
chargée et mise en route automatiquement.
A l'inverse de ce qui se passe avec les blocs fonctionnels et fonctions,
l'accès à :
• une variable adressée symboliquement mais toutefois liée à une entrée ou sortie précise ou à un emplacement de mémoire et
• une variable adressée de façon absolue (entrées, sorties, marqueurs)
est autorisé à l'intérieur d'un programme,.
Une pré-initialisation de variables de sortie et de marqueurs est possible. A
chaque variable peut correspondre un commentaire (de déclaration) qui caractérise cette variable de façon plus détaillée à chaque endroit où elle apparaît.
Un programme SPS à définir par utilisateur doit être déclaré de la façon
suivante:
⇒ Mot clé PROGRAM avec le nom.
L'inscription du nom est effectuée automatiquement lorsqu'on entre
dans l'éditeur
⇒ Commentaire de déclaration du programme
(Les 5 premières lignes continuent à être utilisées pour des fonctions
auxiliaires).
⇒ Entre VAR_INPUT..END_VAR, on définit les noms, les points de
branchement et les types des entrées du programme.
⇒ Entre VAR_INPUT..END_VAR , on définit les noms, les points de
branchement et les types, et si nécessaire, également les valeurs initiales des sorties du programme.
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des variables internes. Une
liaison avec un emplacement de la mémoire peut être effectuée.
⇒ Si des blocs fonctionnels doivent être utilisés à l'intérieur du programme, il faut ajouter au type du FB leur nom d'affectation.
A partir de la version 17, des pointeurs sont également permis ici.
Ne pas oublier d’assigner l’adresse avec "Adresse
de"
⇒ sinon NIL-POINTER!
ATTENTION
⇒ Entre VAR_INPUT..END_VAR , on définit les noms et types, et si nécessaire, également les valeurs initiales des variables internes qui doivent présenter des propriétés rémanentes Une liaison avec un emplacement de la mémoire peut être effectuée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-28 Généralités
Si des blocs fonctionnels doivent être utilisés à l'intérieur du programme, il faut ajouter au type du FB leur nom d'affectation. (Des
pointeurs ne sont pas permis ici)
⇒ Entre VAR_GLOBAL..END_VAR, il est possible d'entrer le nom de
variables déjà déclarées. La ligne de déclaration restante faisant partie
d'un tel nom est complétée comme un commentaire. L'inscription
d'une variable dans cette zone fait que cette variable ne peut plus être
effacée de la déclaration (variable est utilisée!). (nouveauté à partir de
la Version 18)
Ensuite, on peut procéder à l'implémentation du programme. Un programme peut contenir des éléments SFC pour structuration.
Les langages de programmation suivants sont à disposition:
• La liste d'instructions 'IL',
• le langage à contacts 'LD' ou
• le langage en diagramme de blocs fonctionnels 'FBD'.
Le mot clé END_PROGRAM est automatiquement complété par le système de programmation lors de la mémorisation.
Exemple: Programme écrit par utilisateur
En tant que différence essentielle entre un bloc fonctionnel et un programme, on a déjà mentionné la liaison des entrées et sorties à des entrées et sorties SPS concrètes. Toutes les autres explications données
pour les blocs fonctionnels sont également applicables aux programmes.
Utilisation de fonctions et de blocs fonctionnels dans
des programmes
Un programme utilisateur peut utiliser des fonctions utilisateur, standard
et micrologicielles 'FK', 'fk' ainsi que des blocs fonctionnels utilisateur,
standard et micrologiciels 'FB', 'fb':
• fk est une fonction standard ou micrologicielle
− Utilisation directe sans importation ou déclaration conformément au
langage de programmation sélectionné.
• FK est une fonction utilisateur
− Importation de la fonction
→
Editeur d'importation
− Utilisation conformément au langage de programmation sélectionné
• fb est un bloc fonctionnel standard ou micrologiciel:
− Déclaration de l'affectation du
bloc fonctionnel FB
Editeur de déclaration
− Utilisation conformément au langage de programmation sélectionné
− Aucune importation nécessaire, car déjà présent dans la bibliothèque standard
• FB est un bloc fonctionnel utilisateur:
− Importation du bloc fonctionnel →
Editeur d'importation
− Déclaration de l'affectation du FB →
Editeur de déclaration
− Utilisation conformément au langage de programmation sélectionné
L'imbrication peut être poursuivie sur une profondeur quelconque.
N.B.
Tout appel du bloc fonctionnel 'A' par lui-même (récursivité)
est INTERDIT, comme il est interdit que le bloc fonctionnel 'A'
appelle le bloc fonctionnel 'B' et que ce dernier utilise à nouveau le bloc fonctionnel 'A' etc.
Des erreurs de ce type seront au plus-tard détectées au moment de la traduction par le compilateur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-29
Variables globales dans programmes et variables externes dans FB
Programme
• Une extension de la déclaration est effectuée au moyen de la zone
VAR_GLOBAL..END_VAR
• La déclaration des variables qui sont nécessaires au programme luimême ou (nouveau) qui doivent être définies en tant que variables globales pour l'accès à partir des FB, s'effectue comme jusqu'à présent
dans les zones VAR_INPUT, VAR_OUTPUT, VAR, VAR RETAIN.
• La déclaration des variables qui doivent être utilisées en dehors du
programme, s'effectue dans la zone VAR_GLOBAL..END_VAR. Il suffit pour ce faire d'inscrire le nom des variables.
• Le traitement de la zone est similaire à une utilisation dans l'implémentation: Toute variable doit être déclarée auparavant; l'inscription dans la zone
VAR_GLOBAL augmente le nombre des utilisations de 1. La variable ne
peut alors plus être effacée dans la déclaration (variable utilisée).
• Dans la zone VAR_GLOBAL, on entre seulement le nom des variables
déjà déclarées.
• Les variables peuvent être reprises par opération en bloc. Seul le nom
est alors repris, le reste est laissé de côté.
• Dans le champ Type de l'éditeur de déclaration, Zone VAR_GLOBAL,
le type de données des variables adressées de façon absolue est affiché. Dans le cas d'opérations en blocs, le type des variables est complété lors de l'écriture dans l'éditeur de texte, si les variables n'ont été
déclarées qu'avec adresse absolue. (voir aussi ibit)
Déclaration de
variables globales
Exemple:
Nom
AT
TYP
E
:=
Commentaire
i
A#iDEA0
Idea
STRUCT d'entrée
int_i
%IW3.1
INT
un nombre
ibit
%I1.1.1
VAR_INPUT
Å
Adresse abs. Type de données
END_VAR
VAR_OUTPUT
int_a
%QW2.2
INT
35
un nombre également
END_VAR
VAR
m
TWilli
variable, type utilisateur
rs
RS
instance d'un fb
Twilli
retain var, type utilisateur
END_VAR
VAR RETAIN
m_r
END_VAR
VAR_GLOBAL
i
A#iDEA0
IDEA
STRUCT d'entrée
ibit
%I1.1.1
BOOL
Adresse abs. Type de données
int_a
%QW2.2
Å
INT
un nombre également
m
tWilli
variable, type utilisateur
m_r
tWilli
retain var, type utilisateur
END_VAR
L’inscription d’instances de bloc fonctionnel dans la zone VAR_GLOBAL n’est
pas permise jusqu'à présent.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-30 Généralités
Bloc fonctionnel
• La déclaration du module FB est élargie de VAR_EXTERNAL Il s'agit
d'une véritable section de déclaration, le module peut être écrit indépendamment du programme. Des variables dans cette zone sont
étroitement apparentées aux marqueurs, elles n'influencent pas l'interface du FB.
• Les variables peuvent, à l'intérieur de la déclaration, être décalées de
VAR,
VAR_RETAIN,
VAR_INPUT,
VAR_OUTPUT
vers
VAR_EXTERNAL. Ces décalages peuvent être effectués avec les outils existants jusqu'à présent, le cas échéant avec ASCII.
• Si, lors d'opérations en bloc dans un FB, des adresses absolues sont
lues, elles seront supprimées automatiquement sans message d'erreur. Il est cependant impératif que chaque variable soit dotée d'un
type de données (règle valable pour toutes les zones de la déclaration!!!).
• Les
propriétés
réelles
des
variables
convenues
dans
VAR_EXTERNAL sont définies par déclaration dans le programme
(RETAIN, read_only avec VAR_INPUT). Lors de la programmation du
FB, elles ne peuvent pas être supposées connues et, par conséquent,
ne peuvent pas être vérifiées! La vérification a lieu seulement au moment de la traduction/liaison.
• <Touche Majuscule>+<F1>-Boîte de dialogue Aide: Dans la boîte de
dialogue de chaque FB, le message suivant:
„Variable externe attendue“ est affiché.
Déclaration de
variables externes
Nom
AT
TYPE
:=
Commentaire
VAR_EXTERNAL
I
iDEA
Accès aux variables d'entrée (r/o)
ibit
BOOL
Abs. Adresse Å Datentyp
Int_q
INT
M
tWilli
Type de données utilisateur
END_VAR
Exemples pour application
Des exemples sont présentés dans /5/, Jeu d'instructions SPS, avec les accès -POINTEUR.
Blocs fonctionnels standard et Fonctions standard dans la bibliothèque
INDRAMAT met à la disposition de l'utilisateur une base composée de:
• Blocs fonctionnels standard et micrologiciels
• Fonctions standard et micrologicielles et de
• Types de données standard et micrologiciels
dans une bibliothèque faisant partie intégrante du système.
Les sections de déclaration de ces blocs fonctionnels, fonctions et types
de données restent conservées même en cas de changement de version
du système de programmation.
Le code machine correspondant à ces éléments se trouve déjà dans la
commande, ce qui signifie qu'il n'y a aucune perte de temps pour chargement lors de l'utilisation des éléments.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Généralités 2-31
Représentation de programmes, blocs fonctionnels, fonctions et types
de données en format ASCII
A partir de la version 17 incluse, il est possible de stocker des fichiers de données en format ASCII.
Sous ce format, les fichiers sont stockés indépendamment de la version
utilisée et restent ainsi compatibles avec les versions inférieures. (Dans
les versions inférieures à 17, les éditeurs – si existants – se servent du
même format pour Ecriture de bloc/ lecture de bloc).
Le type de l'archivage repose sur la DIN/EN 61131-3 (Texte structuré (ST) /
IL) Les différents éditeurs y contribuent dans l'ensemble du fichier.
Les sections suivantes peuvent apparaître dans les différents types de
POU:
Programme
1.
En tête POU
PROGRAM abc
2.a
Données IO
IO ...
END_IO
3.a
Données d'importation
IMPORT ...
END_IMPORT
4.
Déclaration
DECLARATION ...
END_DECLARATION
5.b
Association de données
de process (liaison)
IMPLEMENTATION_PDM
END_IMPLEMENTATION
6.b
Simulation IO
IMPLEMENTATION_SIM ...
END_IMPLEMENTATION
7.b
Implémentation 2ms
IMPLEMENTATION_FAST ..
END_IMPLEMENTATION
8.b
Implémentation
IMPLEMENTATION ...
END_IMPLEMENTATION
9.
Fin POU
END_PROGRAM
seulement pour
IBS G03
L'ordre à l'intérieur de 'a' et 'b' peut être modifié à discrétion. Les points 1. et
9. sont absolument indispensables. Les points 2. à 8. sont optionnels.
Blocs fonctionnels
1.
En tête POU
FUNCTION_BLOCK abc
3
Données d'importation
IMPORT ...
END_IMPORT
4.
Déclaration
DECLARATION ...
END_DECLARATION
8.
Implémentation
IMPLEMENTATION ...
END_IMPLEMENTATION
9.
Fin POU
END_ FUNCTION_BLOCK
Les points 1. et 9. sont absolument indispensables. Les points 3. à 8. sont
optionnels.
Fonctions
1.
En tête POU
FUNCTION abc: fk_type
3.
Données d'importation
IMPORT ...
END_IMPORT
4.
Déclaration
DECLARATION ...
END_DECLARATION
8.
Implémentation
IMPLEMENTATION ...
END_IMPLEMENTATION
9.
Fin POU
END_ FUNCTION
Les points 1. et 9. sont absolument indispensables. Les points 3. à 8. sont
optionnels.
Types de données
1.
En tête POU
Type abc
3.
Données d'importation
IMPORT ...
END_IMPORT
4.
Déclaration
DECLARATION ...
END_DECLARATION
9.
Fin POU
END_ TYPE
Les points 1. 4. et 9. sont absolument indispensables.
Le point 3. est optionnel.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-32 Généralités
Un commentaire suivant l'en-tête POU est transmis à l'éditeur de déclaration en tant que commentaire de déclaration.
Les sections sur les différents éditeurs contiennent des exemples de la
façon dont chaque éditeur archive ses composants.
L'utilisateur fera bien de n'utiliser tout d'abord que le chemin Mémoriser
Fichier/ASCII (dans l'éditeur de texte) Charger Fichier/ASCII (de l'éditeur
de texte). Ensuite, il pourra sans difficulté amorcer ses propres essais de
programmation dans l'éditeur de texte.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-1
3 Détermination de la configuration matérielle, Tableaux IO
Au début de la programmation proprement dite, il est nécessaire d'entrer la
configuration matérielle prévue dans des tableaux IO (Input-Output) du
système de programmation.
Chaque tableau IO enregistre les postes d'un bus. Le nombre et les types
des bus supportés sont fonction du type de la commande (MTC200, MTCNC ...).
L'utilisateur peut entrer la configuration désirée sans tenir compte des bus
et/ou postes actuellement connectés à la commande.
Ce n'est logiquement qu'une fois cette définition effectuée que l'on peut
déclarer des entrées et sorties à des adresses absolues. Avant le chargement du programme dans la SPS, les données créées ici sont comparées avec les données matérielles effectivement existantes de la commande.
A partir de la version 16, il est possible de connecter en attente des
bus/postes concrètement absents en permettant ainsi un téléchargement
également en cas de périphérie réduite. (Les entrées et sorties concrètement absentes sont alors remplacées par un drapeau).
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
5(&2,,,444 (seulement avec programmes!)
,03257
,03257)520Commentaire
)81&7,21(*Fonctions définies par utilisateur*) Import de type de
1$1'(*Fonction NAND avec 8 entrées*)
de données (TY),
125(*Fonction NOR avec 8 entrées *)
fonctions (FK) et blocs
blocs fonctionnels (FB)util.
)8
DECLARATION
avant leur utilisation
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON
%E0.1.1 (* Introducteur
´
*) et blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) FB et fb) avant leur
TEM
%E3.2.4
(* Moniteur de température *) utilisation
(1'B9$5
ENouvelle création de
VAR_OUTPUT (* Déclaration des sorties
*) de types de données utilisateur
MOTEUR
6)&
/8(
)%'
Entrée du corps de
9(
/'
programme, bloc fonctionnel
(
,/
ou de fonction
(*Valid. du mot. du ventil.*) dans éditeur LD, IL
/'(,1 Mode m.ven. ou FBD, le cas échéant
2517(0 7HPSHUDWX!! avec éléments SFC.
$1'1$/$50 $ODUPDEVF!! 67MOTEUR (* Mot. d.ven.
Fig. 3-1:
Création d'un programme 'PR', bloc fonctionnel 'FB', d'une fonction
'FK' ou d'un type de donnée 'TY'
⇒ Veuillez s.v.p. vous informer sur les bus et, par conséquent sur les
tableaux IO assistés par le type concret de votre commande. Voir
dans ce contexte la description 'Documentation technique', Dossier 4.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-2 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
3.1 Principe de base de la configuration
Dans l'éditeur IO (Appel via l'option de menu 'Projet/Affectation IO' ou par
la combinaison des touches <Alt>+<I>) , on entre les différentes unités
connectées à la SPS (postes), leur adresse interlocuteur, leur type, nombre et le type des canaux d'entrées et de sorties (éléments enfichables)
ainsi que leur affectation par rapport à la boucle.
En fonction du type de commande, on peut connecter jusqu'à 4 systèmes bus
(boucles) externes au maximum. Par ailleurs, il est possible de configurer
des systèmes bus internes (boucle SERCOS et RECO-SPS)
La figure 3.2 Fig. 3-2: Fenêtre de sélection 'Editeur IO' représente la fenêtre
de sélection des boucles (Option de menu PROJET/ AFFECTATION IO).
Fig. 3-2: Fenêtre de sélection 'Editeur IO'
La fenêtre montre:
• à gauche, les boucles à disposition,
• au centre, les bus nécessaires pour le programme actuel et
• à droite, les bus réellement existants pour la commande.
La colonne centrale est configurable par l'utilisateur tandis que la colonne
de droite ne sert qu'à l'affichage.
Désignation
Version 17:
Désignation
Version 18:
Type de
commande
Interbus Master G3
IBM1 (Interbus-Master)
MT-CNC
Interbus Master G4
IBM2 (Interbus-Master)
ISP200-P/R
Profibus Master
DPM01(Profibus-Master)
ISP 200-P/R
Profibus Slave
DPS1(Profibus-Slave)
ISP200-P/R
SIO-3
SIO3 (Seriell Ports)
MT-CNC
LWL-Master
LWL-Master
MT-CNC
LWL-Slave
LWL-Slave
MT-CNC
Connexion CLC
CLC-P02 (Synax)
Synax-ISP200
Connexion CLC
CLC-P02 (GPS)
VM-ISP200
DeviceNet-Master
DNM01(DeviceNet-Master)
ISP200-P/R
PC104-I/O
PEA3 /4
ISP200-P/R
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-3
Tableau IO du Maître à fibres optiques (LWL-Master), MT-CNC
Architecture du maître à fibres optiques
Les données suivantes sont prédéfinies par l'architecture de la connexion
bus et des postes posés.
• Largeur de données des éléments enfichables:
8 bits, 16 bits, 32 bits en fonction du type
• Maximum d'éléments enfichables par poste:
32, 64 (0..31...63)
• Nombre max. de postes par boucles
16 (1..16)
Fig. 3-3: Connexion du maître à fibres optiques LWL avec des postes possibles
Poste avec affectation IO librement sélectionnable
librement sélectionnable
définie
Poste avec affectation IO définie
RECO
Unité IO posée
BTM-1
Terminal de commande
1
BTM-3/4
Terminal de commande
3/4
MTC-S
Accouplement Commande esclave SPS
PLS
Accouplement carte
d'insertion PC
RECO2
Unité IO posée
La dotation en entrée et sorties est à définir par l'utilisateur
L'ordre des entrées et sorties est défini par le constructeur. L'utilisateur ne
peut pas effacer des octets I/O nécessaires.
Edition du tableau IO du Maître à fibres optiques
L'introduction de l'affectation des entrées et sorties s'effectue sous forme
de tableaux (voir Fig. 3-3: Connexion du maître à fibres optiques LWL
avec des postes possibles).
Pour chaque poste (possible) sont prévues deux lignes de tableau:
• La ligne supérieure correspond à l'affectation programmée,
• la ligne inférieure à l'affectation réelle existante dans la SPS.
(en mode Offline, la ligne inférieure du tableau est remplie avec un '?'.)
La première colonne contient l'adresse matérielle du poste (définissable
par le poste)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-4 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Dans la seconde colonne, il faut entrer l'adresse logique librement sélectionnable entre 1…999 au-dessus de 'SPS'.
A l'inverse de l'adresse matérielle qui peut apparaître une fois dans chaque tableau IO, l'adresse logique ne peut être donnée qu'une seule fois
dans tout le programme.
Les positions non définies ou non-utilisées sont affichées avec '.' (Boucle à fibres optiques, affectation des éléments enfichables) ou ‘....’(Type).
Les entrées sont affichées avec 'I" et les sorties avec 'Q' ou avec 'I'/'O', en
fonction des options/'Généralités'.
Pour le RECO représenté sur la figure, on a ainsi les adresses suivantes:
•
•
Adresse matérielle:
Adresse logique:
•
•
Adresse logique:
Adresse logique:
•
Adresse logique:
2 (Préréglage avec tourne-vis....)
4, Canal 0, entrées: %IB4.0, %I4.0.0 ... %I4.0.7
........
4, Canal 3, entrées: %IB4.3, %I4.3.0 ... %I4.3.7
4, Canal 4, entrées: %QB4.4, %Q4.4.0 ... %Q4,40,7
........
7, Canal 4, entrées: %QB4.4, %Q4,7.0 ... %Q4,70,7
Le canal 7 n'est pas utilisé dans le programme.
Les postes 5, 6 et 7 font encore défaut au moment de la représentation
sur la figure. (Ligne ‘SPS’ encore vide.)
En cours d'introduction, la ligne de pied de page montre les possibilités
actuelles en fonction de la position du curseur.
Avec la combinaison de touches <Ctrl>+<F1>, on peut appeler une aide
en ligne sur la position respective.
En activant la touche de fonction <F6>, il est possible d'éditer un commentaire pour chaque poste et de l'afficher avec la combinaison de touches <Ctrl>+<F6>.
En fonctionnement couplé, il est alternativement à l'introduction manuelle
possible de lire l'affectation IO à partir de la commande. (voir Chapitre
‘Menu local de l'éditeur IO’, Page 3-34)
Le contrôle syntaxe automatique empêche que des entrées et sorties
déjà utilisées soient réécrites.
Avant chaque chargement du programme dans la commande, un contrôle est effectué afin de voir si les entrées et sorties nécessaires dans le
programme sont vraiment présentes ou si elles sont au moins commutées en attente.
Des postes ou encore des canaux momentanément non disponibles peuvent être commutés en attente:
⇒ Curseur sur poste (numéro logique ou type IO - <Insert>
⇒ Curseur sur canal (I ou Q ou respectivement I ou O) - <Insert>
Dans ce cas, le remplacement de la connexion réelle est effectué par une
zone drapeau.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-5
Représentation ASCII- du Maître à fibres optiques
A partir de la version 17, il est possible d'écrire des POU complètes en fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant
Fig. 3-3: Connexion du maître à fibres optiques LWL avec des postes
possibles on a alors la sortie suivante:
Poste avec affectation IO librement sélectionnable
Poste avec affectation IO définie
RECO
Unité IO posée
BTM-1
Bedienterminal 1
BTM-3/4
Terminal de commande
3/4
MTC-S
Ankopplung SPS SlaveSteuerung
PLS
Accouplement carte
d'insertion PC
RECO2
Unité IO posée
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 2: 16#7000 ’LWL-Master’
Identification du LWL-Master, ici sur boucle 2
Master
Identification Maître
1 AT 1: 16#0007 ’BTM-3/4’
MODULE (*Terminal de commande 3/4*)
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
AT 4..5: 16#0002 ’QB’
AT 6.0,7: 16#0001 ’IB’
AT 8..9: 16#0002 ’QB’
AT 10.0,11: 16#0001 ’IB’
AT 12..13: 16#0002 ’QB’
AT 14.0,15: 16#0001 ’IB’
AT 16..17: 16#0002 ’QB’
AT 18.0,19: 16#0001 ’IB’
AT 20: 16#0002 ’QB’
AT 21.0,23: 16#0001 ’IB’
AT 27..29: 16#0001 ’IB’
AT 30..31: 16#0002 ’QB’
END_MODULE
BTM 3/4
<F6> - Commentaire au début de la liste de modules
4 AT 2: 16#0001 ’RECO’
MODULE (*Exemple RECO*)
AT 0..3: 16#0001 ’IB’
AT 4..6: 16#0002 ’QB’
END_MODULE
RECO
<F6> - Commentaire au début de la liste de modules
3 AT 3: 16#0002 ’RECO-2’
MODULE (*Unité posée I/O*)
AT 10..11: 16#0001 'IB'
AT 14..15: 16#0002 'QB'
AT 16.0,19: 16#0001 'IB'
AT 20..23: 16#0002 'QB'
END_MODULE
RECO
<F6> - Commentaire au début de la liste de modules
5 AT 4: 16#0003 ’BTM-1’
MODULE (*commentaire*)
AT 0..11: 16#0002 ’QB’
AT 16.0,28: 16#0001 ’IB’
AT 30..31: 16#0001 ’IB’
END_MODULE
BTM 1
<F6> - Commentaire au début de la liste de modules
6 AT 5: 16#0004 ’MTC-S’
MODULE (*commentaire*)
AT 0.0,15: 16#0002 ’QB’
AT 16.0,31: 16#0001 ’IB’
END_MODULE
MTC-S
<F6> - Commentaire au début de la liste de modules
7 AT 6: 16#0005 ’PLS’
MODULE (*commentaire*)
AT 0.00,3: 16#0001 ’IB’
AT 4..7: 16#0002 ’QB’
PLS
<F6> - Commentaire au début de la liste de modules
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-6 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
END_MODULE
END_MASTER
END_LOOP
END_IO
Fin du Maître
Fin de la boucle
Fin de la section Editeur IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-7
Tableau IO de l'esclave à fibres optiques (LWL-Slave), MT-CNC
Architecture de l'esclave à fibres optiques
La connexion de l'esclave à fibres optiques signifie l'occupation d'une boucle complète pour la commande. Dans le tableau IO, on ne peut prédéfinir
qu'un seul poste MTC-M pour l'accouplement Maître / esclave. L'affectation
IO est définie de façon fixe pour ce poste, les connexions superflues peuvent être effacées.
Fig. 3-4: Esclave à fibres optiques avec poste MTC-M
Edition du tableau IO de l'esclave à fibres optiques
L'édition s'effectue comme avec le Maître à fibres optiques (voir Chapitre 0,
Page 3-2).
Représentation ASCII l'esclave à fibres optiques
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-4: Esclave à fibres optiques avec poste MTC-M on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 2: 16#7001 ’LWL-Slave’
Slave
Identification esclave
200 AT 1: 16#0006 ’MTC-M’
MODULE (*commentaire*)
AT 0..15: 16#0001 ’IB’
AT 16..31: 16#0002 ’QB’
END_MODULE
END_SLAVE
END_LOOP
END_IO
Identification du LWL-Slave, ici sur boucle 2
MTC-M
<F6> - Commentaire au début de la liste de modules
Fin esclave
Fin de la boucle
Début de la section Editeur IO
Tableau IO IBM1 (IBS-Master G3), MT-CNC
Architecture de l’IBM1
En raison de la topologie INTERBUS-S, les paramètres suivants sont prédéfinis:
• Nombre max. de modules INTERBUS-S
• Nombre max. de postes bus à distance:
• Nombre max. de postes bus locaux:
256
256
suivant capacité de
charge électrique du
poste bus à distance.
Cette topologie est vérifiée lorsqu'on quitte l'éditeur et, le cas échéant, un
message d'erreur correspondant est émis.
Les entrées et sorties sont divisées en canaux de respectivement 8 bits.
EXCEPTION:
Module binaire avec une largeur de données de 4 bits, dans la mesure où ils
sont supportés par le micrologiciel ( les 4 bits inférieurs doivent être déclarés,
les 4 bits supérieurs restent libres, les accès octets sont verrouillés!).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-8 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Edition du tableau IO IBM1 (IBS-Master G3)
L'introduction de l'affectation des entrées et sorties s'effectue sous forme
de tableau conformément à la fig. suivante.
Fig. 3-5: IBM1, Interbus Master G3
Pour chaque poste deux lignes de tableau sont prévues:
• La ligne supérieure correspond à l'affectation programmée,
• la ligne inférieure à l'affection réelle existante dans la SPS.
(en mode Offline, la ligne inférieure du tableau est remplie avec un '?'.)
La succession des postes dans l'ordre et sans vide correspond à la disposition des appareils sur la boucle Interbus-S.
La première colonne contient l'adresse matérielle du poste.
Les positions non définies ou non-utilisées sont affichées avec '.'
fectation des éléments enfichables ) ou ‘....’(Type).
(af-
Les entrées sont affichées avec 'I" et les sorties avec 'Q' ou avec 'I'/'O', en
fonction des options/'Paramètres généraux'.
Le tableau doit débuter avec un poste de bus à distance
(Caractérisation '*').
L'introduction du poste Interbus-S s'effectue via les instructions de pied
de page. Avant sélection d'un module Interbus-S, il faut avoir attribué au
poste son adresse logique de poste.
Le module de bus à distance représenté dans la figure IBS_ST_24_BK-T
ne comporte aucune connexion I/O propre.
On a alors pour le (module bus local) IB_ST_24_DO_32/2 représenté sur
la figure, les adresses suivantes:
Sorties:
Sorties:
%QB102.0,
...
%QB102.3,
%Q102.0.0 ... %Q102,00,7
...
...
%Q102.3.0 ... %Q102,30,7
L'adresse logique reste constante indépendamment d'un décalage de
position dans la boucle (Modification de l'adresse matérielle).
En cours d'introduction, la ligne de pied de page montre les possibilités
actuelles en fonction de la position du curseur.
En cas de commande couplée, le système relit quels sont les postes qui
sont réellement présents.
Si ces postes ne présentent que des entrées ou sorties, le code d'identification lu peut être interprété sans équivoque. Les 'Q' ou 'I' correspon-
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-9
dants sont alors enregistrés. (Voir Poste 2, code d'identification $02BD, 4
octets Sorties.)
Si les postes sont pourvus d'un port mixte I/O, l'affectation maximale possible est affichée avec 'X'.
Exemple:
Poste 5 (voir Fig. 3-5: IBM1, Interbus Master G3) Code
Ident $01BF, ‘XXXX’
A ce code d'identification peuvent être affectés des modules avec ‘QQ.I’,
‘QQI.’, ‘QQII’, ‘Q.II’, ‘QII.’
La ligne de sélection INTERBUS (voir Fig. 3-6: IBM1, IBS-Editor G3, Travail
avec liste de sélection ) peut être limitée par les commutateurs suivants:
• en concordance avec le code d'identification SPS, judicieux en cas de
commande couplée
• en concordance avec le code d'identification du programme
judicieux, si programme et SPS sont différents
Fig. 3-6: IBM1, IBS-Editor G3, Travail avec liste de sélection
Le champ de sélection est limité au poste correspondant au numéro
d'identification.
En tant que dernier poste, on peut inscrire le/les registres de liaisons des
données de process. Ces registres sont implémentés pour permettre des
réactions plus rapides de l'Interbus-S.
Avec la combinaison de touches <Ctrl>+<F1>, on peut appeler une aide
en ligne sur la position respective.
En activant la touche de fonction <F6>, il est possible d'éditer un commentaire pour chaque poste et de l'afficher avec la combinaison de touches <Ctrl>+<F6>.
En fonctionnement couplé, il est alternativement à l'introduction manuelle
possible de lire l'affectation IO à partir de la commande. (voir Chapitre
‘Menu local de l'éditeur IO’, Page 3-34)
Avant le chargement du programme dans la SPS, les données sont comparées avec les données matérielles réellement présentes de la commande; une concordance intégrale des postes entrés avec les postes
Interbus-S réels étant exigée.
Le contrôle automatique empêche l'effacement de postes dont les adresses
d'entrée ou de sortie sont déjà utilisées dans le programme utilisateur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-10 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Représentation ASCII de l'IBM1
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-5: IBM1, Interbus Master G3 on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 1: 16#1000 ’IBM1 (Interbus-S-Master)’
Identification IBM, IBS-Master (G3),
ici sur boucle 1
Master
Identification Maître
101 AT 1: 16#0008 ’IBS_ST_24_BK-T’
(*Borne de bus ST sans IO*)
MODULE (*<F6> Commentaire*)
END_MODULE
IBS_ST_24_BK-T
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
102 AT 2: 16#02BD ’IB_ST_24_DO_32/2’
(*Module de sortie ST avec 32 output*)
MODULE (*<F6> commentaire*)
AT 0..3: 16#0002 ’QB’
END_MODULE
IBS_ST_24_DO-32/2
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
103 AT 3: 16#02BD ’IB_ST_24_DO_32/2’
(*Module d'entrées ST avec 32 input*)
MODULE (*<F6> commentaire*)
AT 0..3: 16#0001 'IB'
END_MODULE
IBS_ST_24_DI-32/2
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
104 AT 4: 16#0008 ’IBS_ST_24_BK-T’
(*Borne de bus ST sans IO*)
MODULE (*<F6> Commentaire*)
END_MODULE
......
105 AT 5: 16#01BF ’IBS STME 24 DIO 8/8’
(*QqIi, ancien module d’octets*)
MODULE
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
END_MODULE
......
...
......
END_MASTER
Fin Maître
END_LOOP
Fin de la boucle
END_IO
Début de la section Editeur IO
Création de nouveaux postes dans la liste de sélection
Interbus-SSi l'utilisateur désire inscrire de nouveaux postes dans la liste de sélection
Interbus-S, il lui faut emprunter les informations suivantes dans la documentation du constructeur du module.
• le numéro d'identification (du module)
on a besoin du numéro sous forme hexadécimale.
• l'équipement avec canaux d'entrées et de sorties,
particulièrement important pour les modules avec ports mixtes vu
qu'ils ne peuvent pas donner d'informations sur l'équipement exact,
même online.
Exemple:
Numéro ident module
191 // $BF
Sorties:
8
Octets de vide:
1
Entrées:
16
Le nouveau nom (au maximum 20 caractères) devrait également être
emprunté à la documentation de l'appareil; il peut cependant être modifié
à discrétion (comme dans l'exemple),
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-11
Un commentaire sur le module (maximum 72 caractères) peut être convenu.
La Fig. 3-7: Extension de la liste de sélection Interbus-S suivante offre
une proposition:
Fig. 3-7: Extension de la liste de sélection Interbus-S
Le nouveau module correspond ensuite au code d’identification 01BF, XXXX
en tant qu'équipement.
• Décalage = 0
Ligne sorties binaires:
Le premier octet comprend les 8 sorties (aucun déport).
• Décalage = 1
Ligne entrées binaires:
après les sorties, un octet reste vide suivi ensuite de 16 entrées.
• Des recoupements entre entrées et sorties dus à des valeurs de décalage incorrectes sont inhibés.
En Format ASCII, ce module se présent comme suit:
Exemple:
Adresse matérielle 11, adresse logique 125, commentaire utilisateur
<F6>: Unité de retournement A13
125 AT 11: 16#01BF ’Q.II Module de rempl.’ (*seulement
pour utilisation
interne dans
entreprise*)
MODULE (*Unité de retournement A13*)
AT 0: 16#0002 'QB'
AT 2..3: 16#0001 'IB'
END_MODULE
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-12 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Tableau IO IBM2 (IBS-Master G4), ISP200-P/R
Architecture de l’IBM2 (IBS-Masters G4)
Le passage du logiciel IBS-Master G3 au logiciel IBS-Master G4 entraîne
toute une série de modifications essentielles:
• Le traitement des données de processus qui existait jusqu'à présent
n'est plus prévu, en cas de besoin il doit être remplacé par l'implémentation 2ms (Traitement/Extras/Implémentation 2 ms)
• Le bus à distance unidimensionnel est remplacé par un bus à distance
bidimensionnel. A côté des bornes de bus qui permettaient jusqu'à
présent de piquer horizontalement un bus local, se trouvent maintenant en supplément des bornes pour un prolongement du bus à distance et pour piquage d'un autre bus à distance.
Formes des bornes du IBSMaster G4
Borne de bus maître avec piquage pour bus à distance; prolongement du
bus maître
Borne de bus maître avec piquage pour bus local; prolongement du bus maître
Borne de bus maître avec piquage pour bus local; fin du bus maître
Poste-bus maître, prolongement bus maître/terminal
Poste-bus local, prolongement bus local/terminal
• Il faut s'attendre à toute une série de formes de transition, lorsque de nouveaux modules matériels sous le logiciel G3 ou un matériel ancien doivent
fonctionner sous le logiciel G4 (par exemple et entre autres module d'octets).
• Pour le système de programmation, on a prévu un point d'introduction
supplémentaire pour fichiers CMD, fichier du configurateur Phoenix
externe (importation seulement).
Edition du tableau IO de l’IBM2
L'introduction de l'affectation des entrées et sorties s'effectue sous forme de
tableau conformément à la fig. suivante.
Fig. 3-8: IBM2, Entrée Offline
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-13
Pour chaque poste (possible) deux lignes de tableau sont prévues:
• La ligne supérieure correspond à l'affectation programmée,
• la ligne inférieure à l'affection réelle existante dans la SPS.
(en mode offline, on a supprimé la ligne inférieure pour plus de clarté).
La succession dans l'ordre sans vide des postes correspond à la disposition
des appareils sur la boucle Interbus-S.
Les positions non définies ou non-utilisées sont affichées avec '.'
fectation des éléments enfichables ) ou ‘....’(Type).
(af-
1ère Colonne
comprend le numéro de ligne du poste.
Elle n'a pas de signification importante.
2ème colonne
elle contient l'adresse logique des données relues SPS pour online.
3ème colonne
elle donne un aperçu des niveaux du bus et de la position des postes.
4ème colonne
Le numéro IBS contient le numéro du segment bus et la position du poste
dans le segment.
Pour les postes de bus à distance la position = 0;
Les postes de bus locaux ont le même numéro de segment que la borne
de bus à distance par laquelle ils sont connectés au bus à distance.
5. 5ème colonne
contient le code d'identification,
6ème colonne
elle contient le code d'identification utilisateur du poste IBS.
Les entrées sont affichées avec 'I" et les sorties avec 'Q' ou avec 'I'/'O', en
fonction des options/'Paramètres généraux' ( 8 bits respectivement pour
'I' et 'Q').
Le tableau doit débuter avec un poste de bus à distance.
L'introduction du poste Interbus-S s'effectue via les linstructions de pied
de page. Avant sélection d'un module IBS, il faut avoir attribué au poste
son adresse logique de poste.
Le module de bus à distance représenté dans la figure IBS_ST_24_BK-T
ne comporte aucune connexion I/O propre.
On a alors pour le (module bus local) IB_ST_24_DO_32/2 représenté sur
la figure, les adresses suivantes:
Sorties:
Sorties:
%QB102.0, %Q102.0.0 ... %Q102,00,7
...
...
...
%QB102.3, %Q102.3.0 ... %Q102,30,7
L'adresse logique reste constante indépendamment d'un décalage de
position dans la boucle.
En cours d'introduction, la ligne de pied de page montre les possibilités
actuelles en fonction de la position du curseur.
En cas de commande couplée, le système relit quels sont les postes qui
sont réellement présents.
Si ces postes ne présentent que des entrées ou sorties, le code d'identification lu peut être interprété sans équivoque. Les 'Q' ou 'I' correspondants sont alors enregistrés. (Voir Poste 2, code d'identification $02BD, 4
octets Sorties.)
Si les postes sont pourvus d'un port mixte I/O, l'affectation maximale possible en mode online est affichée avec 'X'.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-14 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Exemple:
Poste 5:
Code d'ident $01BF, ‘XXXX’
Le code d'identification correspond aux modules: ‘QQ.I’, ‘QQI.’, ‘QQII’,
‘Q.II’, ‘QII.’.
La ligne de sélection INTERBUS (voir Fig. 3-8: IBM2, Entrée Offline) peut
être limitée par les commutateurs suivants:
• en concordance ave le code d'identification SPS
judicieux en cas de commande couplée
• en concordance avec le code d'identification du programme
judicieux, si programme et SPS sont différents
• Des recoupements entre entrées et sorties dus à des valeurs de décalage incorrectes sont inhibés.
Le champ de sélection est limité au poste correspondant au numéro
d'identification.
Fig. 3-9: Décisions de l'utilisateur pour la poursuite
Grâce à la possibilité G4 du bus à distance qui a été branché, la question
de savoir si le poste suivant (7/108 sur la figure) doit être inséré au
même niveau sous le poste (6/106), module 4.0 ou sous le poste (6/107),
module 3 ou bien si un nouveau bus à distance doit être ouvert au niveau
supérieur suivant apparaît alors au droit des postes qui supportent cette
option.
⇒ convenir module 7/108, curseur dans le champ 'niveau'', '0', sélectionner niveau suite, par exemple suite vers le bas
A l'aide de l'instruction dans la ligne de pied de page <0> Edit, le numéro
ème
colonne peut être modifié.
IBS attribué automatiquement dans la 4
Seule la position respectivement variable (avec bornes de bus à distance,
le numéro de segment du bus, avec les postes locaux le numéro de position) peut être modifiée.
Une modification du numéro du segment de bus de la borne de bus à
distance entraîne automatiquement une adaptation de tous les postes de
bus local qui lui correspondent. Un contrôle est effectué afin de vérifier
qu'il n'y a pas de numéro IBS utilisé plusieurs fois.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-15
Remarques pour le traitement:
• Le décalage des différents postes au moyen des Instructions bloc est
possible. Les numéros IBS sont alors ajustés automatiquement.
• Avec la combinaison de touches <Ctrl>+<Y>, il est possible d'effacer
certains postes: soit directement en ce qui concerne les postes de bus
local, soit a posteriori en ce qui concerne les bornes de bus à distance,
c'est-à-dire seulement lorsqu'il n'y a plus de poste de bus local attaché à
la borne de bus à distance.
• Avec la combinaison de touches <Ctrl>+<F1>, on peut appeler une aide
en ligne sur la position respective. En activant la touche de fonction
<F6>, il est possible d'éditer un commentaire pour chaque poste et de
l'afficher avec la combinaison de touches <Ctrl>+<F6>. En fonctionnement couplé, il est, alternativement à l'introduction manuelle, possible
de lire l'affectation IO à partir de la commande. (voir Chapitre ‘Menu
local de l'éditeur IO’, Page 3-34)
Avant le chargement du programme dans la SPS, les données sont comparées avec les données matérielles réellement présentes de la commande; une concordance intégrale des postes entrés avec les postes
Interbus-S réels étant exigée.
Le contrôle automatique empêche l'effacement de postes dont les adresses d'entrée ou de sortie sont déjà utilisées dans le programme utilisateur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-16 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Représentation ASCII de l'IBM2
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-8: IBM2, Entrée Offline on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
LOOP AT 1: 16#9000 ’IBM2 Interbus-S-Master’
Début de la section Editeur IO
Identification IBM2 (IBS-Master G4),
ici sur boucle 1
Identification Maître
IBS_ST_24_BK-T
avec commentaire sur le module et <F6> Commentaire au début de la liste de modules
Master
101 AT 1,0: 16#0008 ’IBS_ST_24_BK-T’
(*Borne de bus ST sans IO*)
MODULE (*<F6> Commentaire*)
END_MODULE
102 AT 1,1: 16#02BD ’IB_ST_24_DO_32/2’
(*Module de sortie ST avec 32 output*)
MODULE (*<F6> commentaire*)
AT 0..3: 16#0002 ’QB’
END_MODULE
103 AT 1,2: 16#02BD ’IB_ST_24_DO_32/2’
(*Module d'entrées ST avec 32 input*)
MODULE (*<F6> commentaire*)
AT 0..3: 16#0001 'IB'
END_MODULE
104 AT 2,0: 16#0008 ’IBS_ST_24_BK-T’
(*Borne de bus ST sans IO*)
MODULE (*<F6> Commentaire*)
END_MODULE
105 AT 2,1: 16#01BF ’IBS STME 24 DIO 8/8’
(*QqIi, ancien module d’octets*)
MODULE
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
END_MODULE
106 AT 4,0: 16#010B ’BTM1*.1-BK_I/O’
(*Indramat BTM, borne bus avec 16E/16A*)
MODULE
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
END_MODULE
CONNECTED_WITH
107 AT 3.0: 16#010B ’BTM1*.1-BK_I/O’
(*Indramat BTM, borne bus avec 16E/16A*)
MODULE
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
END_MODULE
END_CONNECTED
108 AT 5,0: 16#010B ’BTM1*.1-BK_I/O’
(*Indramat BTM, borne bus avec 16E/16A*)
MODULE
AT 0..1: 16#0002 ’QB’
AT 2..3: 16#0001 ’IB’
END_MODULE
IO_BUS_DATA
1: 16#1303 ’Alarm_Stop_Request’;
16: 16#0750 ’Set_Value_Request’;
3:16#030E’Control_Parameterization_Request’;
4: 16#0306 ’Initiate_Load_Conf.....’,
........
12: 16#014F ’Change_Exclusive_Rights_Request’;
END_DATA
END_MASTER
END_LOOP
END_IO
IBS_ST_24_DO-32/2
avec commentaire sur le module et <F6> Commentaire au début de la liste de modules
IBS_ST_24_DI-32/2
avec commentaire sur le module et <F6> Commentaire au début de la liste de modules
......
......
Branchement du bus à distance
Service démarrage IO
Fin Maître
Fin de la boucle
Début de la section Editeur IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-17
Création de nouveaux postes dans la liste de sélection
Interbus-SSi l'utilisateur désire enregister de nouveaux postes dans la liste de sélection Interbus-S, il lui faut emprunter les informations suivantes dans la
documentation du constructeur du module.
• le numéro d'identification (du module)
on a besoin du numéro sous forme hexadécimale.
• l'équipement avec canaux d'entrées et de sorties,
particulièrement important pour les modules avec ports mixtes vu
qu'ils ne peuvent pas donner d'informations sur l'équipement exact,
même online.
Exemple:
Numéro ident module
Sorties:
Octets de vide:
Entrées:
191 // $BF
8
1
16
Le nouveau nom (au maximum 20 caractères) devrait également être emprunté à la documentation de l'appareil; il peut cependant être modifié à
discrétion (comme dans l'exemple),
Un commentaire sur le module (maximum 72 caractères) peut être convenu.
Fig. 3-10: Extension de la liste de sélection Interbus-S
Le nouveau module correspond ensuite au code d’identification 01BF, XXXX
en tant qu'équipement.
• Décalage = 0
dans la ligne sorties binaires signifie que le premier OCTET contient
les 8 sorties (aucun décalage).
• Décalage = 1
dans la ligne entrées binaires signifie qu'il existe après les sorties un
octet vide qui est ensuite suivi de 16 entrées.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-18 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
En Format ASCII, ce module se présente comme suit:
Exemple:
Adresse matérielle:
Adresse logique
125,
<F6> Commentaire utilisateur: Unité de retournement A13
125 AT 11: 16#01BF ’Q.II Module de rempl.’ (*(*seulement
pour utilisation
interne dans
entreprise*)
MODULE (*Unité de retournement A13*)
AT 0: 16#0002 'QB'
AT 2..3: 16#0001 'IB'
END_MODULE
Modification du comportement au démarrage
Avec la Version logiciel G4, l'utilisateur a la possibilité d'influencer la mise
en vitesse de la boucle.
A partir d'un démarrage standard, il est possible d'ajouter ou de supprimer certaines fonctions bien définies.
Actuellement, les fonctions de démarrage suivantes sont supportées:
Fonctions de démarrage
Explication
Alarme-Stop
Remise à zéro du bus
Amorcer paramétrage
Amorçage de la phase de paramétrage (Condition pour "Envoyer structure du bus' et 'Envoyer affectation données de
process')
Envoyer structure du bus
Chargement de l'affectation configurée dans la connexion
Envoyer affectation données de process
Chargement des adresses logiques des postes dans la connexion
Régler paramètres d'exploitation
Régler les paramètres prédéfinies de l'IBS comme par exemple Adresse du registre de diagnostics
Terminer paramétrage
Activer cadre de configuration
Démarrer transfert de données
Activation du transfert cyclique
des données sur le bus
Valider droits exclusifs
Appeler droits exclusifs
Lire cadre de configuration
Verrouiller pré-traitement des données
de process
Valider pré-traitement des données de
process
Une description détaillée des possibilités sera fournie dans le manuel de
Société Phoenix Contact, Connexion Interbus G4 qui se trouve actuellement en cours d'élaboration.
Si des fonctions de connexion spéciales sont nécessaires, il est possible
d'importer un fichier de configuration (Fichier CMD) du configurateur externe de la Société Phoenix.
Après modification, une réimportation de ce fichier dans le configurateur
n'est toutefois pas possible.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-19
Tableau IO DPM01 (Profibus DP Master), ISP200-P/R
Architecture du Maître DP (DP-Master)
La connexion DP-MASTER occupe au niveau de la commande une boucle
complète et se présente à l'utilisateur sous la forme d'un carreau de mémoire configurable. Seul un Bus-Maître est prévu, si bien qu'un adressage
physique – à la différence de l'esclave DP – est superflu. Pour permettre
l'accès aux I/O du SLAVE raccordé au bus, il faut que leurs adresses soient
connues dans la représentation figurée I/O. Aucun suivi de contrôle!
Support de différents
mécanismes d'accès au DPR
Par le passé (Interbus-S), l'échange de données entre la SPS et la connexion bus de terrain était effectué de façon entièrement libre et asynchrone. En conséquence, une cohérence des données ne pouvait en
conséquence être garantie que pour un mot (16 bits). Cette méthode de
transfert de données entre deux systèmes est certainement la plus rapide. Mais la demande en modules permettant une cohérence des données au-delà du mot se faisant de plus en plus sentir, il faut également
qu'un accès cohérent sur une zone de plus grande taille soit possible.
Comme la SPS dispose en règle générale d'un temps de cycle supérieure
à celui d'un bus de terrain, la cohérence doit être pilotée par la SPS.
C'est la raison qui explique que l'on offre ici une variante tamponnée
commandée par la SPS qui a l'avantage de garantir la cohérence sur tout
le bus de terrain. Cette variante qui est pilotée via des bits précis de protocole de transfert est toutefois plus lente et ne devrait donc être utilisée
qu'en tant qu'option. Actuellement, les variantes d'accès sont définies
dans l'outil de configuration SyCon. Le micrologiciel SPS reconnaît la
variante et effectue l'accès en conséquence. Pour, à l'avenir, pouvoir en
outre influencer le mécanisme d'accès dans l'éditeur IO, un commutateur
d'accès supplémentaire a été prévu à côté de l'affectation des numéros
logiques de postes:
„avec cohérence /sans cohérence“ .
Fig. 3-11: DPM01 Profibus DP-MASTER avec carreau de mémoire
Edition du tableau IO du Maître DP (DP-MASTER)
L'édition est réduite à l'entrée des numéros logiques pour l'accès à la
figure Entrées et à la figure Sorties et pour accès direct DPR. La cohérence des données peut être activée.
Emplacement
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
N° log.
Longueur:
de
à
Fig. d'entrées
(VAR_INPUT)
12
512
%IB12.0
%IB12.511
Fig. de sorties
(VAR_OUTPUT)
13
512
%QB13.0
%QB13.511
DPR (VAR)
14
8192
%PB14.0
%PB14.8191
3-20 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Représentation ASCII du Maître DP (DP-MASTER)
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-11: DPM01 Profibus DP-MASTER avec carreau de mémoire on a alors
la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 4: 16#8001 ’DPM01’ (Profibus-DP-Master)
MASTER
Identification DPM01, ici sur boucle 4
Identification MAITRE
12 AT 1: 16#0001 'Mémoire fig. entrées'
MODULE (*Figure E*)
AT 0..511: 16#0001 'IB'
END_MODULE
Mémoire fig. entrées
<F6> Commentaire: (*Figure E*)
13 AT 2: 16#0001 'Mémoire fig. sorties'
MODULE (*Figure S*)
AT 0..511: 16#0002 'QB'
END_MODULE
Mémoire fig. sorties
<F6> Commentaire: (*Figure S*)
14 AT 3: 16#0003 'Mémoire DPR'
MODULE (*APR*)
AT 0..8191: 16#0003 'PB'
END_MODULE
Mémoire DPR
<F6> Commentaire: (*DPR*)
IO_BUS_DATA
1: 0 ;
END_DATA
END_MASTER
END_LOOP
END_IO
1: 0 → aucune cohérence de données
Fin Maître
Fin de la boucle
Début de la section Editeur IO
Tableau IO DPS1 (Profibus DP Slave), ISP200-P/R
Architecture de l’esclave DP (DP-Slave)
La connexion DP-Slave occupe au niveau de la commande une boucle
complète et se présente à l'utilisateur sous la forme d'un carreau de mémoire configurable.
Support de différents
mécanismes d'accès au DPR
Par le passé (Interbus-S), l'échange de données entre la SPS et la connexion bus de terrain était effectué de façon entièrement libre et asynchrone. La cohérence des données ne pouvait en conséquence être garantie que pour un mot (16 bits). Cette méthode de transfert de données
entre deux systèmes est certainement la plus rapide. Mais la demande en
modules permettant une cohérence des données au-delà du mot se faisant de plus en plus sentir, il faut également qu'un accès cohérent sur
une zone de plus grande taille soit possible. Comme la SPS dispose en
règle générale d'un temps de cycle supérieure à celui d'un bus de terrain,
la cohérence doit être pilotée par la SPS.
C'est la raison qui explique que l'on offre ici une variante tamponnée commandée par la SPS qui a l'avantage de garantir la cohérence sur tout le bus
de terrain. Cette variante qui est pilotée via des bits précis de protocole de
transfert est toutefois plus lente et ne devrait donc être utilisée qu'en tant
qu'option. Actuellement, les variantes d'accès sont définies dans l'outil de
configuration SyCon. Le micrologiciel SPS reconnaît la variante et effectue
l'accès en conséquence. Pour, à l'avenir, pouvoir en outre influencer le mécanisme d'accès dans l'éditeur IO, un commutateur d'accès supplémentaire a
été prévu à côté de l'affectation des numéros logiques de postes:
„avec cohérence /sans cohérence“ .
L'introduction de l'adresse physique (1...126) est prévue.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-21
Fig. 3-12: DPM01 Profibus DP-Slave avec carreau de mémoire
Edition du tableau IO de l’esclave DP (DP-Slave)
L'édition est réduite à l'entrée des numéros logiques pour l'accès à la
figure Entrées et à la figure Sorties et pour accès direct DPR. L'option
cohérence de données peut être sélectionnée et l'adresse esclave physique définie.
Emplacement
N°
log.
Longueur:
de
à
Fig. d'entrées
(VAR_INPUT)
111
512
%IB111.0
%IB111.511
Fig. de sorties
(VAR_OUTPUT)
112
512
%QB112.0
%QB112.511
DPR (VAR)
113
2048
%PB113.0
%PB113.2047
Représentation ASCII de l'esclave DP (DP-Slave)
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-12: DPM01 Profibus DP-Slave avec carreau de mémoire on a alors la
sortie suivante:
Représentation ASCII
IO
Remarques sur la représentation
Début de la section Editeur IO
LOOP AT 3: 16#8002 ’DPS1’ (Profibus-DP-Master)
Slave
Identification DPS1, ici sur boucle 3
Identification esclave
111 AT 1: 16#0001 'Mémoire fig. entrées'
MODULE (*Figure E*)
AT 0..511: 16#0001 'IB'
END_MODULE
Mémoire fig. entrées
<F6> Commentaire: (*Figure E*)
112 AT 2: 16#0001 'Mémoire fig. sorties'
MODULE (*Figure S*)
AT 0..511: 16#0002 'QB'
END_MODULE
Mémoire fig. sorties
<F6> Commentaire: (*Figure S*)
113 AT 3: 16#0003 'Mémoire DPR'
MODULE (*DPR*)
AT 0.0,2047: 16#0003 'PB'
END_MODULE
Mémoire DPR
<F6> Commentaire: (*DPR*)
IO_BUS_DATA
1: 0 ;
2: 3 ;
END_DATA
END_Slave
END_LOOP
END_IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
1: 0 → aucune cohérence de données
2: 3 → Numéro physique de poste: 3
Fin esclave
Fin de la boucle
Début de la section Editeur IO
3-22 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Tableau IO DNM01 (DeviceNet Master), ISP200-P/R
Architecture du DeviceNet-Master
La connexion DeviceNet-Master occupe au niveau de la commande une
boucle complète et se présente à l'utilisateur sous la forme d'un carreau de
mémoire configurable. Seul un Bus-Master est prévu, si bien qu'un adressage physique est superflu. Pour permettre l'accès aux I/O du SLAVE raccordé au bus, il faut que leurs adresses soient connues dans la représentation figurée I/O. Aucun suivi de contrôle!
Support de différents
mécanismes d'accès au DPR
Par le passé (Interbus-S), l'échange de données entre la SPS et la connexion bus de terrain était effectué de façon entièrement libre et asynchrone. La cohérence des données ne pouvait en conséquence être garantie que pour un mot (16 bits). Cette méthode de transfert de données
entre deux systèmes est certainement la plus rapide. Mais la demande en
modules permettant une cohérence des données au-delà du mot se faisant de plus en plus sentir, il faut également qu'un accès cohérent sur
une zone de plus grande taille soit possible. Comme la SPS dispose en
règle générale d'un temps de cycle supérieure à celui d'un bus de terrain,
la cohérence doit être pilotée par la SPS.
C'est la raison qui explique que l'on offre ici une variante tamponnée
commandée par la SPS qui a l'avantage de garantir la cohérence sur tout
le bus de terrain. Cette variante qui est pilotée via des bits précis de protocole de transfert est toutefois plus lente et ne devrait donc être utilisée
qu'en tant qu'option. Actuellement, les variantes d'accès sont définies
dans l'outil de configuration SyCon. Le micrologiciel SPS reconnaît la
variante et effectue l'accès en conséquence. Pour, à l'avenir, pouvoir en
outre influencer le mécanisme d'accès dans l'éditeur IO, un commutateur
d'accès supplémentaire a été prévu à côté de l'affectation des numéros
logiques de postes:
„avec cohérence /sans cohérence“ .
Fig. 3-13: DNM01 DeviceNet-Master mit carreau de mémoire
Edition du tableau IO du DeviceNet-MASTER
L'édition est réduite à l'entrée des numéros logiques pour l'accès à la
figure Entrées et à la figure Sorties et pour accès direct DPR. La cohérence des données peut être activée.
Emplacement
N°
log.
Longueur:
de
à
Fig. d'entrées
(VAR_INPUT)
20
512
%IB20.0
%IB20.511
Fig. de sorties
(VAR_OUTPUT)
21
512
%QB21.0
%QB21.511
DPR (VAR)
22
8192
%PB22.0
%PB22.8191
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-23
Représentation ASCII du DeviceNet-Master
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-11: DPM01 Profibus DP-MASTER avec carreau de mémoire on a alors
la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 4: 16#F000 ’DNM01’ (DeviceNet-Master)’
MASTER
Identification DNM01, ici sur boucle 4
Identification MAITRE
20 AT 1: 16#0001 'Mémoire fig.entrées'
MODULE (*Figure E*)
AT 0..511: 16#0001 'IB'
END_MODULE
Mémoire fig. entrées
<F6> Commentaire: (*Figure E*)
21 AT 2: 16#0001 'Mémoire fig. sorties'
MODULE (*Figure S*)
AT 0..511: 16#0002 'QB'
END_MODULE
Mémoire fig. sorties
<F6> Commentaire: (*Figure S*)
22 AT 3: 16#0003 'Mémoire DPR'
MODULE (*DPR*)
AT 0.00,8191: 16#0003 'PB'
END_MODULE
Mémoire DPR
<F6> Commentaire: (*DPR*)
IO_BUS_DATA
1: 0 ;
END_DATA
1: 0 → aucune cohérence de données
END_MASTER
Fin Maître
END_LOOP
Fin de la boucle
END_IO
Début de la section Editeur IO
Tableau IO des SIO-3 (Ports série), MT-CNC
Le groupe de ports SIO-3 est seulement présélectionné via la fenêtre de
configuration I/O. Une autre spécification n'est pas nécessaire.
Représentation ASCII des SIO-3
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation des ports
SIO-3, on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 2: 16#2000 ’SIO-3’
Identification SIO-3, ici sur boucle 2
END_LOOP
Fin de la boucle
END_IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Début de la section Editeur IO
3-24 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Tableau IO CLC-P02 (Synax/ GPS), Synax ISP200/ VM ISP200
Architecture du CLC-P02
La connexion CLC occupe au niveau de la commande une boucle complète
et se présente à l'utilisateur sous la forme d'un carreau de mémoire configurable.
Fig. 3-14: CLC-P02 avec carreau de mémoire
Edition du tableau IO du CLC-P02
L'édition est réduite à l'entrée des numéros logiques pour l'accès à la
figure Entrées et à la figure Sorties et pour accès direct DPR. L'option
cohérence de données peut être sélectionnée.
Emplacement
N°
log.
Longueur:
de
à
Fig. d'entrées
(VAR_INPUT)
5
512
%IB5.0
%IB5.511
Fig. de sorties
(VAR_OUTPUT)
6
512
%QB6.0
%QB6.511
DPR (VAR)
7
2048
%PB7.0
%PB7.8091
Représentation ASCII du CLC-P02
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-14: CLC-P02 avec carreau de mémoire on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 4: 16#A000 ’CLC-P02’
MASTER
Identification du CLC-P02, ici sur boucle 4
Identification MAITRE
5 AT 1: 16#0001 'Mémoire fig. entrées'
MODULE (*Figure E*)
AT 0..511: 16#0001 'IB'
END_MODULE
Mémoire fig. entrées
<F6> Commentaire: (*Figure E*)
6 AT 2: 16#0001 'Mémoire fig. sorties'
MODULE (*Figure S*)
AT 0..511: 16#0002 'QB'
END_MODULE
Mémoire fig. sorties
<F6> Commentaire: (*Figure S*)
7 AT 3: 16#0003 'Mémoire DPR'
MODULE (*DPR*)
AT 0.00,8191: 16#0003 'PB'
END_MODULE
Mémoire DPR
<F6> Commentaire: (*DPR*)
END_MASTER
END_LOOP
END_IO
Fin MAITRE
Fin de la boucle
Début de la section Editeur IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-25
Tableau IO PEA3/4, IPS200-P/R
Architecture du PEA3/4
La connexion PEA occupe au niveau de la commande une boucle complète et se présente à l'utilisateur sous la forme d'un carreau de mémoire
configurable.
Fig. 3-15: PEA3/4, connexion directe PC104-EA
Edition du tableau IO du PEA3/4
L'édition est réduite à l'entrée des numéros logiques pour l'accès à la
figure Entrées et à la figure Sorties. La taille de mémoire est respectivement limitée à trois octets.
Emplacement
N° log.
Longueur:
de
à
Fig. d'entrées
(VAR_INPUT)
123
3
%IB123.0
%IB123.2
Fig. de sorties
(VAR_OUTPUT)
234
3
%QB234.0
%QB234.2
Représentation ASCII du PEA3/4
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-15: PEA3/4, connexion directe PC104-EA on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP AT 4: 16#A000 ’PEA3/4’
MASTER
123 AT 1: 16#0001 'Mémoire fig. entrées'
MODULE (*Figure E*)
AT 0...2: 16#0001 'IB'
END_MODULE
234 AT 2: 16#0001 'Mémoire fig. sorties'
MODULE (*Figure S*)
AT 0.0,2: 16#0002 'QB'
END_MODULE
END_MASTER
END_LOOP
END_IO
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Identification PEA3/4, ici sur boucle 4
Identification MAITRE
Mémoire fig. entrées
<F6> Commentaire: (*Figure E*)
Mémoire fig. sorties
<F6> Commentaire: (*Figure S*)
Fin MAITRE
Fin de la boucle
Début de la section Editeur IO
3-26 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Tableau IO du bus RECO
Architecture du Bus RECO
Le tableau IO du Bus RECO permet de configurer les entrées et sorties
de ce bus.
En première place se trouve le module SPS. Ce module possède 4 entrées d'octet (état appelable). Aux autres places peuvent suivre des module I/O (E/S) numériques et analogiques.
Sélection des modules REC02
Carte de circuit imprimé
Affectation E/S
Désignation du module
Remarque
PAM 7
QQ (2 sorties d’octets)
RMA02.1-16-RE230-200
16 Relais 2A
PAM 8
QQ (2 sorties d’octets)
RMA02.1-16-DC024-200
16 Transistor 2A
PAM11
QQ (2 sorties d’octets)
RMA02.1-16-AC230-200
16 ELR-AC 2A
PAM 10
QQQQ (4 sorties d’octets)
RMA02.1-32-DC024-050
32 Transistor 0,5A
PEM 5
II (2 entrées d'octets)
RME02.1-16-DC024
16 DC 24V
PEM 7
II (2 entrées d'octets)
RME02.1-16-AC115
16 AC 115V
PEM 6
IIII (4 entrées d'octets)
RME02.1-32-DC024
32 DC 24V
SSM 3
2 * RS232
RMS02.1-02-RS232
Edition du tableau IO du Bus RECO
L'introduction de l'affectation des entrées et sorties s'effectue sous forme de
tableau conformément à la fig. suivante.
Fig. 3-16: Editeur IO pour Bus RECO
A chaque poste (possible) sont prévues deux lignes de tableau:
• La ligne supérieure correspond à l'affectation programmée,
• la ligne inférieure à l'affection réelle existante dans la SPS.
(en mode offline, on a supprimé la ligne inférieure pour plus de clarté).
La succession dans l'ordre et sans vide des postes correspond à la disposition des appareils dans le bus.
Les positions non définies ou non-utilisées sont affichées avec '.' (Affectation des éléments enfichables) ou bien avec ‘....’ (Type). (Affectation
des éléments enfichables) ou bien avec ‘....’ (Type). Des positions vides
sont possibles pour éléments enfichables.
1ère Colonne
comprend le numéro du logement du poste.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-27
2ème colonne
elle contient l'adresse logique.
3ème colonne
elle donne un aperçu des niveaux du bus et de la position des postes.
4ème colonne
contient le type de module. Lors de la sélection du type de module, la
fenêtre de sélection "Type de module: Connexion/module local" limite la
liste des modules; la fenêtre de sélection "en concordance avec l'affectation SPS" renforce la restriction en fonction de la SPS existante.
ème
colonne
5
elle contient l’affectation I/O du module
Les entrées sont affichées avec 'I" et les sorties avec 'Q' ou avec 'I'/'O', en
fonction des options/'Paramètres généraux' ( 8 bits respectivement pour
'I' et 'Q').
Le tableau doit débuter avec un module SPS.
Pour le module représenté sur la figure, on a ainsi les adresses suivantes:
SPS:
PAM10:
%IB1.0...
%QB2.0
%IB1.3
%QB2.3
L'adresse logique reste constante indépendamment d'un décalage de
position dans la boucle.
En cours d'introduction, la ligne de pied de page montre les possibilités
actuelles en fonction de la position du curseur.
En cas de commande couplée, le système relit quels sont les postes qui
sont réellement présents.
Représentation ASCII du Bus RECO
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
3-16: Editeur IO pour Bus RECO on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP_INTERN AT 1: 16#B000 ’RECO02-I/Os’
Identification Bus RECO, ici sur boucle 1 interne
1 AT 1: 16#3140 ’MTS-R’
MODULE (*<F6> Commentaire*)
AT 0..3: 16#0001 ’IB’
END_MODULE
MTS-R-Modul
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
2 AT 2: 16#1004 ’RMA02.1-32-DC24-050’
MODULE(*<F6> Commentaire*)
AT 0..3: 16#0002 ’QB’
END_MODULE
Module PAM10
avec commentaire et
<F6> Commentaire au début de la liste de
modules
3 AT 3: 16#0000 ’Module vide’
MODULE(*<F6> Commentaire*)
END_MODULE
Module – Module vide
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
END_LOOP
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Fin de boucle
3-28 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Tableau IO de la boucle SERCOS
Dans la boucle SERCOS , il est possible de disposer des unités RECO, similairement à la disposition des unités d'entraînement. Une telle unité RECO
dispose d'une connexion SERCOS sous la forme d'une borne de bus (place
1) Ensuite, il est possible de placer des modules I/O numériques et analogiques
Sélection des modules REC02
Carte de circuit imprimé
Affectation E/S
Désignation du module
Module RECO
IIII (4 entrées d'octets)
RMK02.1-LWL-SER-FW
PAM 7
QQ (2 sorties d'octets)
RMA02.1-16-RE230-200
Remarque
16 Relais 2A
PAM 8
QQ (2 sorties d'octets)
RMA02.1-16-DC024-200
16 Transistor 2A
PAM11
QQ (2 sorties d'octets)
RMA02.1-16-AC230-200
16 ELR-AC 2A
PAM 10
QQQQ (4 sorties d'octets)
RMA02.1-32-DC024-050
32 Transistor 0,5A
PEM 5
II (2 entrées d'octets)
RME02.1-16-DC024
16 DC 24V
PEM 7
II (2 entrées d'octets)
RME02.1-16-AC115
16 AC 115V
PEM 6
IIII (4 entrées d'octets)
RME02.1-32-DC024
32 DC 24V
SSM 3
2 * RS232
RMS02.1-02-RS232
Edition du tableau IO du Bus RECO
L'introduction de l'affectation des entrées et sorties s'effectue sous forme de
tableau conformément à la fig. suivante:
Fig. 3-17: Editeur IO pour Bus RECO
Deux lignes sont attribuées à chaque poste:
• La ligne supérieure correspond à l'affectation programmée,
• la ligne inférieure à l'affection réelle existante dans la SPS.
(en mode offline, on a supprimé la ligne inférieure pour plus de clarté).
La succession dans l'ordre des postes correspond à la disposition des appareils dans le bus.
Les positions non définies ou non-utilisées sont affichées avec '.' (Affectation des éléments enfichables) ou bien avec ‘....’ (Type). Des positions vides sont possibles pour éléments enfichables.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-29
La première unité RECO (SERCOS N° 4) se compose du module RECO,
d'un PAM 8 et d'un module vide. De la deuxième unité RECO (SERCOS N°
2), on ne voit que le module RECO.
Les modules RECO fonctionnent de façon similaire aux postes de bus à
distance dans l'IBM2-bus.
1ère Colonne
comprend le numéro du logement du poste.
2ème colonne
elle contient l'adresse logique.
3ème colonne
elle donne un aperçu des niveaux du bus et de la position des postes.
4ème colonne
elle contient le numéro SERCOS. (Chiffre avant le point) et le numéro de
module (chiffre derrière le point). Le numéro SERCOS peut ce faisant être
édité dans le „module de bus à distance, numéro de module 0“ Il suit automatiquement dans le cas des modules correspondants.
5ème colonne
Elle contient le type du module. Lors de la sélection du type de module, la
fenêtre de sélection "Type de module: Connexion/module local" limite la
liste des modules; la fenêtre de sélection "en concordance avec l'affectation SPS" renforce la restriction en fonction de la SPS existante.
ème
colonne
6
elle contient l’affectation I/O du module
Les entrées sont affichées avec 'I" et les sorties avec 'Q' ou avec 'I'/'O', en
fonction des options/'Paramètres généraux' ( 8 bits respectivement pour
'I' et 'Q').
Le tableau doit débuter avec un module RECO.
Pour les modules représentés sur la figure, on a ainsi les adresses suivantes:
RECO:
PAM8:
vide:
RECO:
%IB102.0...
%QB103.0
%IB102.3
%QB103.3
%IB101.0...
%IB101.3
L'adresse logique reste constante indépendamment d'un décalage de
position dans la boucle.
En cours d'introduction, la ligne de pied de page montre les possibilités
actuelles en fonction de la position du curseur.
En cas de commande couplée, le système relit quels sont les postes qui
sont réellement présents.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-30 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Représentation ASCII du bus SERCOS
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant esclave à fibres optiques avec poste MTC-M, on a alors la sortie suivante Fig.
3-17: Editeur IO pour Bus RECO:
Représentation ASCII
Remarques sur la représentation
IO
Début de la section Editeur IO
LOOP_INTERN AT 2: 16#C000 ’SERCOS-I/Os’
Identification bus SERCOS, ici sur boucle 1
interne
102 AT 4,0: 16#3240 ’RMk02.1-LWL-SER-FW’
MODULE(*<F6> Commentaire*)
AT 0..3: 16#0001 ’IB’
END_MODULE
Module RECO
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
103 AT 4,1: 16#1202 'RMA02.1-16-DC24-200'
MODULE(*<F6> Commentaire*)
AT 0..1: 16#0002 ’QB’
END_MODULE
Module PAM8
avec commentaire et
<F6> Commentaire au début de la liste de
modules
104 AT 4,2: 16#0000 ’Module vide’
MODULE(*<F6> Commentaire*)
END_MODULE
Module vide
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
101 AT 2,0: 16#3240 ’RMk02.1-LWL-SER-FW’
MODULE(*<F6> Commentaire*)
AT 0..3: 16#0001 ’IB’
END_MODULE
Module RECO
avec commentaire sur le module et
<F6> - Commentaire au début de la liste de
modules
END_LOOP
Fin de boucle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-31
3.2 Options dans l'éditeur IO
Les options énumérées ci-après influencent le travail dans l'éditeur IO.
Il est recommandé à l'utilisateur de les définir sous forme préférentielle.
Cette définition est mémorisée lorsqu'on quitte le système de programmation pour revenir au menu principal.
Option 'Paramètres généraux'
Fig. 3-18: Fenêtre d'options 'Paramètres généraux'
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'
Cette option permet avec 'Requête lors de la sauvegarde' la mémorisation automatique de l'état intermédiaire obtenu. (Le fichier BAK est alors
réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Représentation de variables
absolues
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4
et inversement.
La commutation agit également sur l'éditeur IO.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-32 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
3.3 Aide à la mise en route dans l'éditeur IO
Dans l'éditeur IO, on a, via l'instruction de pied de page, la possibilité d'activer l'affichage de l'état de l'élément enfichable actuel respectif. (Cette possibilité n'existe que si l'affichage d'état est actif!)
Fig. 3-19: Affichage d'état dans l'éditeur IO
Le comportement est analogue pour toutes les boucles.
3.4 Aide dans l'éditeur IO
Conformément à la conception d'aide uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur (dans la fenêtre éditeur ou dans
la fenêtre menu). Si dans les fenêtres de ce type des termes sont marqués
en couleur, une aide peut alors être sélectionnée. (Placer le curseur sur le
terme voulu, <Enter>),
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si dans les fenêtres de ce type des termes sont marqués en couleur, une aide peut alors
être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-33
Fig. 3-20: <F1> Aide sur l'éditeur
L’aide sur le terme donne une explication sur la position actuelle du curseur.
Dans l'exemple, le curseur se trouve dans la colonne 'numéro logique de
poste'
Fig. 3-21: <Ctrl>+<F1> - Aide sur le terme
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1> ou
avec la touche <F1>, il est possible après activation de la combinaison de
touches <Alt>+<S> d'entrer dans la fenêtre d'aide un terme de recherche
ou une partie de ce terme. Avec la combinaison de touches <Ctrl>+<L>, il
est possible de poursuivre la recherche du terme voulu.
Fig. 3-22: <Alt>+<S>, Rechercher ... ‘Variable’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
3-34 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
3.5 Touches dans l'éditeur IO
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent.
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Elément vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Elément vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
Touche (s)
Touches d’effacement
<Ctrl>+<Y>
Effacer le poste
<Ctrl>+<M>
<Enter>
Fin d'une entrée
Menu local dans Editeur IO (Pop_Up-Menü)
Dans chaque éditeur un menu local (combinaison de touches <Alt>+<F10>)
permet un accès rapide et de façon regroupée à des instructions importantes de l'éditeur..
Fig. 3-23: Menu local dans l'éditeur IO
Explications sur les instructions:
Actualisation de l’affichage
L'affichage de l'occupation de la boucle dans la SPS est actualisé au moment où on appelle l'éditeur et sous cette option de menu.
Réduire/Effacer IO
Si des postes non utilisés se trouvent dans les tableaux IO des boucles ou si
des éléments enfichables non utilisés existent dans les postes, cette instruction les effacera.
Ensuite, les tableaux IO ne contiennent plus que les enregistrements minimum nécessaires. Cette fonction n'est pas disponible pour les postes Interbus-S.
Tableaux IO
• Reprise de la SPS:
Avec cette instruction, on reprend dans le tableau IO les postes réellement connectés à la SPS et leurs éléments enfichables.
Boucle INDRAMAT à câble à fibres optiques
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS Détermination de la configuration matérielle, Tableaux IO 3-35
Cette opération ne s'amorce que si ceci est possible sans conflit avec
les références absolues déjà utilisées dans le programme utilisateur.
• Mémoriser dans fichier:
La configuration IO actuelle des deux modules de boucle est écrite
dans un fichier séparé.
Liste Interbus-S
Il est permis de procéder à l'extension ou à la modification de la liste de
sélection Interbus et à la suppression d'un type de poste séparé dans la
liste actuelle.
Dans le cas d'une extension, il est permis d'ajouter un nouveau type de
poste à la suite du type de postes marqués dans la liste.
L'addition d'un nouveau poste est décrite aux Chapitres ‘Création de
nouveaux postes dans la de sélection Interbus-S-’, Page 3-10 et 3-17.
La liste de sélection Interbus-S peut être mémorisée sur disquette ou lue
d'une disquette.
Aide Syntaxe
<Ctrl>+<F1>
Aide sur le terme recherché sur lequel on a positionné le curseur.
Commentaire Edit
<F6>
Introduction et modification du commentaire sur le poste actuel.
Commentaire on/off <Ctrl>+<F6>
Ouverture/fermeture de la fenêtre d'affichage pour commentaires.
Imprimer
<Alt>+<P>
Sortie sur imprimante du contenu de l'éditeur de la boucle actuelle.
Instructions bloc
<Ctrl>+<K>
Voir Chapitre 0, Page 3-33
Instructions Quick
<Ctrl>+<Q>
Voir Chapitre 0, Page 3-33
Instructions bloc dans l'éditeur IO
Un bloc de l'éditeur IO comprend une ligne.
Pour l'éditeur IO, les opérations bloc suivantes sont possibles:
•
•
•
•
•
•
•
•
•
•
Définir une ligne en tant que
bloc
Marquage du poste
<Ctrl>+<K><T>
Masquer le bloc <Ctrl>+<K><H>
Copier le bloc
<Ctrl>+<K><C>
Définir une ligne en tant que bloc
Marquage correct en longueur du poste
Masquer le bloc
Copier le poste
Déplacer le poste
Effacer le poste
Ecrire bloc (ASCII)
Lire bloc (ASCII)
Bloc Å Editeur de texte
Editeur de texte-bloc Å Editeur IO
<Ctrl>+<K><L>
<Ctrl>+<K><T>
<Ctrl>+<K><H>
<Ctrl>+<K><C>
<Ctrl>+<K><V>
<Ctrl>+<K><Y>
<Ctrl>+<K><W>
<Ctrl>+<K><R>
<Ctrl>+<K><3>
<Ctrl>+<K><4>
La ligne actuelle va être marquée en tant que bloc.
Marquage de poste en tant que bloc en tenant compte de la largeur de
données nécessaires des variables contenues.
Le bloc marqué est démasqué ou masqué par activation des touches.
Le bloc marqué va être copié directement à l'aval de la position marquée
par le curseur.
Déplacer le bloc
<Ctrl>+<K><V>
Le bloc marqué va être déplacé directement à l'aval de la position marquée par le curseur.
Effacer le poste
<Ctrl>+<K><Y>
Le poste marqué va être effacé.
Ecrire bloc (ASCII)
<Ctrl>+<K><W>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Le bloc marqué va être archivé sous forme de fichier en format ASCII.
3-36 Détermination de la configuration matérielle, Tableaux IO Guide de programmation SPS - 18VRS
Bloc Å Editeur de texte
<Ctrl>+<K><3>
Lire bloc (ASCII)
<Ctrl>+<K><R>
Editeur de texte -bloc Å
Editeur IO <Ctrl>+<K><4>
Le bloc marqué va être archivé en format ASCII dans l'éditeur de texte.
Lecture d'un fichier archivé en format ASCII.
Le bloc marqué dans l'éditeur de texte en format ASCII est transféré dans
l'éditeur IO.
Instructions Quick dans l'éditeur IO
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
vers le bord gauche
<Ctrl>+<Q><D>
vers le bord droit
<Ctrl>+<Q><R>
vers le début du tableau
<Ctrl>+<Q><C>
vers la fin du tableau
<Ctrl>+<Q><B>
vers le poste marqué
<Tab>
Passage à la boucle IO suivante
<Tab>
En effectuant un saut de page, on peut accélérer le passage d'une boucle
à la suivante.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Importation 4-1
4 Importation
Les blocs fonctionnels, fonctions ou types de données qui ont été définis
par l'utilisateur existent en tant que fichiers autonomes. Ils peuvent être
rechargés à tout moment et être modifiés dans la déclaration et /ou implémentation.
Pour pouvoir utiliser ces fichiers exactement comme des blocs fonctionnels / fonctions / types de données standard ou micrologiciels, il faut les
importer dans le fichier actuel qui désire les utiliser.
Au cours de cette importation, des caractéristiques essentielles du fichier
importé sont mémorisées dans le fichier actuel.
Un fichier à importer doit au moins contenir la section déclaration
(VAR_INPUT...END_VAR, VAR_OUTPUT...END_VAR).
Si dans la section déclaration des fichiers importés, on opère un développement après l'importation de ces fichiers, les fichiers ne concordent
alors plus au fichier qui les a importés.
Le système de programmation désigne le type d'erreurs qui résultent d'un
tel développement, sous l'appellation erreur d'interface. Une adaptation
ultérieure est possible dans l'éditeur interface (voir Page 4-6).
Le système de programmation reconnaît en outre sa propre bibliothèque,
c'est-à-dire les blocs fonctionnels (fb) / les fonctions (fk) et les types de
données (ty) standard et micrologiciels qu'il contient.
Ces éléments de bibliothèque n'ont pas besoin d'être importés étant donné que l'utilisateur ne les a pas modifiés.
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
1
RECO III.QQQ......... ................... (seulement avec programmes!)
,03257
,03257)520Commentaire
)81&7,21(*Fonctions définies par utilisateur*) Import de type de
1$1'(*Fonction NAND avec 8 entrées*)
de données (TY),
125(*Fonction NOR avec 8 entrées *)
fonctions (FK) et blocs
blocs fonctionnels (FB)util.
)8
DECLARATION
avant leur utilisation
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON
%E0.1.1 (* Introducteur
´
*) et blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) FB et fb) avant leur
TEM
%E3.2.4
(* Moniteur de température *) utilisation
(1'B9$5
ENouvelle création de
VAR_OUTPUT (* Déclaration des sorties
*) de types de données utilisateur
MOTEUR
6)&
/8(
)%'
Entrée du corps de
9(
/'
programme, bloc fonctionnel
(
,/
ou de fonction
(*Valid. du mot. du ventil.*) dans éditeur LD, IL
/'(,1 Mode m.ven. ou FBD, le cas échéant
2517(0 Temperatu>> avec éléments SFC.
$1'1$/$50 Alarmabsc>> 67MOTEUR (* Mot. d.ven.
Fig. 4-1: Création d'un programme 'PR', d'un bloc fonctionnel 'FB', d'une fonction
N.B.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Si un fichier (par exemple TON.FB) est importé avec le même
nom qu'un fb/ une fk/un ty standard, le fichier importé ne continuera pas utilisé l'élément de bibliothèque.
4-2 Importation
Guide de programmation SPS - 18VRS
4.1 Architecture de la section importation
La section importation sert à regrouper les modules de fonction utilisateur, fonctions utilisateur et types de données utilisateur qu'on désire utiliser avant leur déclaration et leur utilisation .
Fig. 4-2: Section importation du programme TEST_PLC
L'éditeur d'importation se présente sous la forme de deux colonnes.
• Dans la première colonne se trouvent les noms des types des blocs
fonctionnels, fonctions et types de données à importer. Ces noms peuvent présenter au maximum 8 caractères et doivent commencer par une
lettre.
• La seconde colonne sert à l'enregistrement d'un commentaire d'explication du nom du type importé.
Indépendamment de l'importation proprement dite, des lignes complètes
de commentaires ou des lignes vides peuvent être ajoutées pour une
meilleure structuration.
Si le curseur se trouve sur un type de bloc fonctionnel, un type de fonction
ou un type de données, il est possible de passer à ces éléments avec la
combinaison de touches <Ctrl>+<Enter> ou <Ctrl>+<N> .
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Importation 4-3
Guide de programmation SPS - 18VRS
4.2 Edition d’une section d’importation
Si un nouveau fichier est créé, la fenêtre suivante apparaît dans l'éditeur
d'importation.
Fig. 4-3: Section importation en cas de création d'un nouveau programme.
La fenêtre est la même pour programme et bloc fonctionnel. Dans le cas
d'une fonction, par contre, le champ FUNCTION_BLOCK n'existe pas
étant donné qu'une fonction ne peut pas utiliser de FB.
En fonction de la position du curseur, les instructions de pied de page ouvrent l'une des fenêtres de sélection suivantes:
<2>
Anw. TY,
Type de données utilisateur
Anw. FK,
Fonction utilisateur
Anw. FB,
Modules de fonction utilisateur
Les touches:
<4>
Commentaire et
<0>
Edit
permettent de compléter l'importation par un commentaire ou de corriger
l'importation ou son commentaire.
Si le curseur se trouve sur un nom déjà inscrit, les possibilités supplémentaires suivantes apparaissent:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
<1>
Passage à l'éditeur interfaces
Voir Chapitre Editeur d'interfaces, Page 4-6
<5>
Tentative de remplacement du fichier importé par un élément
de bibliothèque de même nom ou de même interface (par exemple
après extension de la bibliothèque).
4-4 Importation
Guide de programmation SPS - 18VRS
Importation de blocs fonctionnels
Si le programme actuel / le bloc fonctionnel actuel doit utiliser un ou plusieurs blocs fonctionnels définis par utilisateur, ces blocs fonctionnels
doivent être importés.
⇒ Sous la section FUNCTION_BLOCK , il faut activer la touche <2> pour
sélection. (Sélection avec touches de direction, confirmation avec touche <Enter>)
Fig. 4-4: Importation d’un bloc fonctionnel utilisateur
Après acceptation, l'aide déclaration peut être utilisée en activant la combinaison de touches <Shift>+<F1>.
Ensuite un commentaire peut être ajouté.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Importation 4-5
Importation de fonctions
Si le programme actuel / le bloc fonctionnel actuel /la fonction actuelle
doit utiliser une ou plusieurs autres fonctions définies par utilisateur, ces
fonctions doivent être importées.
⇒ Sous la section FUNCTION, il faut activer la touche <2> pour sélection. (Sélection avec touches de direction, confirmation avec touche
<Enter>)
Fig. 4-5: Importation d’une fonction utilisateur, fenêtre de sélection
Après acceptation, l'aide déclaration peut être utilisée en activant la combinaison de touches <Shift>+<F1>.
Ensuite un commentaire peut être ajouté.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-6 Importation
Guide de programmation SPS - 18VRS
Importation de types de données
Si le programme actuel / le bloc fonctionnel actuel / la fonction actuelle /
le type de données actuel doit utiliser un ou plusieurs autres types de
données définis par utilisateur, ces types de données doivent être importés.
⇒ Sous la section TYPE, il faut activer la touche <2> pour sélection.
(Sélection avec touches de direction, confirmation avec touche <Enter>)
Fig. 4-6: Importation d’un type de données utilisateur, fenêtre de sélection
Après inscription du nom, l'aide déclaration peut être utilisée en activant
la combinaison de touches <Shift>+<F1>.
Ensuite un commentaire peut être ajouté.
Editeur d’interfaces
Dans l'éditeur d'interfaces il est possible de procéder à une adaptation
des blocs fonctionnels, fonctions ou types de données déjà utilisés, puis
modifiés
Les opérations de traduction et le chargement du programme dans la
SPS ne peuvent se dérouler suivant plan que si tous les composants,
c'est-à-dire le programme, les modules de fonction, les fonctions et les
types de données sont en concordance du point de vue de leurs interfaces. Chaque fichier note au moment de l'importation l'aspect des fichiers
utilisés c'est-à-dire l'ordre des entrées et sorties, les noms, les valeurs
initiales des connections et les commentaires correspondants.
FB/FK/TY utilisateur peuvent être développés au fur et à mesure, c'est-àdire qu'une entrée ou sortie supplémentaire, une autre ou une nouvelle valeur initiale ou un élément supplémentaire peuvent être ajoutés si nécessaire, dans une structure par exemple.
⇒ Après une telle modification, l'utilisateur peut effectuer une adaptation
en chargeant respectivement le fichier à utiliser (dans l'exemple le
programme EXEMPLE) et en passant ensuite à l'éditeur d'importation
pour correction d'interface.
- ou ⇒ l'utilisateur démarre la traduction pour l'ensemble du programme
(compilateur / fichiers nécessaires ou compilateur / traduction intégrale) puis il attend (c'est la meilleure solution).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Importation 4-7
Guide de programmation SPS - 18VRS
Comme l'unité à utiliser et l'unité utilisée ne correspondent plus, un message d'erreur est engendré lors de la traduction avec invitation à passer à
l'éditeur d'interfaces où l'image attendue de l'unité utilisée est affichée sur
le côté gauche et l'image développée sur le côté droit.
Objectif:
adapter le côté gauche au côté droit.
Avant toute poursuite de développement, il est toutefois recommandé de
tenir compte du clignotant FB BLINKER dans l'éditeur d'interfaces.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Fig. 4-7:
Passage à l'éditeur d'interfaces avec 1-S_Edit pour le clignotant FB
BLINKER utilisé dans le programme
Fig. 4-8:
Comparaison de la section déclaration du FB BLINKER au moment de
l'importation (à gauche) et sous l'état actuel (à droite).
4-8 Importation
Guide de programmation SPS - 18VRS
Exemple:
Initialement, un FB BLINKER a été utilisé dans un programme. Les deux
côtés concordent.
L'utilisation de l'éditeur d'interfaces montre la concordance initiale.
BOOL
requis dans fichier de travail
existant dans fichier importé
%/,1.(5 %/,1.(5
actif
blinker
%22/ %22/
actif
blinker
%22/
L'exemple ci-dessus montre un générateur de clignotement qui avec l'entrée 'activé' valide une fréquence de clignotement définie à la sortie 'blinker'.
La fonctionnalité doit être développée comme suit:
Côté Entrée
Côté Sortie
Commentaire
−
−
−
−
−
'‘activé’ en tant que validation se
transforme en validation générale du FB, seulement modification dans l'implémentation, par
de modification d'interface, pas
de problème avec l'interface.
‘mode‘ en tant que nouvelle
entrée qui doit distinguer entre
deux fréquences de clignotement.
Deux nouvelles entrées de type
TIME via lesquelles la fréquence
de clignotement peut être réglée.
temps 1, temps de préréglage 1s
temps 2, temps de préréglage 5s.
−
La première sortie reçoit un
nouveau nom dans BlinkVar,
après validation, cette sortie
porte la fréquence de clignotement sélectionnée.
Deux autres sorties avec fréquence de clignotement fixe s'y
ajoutent, indépendamment de
enable.
cadence1
cadence2
Le FB BLINKER modifié reçoit
un commentaire.
Les modifications sont inscrites dans l'éditeur de déclaration sous BLINKER: Les modifications dans l'implémentation sont sans importance au
moment de l'adaptation dans l'éditeur d'interfaces.
L'essai de traduction échoue après les modifications dans le bloc fonctionnel et l'éditeur d'interfaces est requis (voir schéma ci-après).
Les différences sont immédiatement visibles sur les interfaces affichées.
L'utilisation de l'éditeur d'interfaces montre les nouvelles différences apparues. .
BOOL
requis dans fichier de travail
%/,1.(5 actif
blinker
%22/ %22/
BOOL
7,0(
7,0(
existant dans fichier importé
%/,1.(5
actif
BlinkVar
PRGHWDNW
temps1
takt2
temps2
%22/
%22/
%22/
Commentaire dans
fichier de travail
Clignotant avec fréquence de clignotement constante, 3s
réalisée via actions réglées dans le temps
Commentaire dans
le fichier importé
Génération de la fréquence de clignotement pour fréquences constantes
et variables activées: Entrée validation pour BlinkVar,
mode:
Sélection fréquence 1 / 2,
temps1/1s, temps2/5s: Valeur préréglée p. fréquence de clignotement
BlinkVar:
Fréquence variable;
cadence1, cadence2: Fréquences fixes
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Importation 4-9
⇒ Touche <8>-Confirmer adaptation.
La demande suivante suit alors:
Adaptation automatique par insertion des éléments manquants?
Si 'Oui', un avertissement apparaît en indiquant que ceci n'est possible
que partiellement.
⇒ Acquitter
L'adaptation automatique du côté Entrée est alors amorcée (Addition
des trois nouvelles entrées à côté des valeurs initiales et du commentaire).
Via la fenêtre-Erreur, la différence BlinkVar/blinker est soulignée.
⇒ La modification du nom doit s'effectuer manuellement (placer le curseur sur 'blinker' et remplacer).
⇒ Touche <8>-Confirmer adaptation.
Les sorties manquantes et le commentaire modifié sont traités automatiquement.
Les valeurs initiales sont appelées parallèlement à l'acceptation. Un examen des valeurs initiales est possible via l'instruction de pied de page
<Ctrl>+<V> )
Ensuite, une nouvelle traduction est démarrée jusqu'à ce qu'il n'y ait plus
aucune erreur.
Dans l'éditeur LD et FBD, on peut voir le nouveau schéma fonctionnel.
Les entrées et sorties ajoutées ne sont pas encore connectées.
Possibilités d'adaptation dans l'éditeur d'interfaces
Bloc fonctionnel
Fonction
Type de données
Les modifications suivantes sont
possibles:
− Entrée et/ou sortie supplémentaire avec ou sans valeur initiale
− Entrée et/ou sortie supplémentaire avec valeur initiale modifiée, et
− Modification du nom d'une entrée ou d'une sortie.
Pour les connexions inutilisées de
chaque côté, les fonctions suivantes
sont validées en supplément:
− Effacement d'une connexion inutilisée (des deux côtés).
− Modification du type de la connexion, et
− Déplacement d'une connexion
inutilisée.
Les modifications suivantes sont
possibles:
− Entrée supplémentaire (affectée
de la valeur initiale LD; entrée
ST occupée!)
− Modification du nom d'une entrée.
Pour les connexions inutilisées de
chaque côté, les fonctions suivantes
sont validées en supplément:
− Effacement d'une connexion inutilisée (des deux côtés).
− Modification du type de la connexion, et
− Déplacement d'une connexion inutilisée.
Les modifications suivantes sont
possibles:
− Elément supplémentaire
− Modification du nom d'un élément.
− Modification de la dimension des
tableaux
Les manipulations présupposent
que l'on connaisse des modifications dans l'unité utilisée
Elles sont supportées par:
− Fonction de comparaison (compar.<8>), elle compare les exigences de l'unité utilisante avec les
propriétés de l'unité utilisée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-10 Importation
Guide de programmation SPS - 18VRS
Représentation ASCII de l'éditeur d'importation
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
4-7:
Passage à l'éditeur d'interfaces avec 1-S_Edit pour le clignotant
FB BLINKER utilisé dans le programme on a alors la sortie suivante:
Représentation ASCII
Remarques sur la représentation
IMPORTATION
Début Editeur d'importation
TYPE
Types de données
OUTIL (*Structure*)
INVERSEUR(*Tableau avec structures en
tant qu'éléments de champ*)
DCHANGE (*Tableau avec structures en
tant qu'éléments de champ*)
FUNCTION
SELECT (*Sélection de nombres INT*)
Fonctions
FUNCTION_BLOCK
AOVRD (*QOVR := ( IOVR * MAX ) / 255*)
CLOCK (*Horloge*)
BLINKER (*Clignotant pour affichage
d'états internes*)
Blocs fonctionnels
END_IMPORT
Fin Editeur d’importation
Blocs fonctionnels
END_IMPORT
Fin Editeur d’importation
La zone de l'éditeur d'importation suit la zone de l'éditeur IO.
Elle peut être vide ou être supprimée si aucune importation n'est effectuée.
4.3 Aide à la mise en route dans l'éditeur d'importation
Dans l'éditeur d'importation, on a prévu la possibilité de commuter de
l'affichage d'état en mode édit (instruction de pied de page 1).
4.4 Options dans l'éditeur d'importation
aucune
4.5 Aide dans l'éditeur d'importation
Conformément à la conception d'aide uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur dans la fenêtre éditeur ou
dans la fenêtre menu.
Si des termes sont marqués en couleur, une nouvelle aide peut être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur).
Si des termes sont marqués en couleur, une nouvelle aide peut être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section déclaration du nom marqué par le curseur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Importation 4-11
Il est possible de représenter l'interface d'un bloc fonctionnel, d'une fonction, d'une variable structurée ainsi que les caractéristiques d'une variable
quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 4-9: <F1> Aide dans l'éditeur actuel
Fig. 4-10: <Ctrl>+<F1>, Aide sur le terme, le curseur se trouve sur FUNCTION
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1> ou
avec la touche <F1>, il est possible après activation de la combinaison de
touches <Alt>+<S> d'entrer dans la fenêtre d'aide un terme de recherche
quelconque ou une partie de ce terme.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-12 Importation
Guide de programmation SPS - 18VRS
Fig. 4-11: <Alt>+<S>, Rechercher
Fig. 4-12: <Shift>+<F1>, Aide déclaration pour bloc fonctionnel utilisateur
AOVRD
⇒ Positionner le curseur sur AOVRD.
⇒ Activer la combinaison de touches <Shift>+<F1>.
Le symbole (interface) avec les types des entrées et sorties et le
commentaire à la déclaration au moment de l'importation de la fonction ou du bloc fonctionnel est alors affiché.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Importation 4-13
Fig. 4-13: <Shift>+<F1>, Aide déclaration pour fonction utilisateur SELECT
⇒ Positionner le curseur sur SELECT.
⇒ Activer la combinaison de touches <Shift>+<F1>.
Le symbole (interface) avec les types des entrées et sorties et le
commentaire à la déclaration au moment de l'importation de la fonction ou du bloc fonctionnel est alors affiché.
Fig. 4-14: <Shift>+<F1>, Aide déclaration pour type de données DWECHSEL
⇒ Positionner le curseur sur DWECHSEL.
⇒ Activer la combinaison de touches <Shift>+<F1>.
L'arbre (interface) avec les types des variables et le commentaire à la
déclaration au moment de l'importation de la fonction ou du bloc fonctionnel est alors affiché.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-14 Importation
Guide de programmation SPS - 18VRS
4.6 Touches dans l'éditeur d'importation
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent.
Touches générales
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Elément vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Elément vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
Touche (s)
Touches d’effacement
<Ctrl>+<G>
<Delete>
Effacement d'un caractère
<Ctrl>+<H>
<Delete><CursorLeft>
Effacement d'un caractère en aval
Effacer une ligne complète
<Ctrl>+<Y>
<Ctrl>+<M>
<Enter>
Fin d'une entrée
Touche (s)
Accès
<Ctrl>+<Enter> <Ctrl>+<N>
Passage à FB / FK / TY
Touches accessibles via le menu local dans l'éditeur d'importation
Dans chaque éditeur un menu local (combinaison de touches <Alt>+<F10>)
permet un accès rapide, regroupé, à des instructions importantes de l'éditeur (voir explications des touches plus bas)
Fig. 4-15: Menu local dans l'éditeur d'importation
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Importation 4-15
Guide de programmation SPS - 18VRS
Touche (s)
Menu local <Alt>+<F10>
Test de syntaxe
<Ctrl>+<F6>
Commentaire, ligne complète on/off
<Alt>+<P>
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<Q>
Instructions Quick
<Ctrl>+<K> ...
Instructions bloc
Instructions bloc dans l'éditeur d'importation
Le but des Instructions bloc est de minimiser le travail par rapport à une
introduction d'entrées. Un bloc à l'intérieur de l'éditeur importation se compose d'une ou de plusieurs lignes qui se suivent directement.
Pour l'éditeur d'importations, les opérations bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Fixer début de bloc
<Ctrl>+<K><K>
Fixer fin de bloc
<Ctrl>+<K><L>
Marquer ligne en tant que bloc
<Ctrl>+<K><H>
Marquage de bloc on/off
<Ctrl>+<K><S>
Mémorisation du fichier
<Ctrl>+<K><R>
Lire bloc
<Ctrl>+<K><W>
Ecrire bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><1>
<Ctrl>+<Q><1>
Fixer marque 1
<Ctrl>+<K><2>
<Ctrl>+<Q><2>
Fixer marque 2
Transférer bloc dans l'éditeur de texte
<Ctrl>+<K><3>
Instructions quick dans l'éditeur d'importation
Les instructions Quick ci-après servent à accélérer les mouvements du curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début de l'écran
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin de l'écran
<Ctrl>+<Q><P>
vers la dernière position
<Ctrl>+<Q><G>
vers la ligne à indiquer
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-16 Importation
Guide de programmation SPS - 18VRS
Recherche d'une chaîne de
caractères <Ctrl>+<Q><F>
Fig. 4-16: Recherche d'un texte (chaîne de caractères)
Cherche Texte
Cadence
Le texte à rechercher est tout d'abord prédéfini par le terme sur lequel se
trouve le curseur. On peut soit réécrire ce terme soit sélectionner un autre
terme déjà utilisé auparavant via la fenêtre history (apparaît après curseur
↓)
• Eléments:
[X]
Variables et constantes
[X]
Mot clé
[ ]
Repère
[X]
Commentaire
[X]
Bloc fonctionnel
[X]
Fonction
[X]
Type de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments
peuvent être sélectionnés. Sous un mot clé, on doit comprendre des concepts qui ont une signification particulière pour le système de programmation,
comme
par
exemple:
VAR,
PROGRAM:::
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas sélectionnables (grisés)
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
En options, on peut demander au système d'ignorer les majuscules et
minuscules et de ne rechercher que des mots complets.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Importation 4-17
Guide de programmation SPS - 18VRS
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
à partir du curseur
( )
tout autour
(*)
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la direction ou inversement sur toute la zone.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
4-18 Importation
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-1
Guide de programmation SPS - 18VRS
5 Déclaration
L'éditeur de déclaration autorise la convention de:
• variables,
c'est-à-dire la définition du nom des variables, du type de données, le
cas échéant d'une valeur initiale prédéfinie par l'utilisateur, d'un commentaire relatif au nom et – au niveau du programme – la définition de
l'adresse sous laquelle la variable se trouve ou, pour le moins, sous
laquelle elle commence dans la mémoire de la commande.
• d'instances de blocs fonctionnels (Copies, affectations),
c'est-à-dire la réserve d'un emplacement mémoire où l'article de
l'instance respective peut être archivé.
• Types de données utilisateur.
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
5(&2,,,444 (seulement avec programmes!)
,03257
,03257)520Commentaire
)81&7,21(*Fonctions définies par utilisateur*) Import de type de
1$1'(*Fonction NAND avec 8 entrées*)
de données (TY),
125(*Fonction NOR avec 8 entrées *)
fonctions (FK) et blocs
blocs fonctionnels (FB)util.
)8
DECLARATION
avant leur utilisation
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON
%E0.1.1 (* Introducteur
´
*) et blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) FB et fb) avant leur
TEM
%E3.2.4
(* Moniteur de température *) utilisation
(1'B9$5
ENouvelle création de
VAR_OUTPUT (* Déclaration des sorties
*) de types de données utilisateur
MOTEUR
6)&
/8(
)%'
Entrée du corps de
9(
/'
programme, bloc fonctionnel
(
,/
ou de fonction
(*Valid. du mot. du ventil.*) dans éditeur LD, IL
/'(,1 Mode m.ven. ou FBD, le cas échéant
2517(0 7HPSHUDWX!! avec éléments SFC.
$1'1$/$50 $ODUPDEVF!! 67MOTEUR (* Mot. d.ven.
Fig. 5-1:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Création d'un programme 'PR', bloc fonctionnel 'FB',
d'une fonction 'FK' ou d'un type de données 'TY'
5-2 Déclaration
Guide de programmation SPS - 18VRS
5.1 Architecture de la section déclaration
La section déclaration sert à la convention de variables et à l'affectation des
blocs fonctionnels avant leur utilisation dans l'implémentation.
Fig. 5-2: Section déclaration du programme EXEMPLE
L'éditeur de déclaration se présente sous la forme de colonnes. Le contenu des différentes colonnes est mentionné dans la première ligne de
l'éditeur de déclaration.
1ère Colonne
C'est dans cette colonne que se trouvent les noms des variables déclarées
et les noms des blocs fonctionnels devant être utilisés (noms d'affectation).
Ces noms peuvent présenter au maximum 9 caractères et doivent commencer par une lettre.
2ème Colonne
Utilisée seulement pour les programmes. Les adresses attribuées aux
noms de la première colonne sont inscrites sous cette colonne.
Si la variable ne comprend qu'un seul élément, elle se trouve sous l'adresse
indiquée, si elle comprend plusieurs éléments (structures, tableaux, chaînes
de caractères) elle commence à la place indiquée.
3ème Colonne
Pour les variables on doit inscrire le type de la variable et pour les blocs fonctionnels, le type du bloc fonctionnel.
Si le type de variable ressort déjà clairement de l'adresse (entrées et sorties
booléennes, OCTET, WORD, DWORD), on peut renoncer à l'indication complète du type. Toutefois cette indication ne gêne pas.
4ème Colonne
Elle est prévue pour les valeurs initiales prédéfinies par l'utilisateur. Cette
valeur doit concorder avec le type de variables.
5ème Colonne
Elle sert à l'enregistrement du commentaire de déclaration, des noms attribués aux variables ou au nom d'affectation.
Pour une meilleure structuration, des lignes de commentaires complètes ou
des lignes vides peuvent être ajoutées indépendamment des déclarations
proprement dites.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-3
Guide de programmation SPS - 18VRS
Section déclaration d'un programme
ère
ligne
ème
ligne
1
A partir de la 2
La section déclaration Fig. 5-2: Section déclaration du programme EXEMPLE présente déjà des lignes non effaçables lors de la création d'un nouveau programme.
Elle comprend le mot clé PROGRAM et le nom du programme.
⇒ Entrer d'un commentaire en tant qu'explication du programme
(comme illustré sur la figure)
⇒ Inscrire les variables d'entrée du programme entre VAR_INPUT et
END_VAR
⇒ Inscrire les variables de sortie du programme entre VAR_INPUT et
END_VAR
⇒ Inscrire les variables internes du programme entre VAR_INPUT et
END_VAR Dans cette zone, il faut définir la convention d'utilisation
des blocs fonctionnels.
⇒ Inscrire les variables internes à propriétés rémanentes du programme
entre VAR_INPUT et END_VAR
Dans cette zone, il faut définir la convention d'utilisation des blocs
fonctionnels à propriétés rémanentes. (Toutes les variables de ce bloc
fonctionnel et les variables des blocs fonctionnels que le bloc fonctionnel
utilise lui-même sont ainsi pourvues de propriétés rémanentes.)
Ensuite, une sélection de lignes de déclaration correctes du point de vue
syntaxe est effectuée.
⇒ Entre VAR_GLOBAL et END_VAR, variables qui ont été déclarées dans
les sections susmentionnées et dont l'accès global est ici validé par l'introduction de leur nom. Type de données et commentaire de déclaration des
variables sont complétés automatiquement.
Pour une meilleure distinction, des exemples de convention d'utilisation des
blocs fonctionnels ont été ajoutés en italiques.
VAR_INPUT... END_VAR
Déclaration de variables d'entrée
Identificateur
AT
Type
Commutateur1
Valeur1
axe I_x
axe i_y
FINWORD1
%I1.2.5
%IW1.2
%IW0.10
A#A02S
%IWP1.1
INT
iAXIS
iAXIS
:=
Commentaire
Bit 5, élément enfichable 2, poste 1
élément enfichable 2,3, poste 1, type INT
struct. Var., Type iAXIS, commençant à partir de
%IW0.10
struct. Var., Type iAXIS, par constante d'adresse
mot d'entrée rapide, accès périphérique direct
La colonne AT doit toujours être remplie!
Des valeurs initiales ne sont pas permises, c'est-à-dire que la colonne =
est vide.
Blocs fonctionnels (et fonctions) ne peuvent pas être déclarés.
N.B.
Les mots / octets d'entrée rapides sont contraires à la structure
triphasée de la SPS!
VAR_OUTPUT END_VAR
Déclaration de
variables de sortie
Identificateur
AT
Type
:=
CONTACTEUR1
VALEUR3
Axe_q_x
Axe_q_y
FOUTBYTE1
%Q1.3.5
%QW3.2
%QW0.0
A#A02C
%QBP2.2
INT
qAXIS
qAXIS
5
Commentaire
Bit 5, élément enfichable 3, poste 1
élément enfichable 2, poste 2, INT, valeur initiale 5
struct. Var., Type qAXIS, commençant à partir de
%QW0.0
struct. Var., Type qAXIS, par constante d'adresse
octet de sortie rapide, accès périphérique direct
La colonne AT doit toujours être remplie!
Blocs fonctionnels (et fonctions) ne peuvent pas être déclarés.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-4 Déclaration
Guide de programmation SPS - 18VRS
N.B.
Les mots / octets de sortie rapides sont contraires à la structure
triphasée de la SPS!
VAR END_VAR
Déclaration de variables
drapeaux et d'affectations de
blocs fonctionnels
Identificateur
Marqueur1
MARQUEUR1
VALEUR2
DEA_01
FF1
Light1
xyzptr
AT
Type
:=
Commentaire
Bit drapeau
Bit 5, Octet 1
Marqueur entier, Valeur initiale 5
Variable structurée
FB micrologiciel, Type RS, Nom d’affectation FF1
FB utilisateur, Type LIGHT, Nom d’affectation Light1
Pointeur de Type ABC
BOOL
%M1.5
INT
qDEA
RS
LIGHT
^ABC
5
Type
:=
VAR RETAIN END_VAR
Déclaration d'indicateurs
de retenue et d'affectation de
blocs fonctionnels
Identificateur
Marqueur1
HMErker1
Valeur2
DEA_02
FF2
Light2
AT
Commentaire
Bit indicateur de retenue
indicateur de retenue, Bit 5, Octet 1
Indicateur de retenue de type INT, valeur initiale 5
variable rémanente structurée
FB micrologiciel, Type SR, Nom d’affectation FF2
FB utilisateur, Type LIGHT, Nom d’affectation Light2
BOOL
%R1.5
N.B.
VAR_GLOBAL END_VAR
Validation de variables pour une
utilisation globale
5
INT
qDEA
SR
LIGHT
Pour les paliers temporels TON, TOFF, TP, on ne doit pas définir de propriétés rémanentes.
Nom
AT
TYPE
:=
Commentaire
i
A#iDEA0
iDEA
STRUCT d'entrée
int_i
%IW3.1
INT
un nombre
ibit
%I1.1.1
VAR_INPUT
Adresse. AdresseÅType
données
END_VAR
VAR_OUTPUT
int_a
%QW2.2
INT
-35
un nombre également
END_VAR
VAR
m
tWilli
variable, type utilisateur
tWilli
retain var, type utilisateur
END_VAR
VAR RETAIN
m_r
END_VAR
VAR_GLOBAL
i
A#iDEA0
iDEA
STRUCT d'entrée
ibit
%I1.1.1
BOOL
Adresse abs.ÅType
données
int_a
%QW2.2
INT
un nombre également
m
tWilli
variable, type utilisateur
m_r
tWilli
retain var, type utilisateur
END_VAR
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-5
Guide de programmation SPS - 18VRS
Le tableau suivant montre en les résumant les possibilités offertes pour
une liaison des types de données (élémentaires et définis par utilisateur!)
à une adresse absolue (colonne AT).
Mot clé
BOOL
bits
1
Liaison à une adresse absolue (exemple)
%I1.2.3
%Q132.20.3,
%M10.3déclaré directement
OCTET
WORD
DWORD
8
16
32
%IB2.3, %IBP2.3
%IW2.3, %IWP2.3
%ID2.3,
%QB9.3, %QBP9.3
%QW9.4, %QWP9.4
%QD9.4,
%MB4 déclaré directement
%MW5 déclaré directement
%MD5 déclaré directement
CHAR
STRING
....
....
Comme variable OCTET
comme variable WORD
SINT
INT
DINT
8
16
32
Comme variable OCTET
comme variable WORD
comme variable DWORD
surdéclaré
surdéclaré
surdéclaré
USINT
UINT
UDINT
8
16
32
Comme variable OCTET
comme variable WORD
comme variable DWORD
surdéclaré
surdéclaré
surdéclaré
REAL
32
Comme variable DWORD
surdéclaré
TIME
32
Comme variable DWORD
surdéclaré
STRUCT
ARRAY
....
....
Comme variable WORD
comme variable WORD
¹)
¹)
¹)
surdéclaré ²)
surdéclaré
surdéclaré
surdéclaré
¹) Adresse indiquée, si besoin mémoire suivante (adresses ascendantes)
²) surdéclaré signifie que la variable a une adresse OCTET et qu'elle est utilisée en tant que CHAR (caractère)
N.B.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Des adresses avec accès périphérique direct ne sont pas autorisées à cette fin!
5-6 Déclaration
Représentation ASCII de la
section déclaration d'un
programme
Guide de programmation SPS - 18VRS
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
5-2: Section déclaration du programme EXEMPLE on a alors la sortie
suivante:
PROGRAMME EXEMPLE
(*Exemple de programme pour documentation SPS*)
(*Créé: 12.01.95, par N.N.*)
IO
(*Editeur IO fournit cette partie, effacée ici par manque de place*)
END_IO
IMPORTATION
(*Editeur d'importation fournit cette partie, effacée ici par manque de place*)
END_IMPORT
DECLARATION
VAR_INPUT
sAuto AT %I1.0.3; (*Mode automatique on*)
(*bit d'entrée, poste 1, élément enfichable 0, connexion 3*)
Valeur de consigne AT %IB1.3; (*Valeur de consigne, codée BCD*)
(*Octet d'entrée, poste 1, élément enfichable 3, 00...99*)
PO1S AT %IW0.700: iPROC; (*Processus 0, Signaux d'état*)
(*Type de données INDRAMAT, STRUCT *)
DEA_Entrée AT A#iDEA0: iDEA; (*Entrées test du module DEA*)
(*Type de données INDRAMAT, STRUCT, adressé via constante d'adresse *)
END_VAR
VAR_OUTPUT
Voylum1 AT %Q11.3.4; (*Voyant lumineux 1*)
DEA_Sortie AT A#qDEA0: qDEA; (*Sorties test du module DEA*)
END_VAR
VAR
Pi: REAL := 3.1429; (*Constantes*)
Lubrif1: TON; (*Palier temps "Lufrification1 ON"*)
(*Convention de l'utilisation d'un palier temporel, FB du Type "TON"*)
END_VAR
VAR RETAIN
S_Cycles: CTUD_INT; (*Compteur de cycles de lubrification*)
(*FB de type CTUD_INT avec propriétés rémanentes*)
END_VAR
VAR GLOBAL
sAuto AT %I1.0.3; (*Mode automatique on*)
END_VAR
END_DECLARATION
IMPLEMENTATION_PDM
END_IMPLEMENTATION
IMPLEMENTATION_SIM
END_IMPLEMENTATION
IMPLEMENTATION_FAST
END_IMPLEMENTATION
IMPLEMENTATION
END_IMPLEMENTATION
END_PROGRAM
Particularité:
Le commentaire de déclaration du fichier (qui se trouve dans l'éditeur de
déclaration en amont de la zone des variables d'entrée (VAR_INPUT...)
est placé au début du fichier ASCII. Lors de la lecture du fichier, il est
retransféré à sa place initiale.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-7
Guide de programmation SPS - 18VRS
Section déclaration d'un bloc fonctionnel
Fig. 5-3:
Section déclaration d'un bloc fonctionnel
La section déclaration présente déjà des lignes non effaçables lors de la
création d'un nouveau programme.
1ère ligne
A partir de la 2
ème
ligne
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Elle comprend le mot clé FUNCTION_BLOCK et le nom du type du bloc
fonctionnel.
⇒ Entrer le commentaire pour explication du FB (comme illustré sur la
fig.) Les cinq premières lignes de ce commentaire sont utilisées en
tant qu'aide déclaration dans les autres éditeurs.
⇒ Inscrire les variables d'entrée du FB entre VAR_INPUT et END_VAR
⇒ La zone entre VAR_OUTPUT et END_VAR comprend les variables de
sortie du FB.
⇒ Inscrire les variables internes du FB entre VAR_INPUT et END_VAR
Dans cette zone, il faut, en outre, définir la convention d'utilisation des
blocs fonctionnels.
⇒ Inscrire les variables internes à propriétés rémanentes du FB entre
VAR_INPUT et END_VAR.
Dans cette zone, il faut, en outre, définir la convention d'utilisation des
blocs fonctionnels à propriétés rémanentes.
Ensuite, une sélection de lignes de déclaration correctes du point de
vue syntaxe est effectuée.
⇒ Entre VAR_EXTERNAL et END_VAR: Variables qui sont déclarées
dans le programme, dont l'utilisation globale a été validée sous
VAR_GLOBAL du programme et auxquelles on doit recourir dans le FB.
Le nom et le type des données des variables doivent concorder avec
l'original du programme.
Pour une meilleure distinction, des exemples de convention d'utilisation
des blocs fonctionnels ont été ajoutés en italiques.
5-8 Déclaration
Guide de programmation SPS - 18VRS
VAR_INPUT... END_VAR
Déclaration de variables d'entrée
Identificateur
AT
Type
:=
BOOL
INT
iAXIS
STRING[3]
^ABC
Commutateur1
Valeur1
axe i_x_
Texte_0
XYZptr
3000
OK
Commentaire
Entrée booléenne
Variable INTEGER, valeur initiale 3000
var. d'entrée struct., type iAXIS
Entrée de type STRING, max.3 caractères, Init OK
Pointeur avec type de données ABC, pour transfert
d'adresse/d'Identificateur
La colonne AT est toujours vide. Blocs fonctionnels (et fonctions) ne peuvent pas être déclarés.
VAR_OUTPUT END_VAR
Déclaration de
variables de sortie
Identificateur
AT
Type
:=
BOOL
INT
iAXIS
STRING
Contacteur1
Valeur3
axe_q_x
Texte_1
5
OK
Commentaire
Sortie booléenne
Variable INTEGER, valeur initiale 5
var. d'entrée struct., type qAXIS
Entrée de type STRING, max.3 caractères, Init OK
La colonne AT est toujours vide.
Blocs fonctionnels (et fonctions) ne peuvent pas être déclarés.
Des pointeurs ne sont pas permis (Une adresse ou un Identificateur est
transféré(e) au FB côté entrée, ceci explique qu'aucune donnée ne soit
sortie du FB)
VAR END_VAR
Déclaration de variables
drapeaux et d'affectation de
blocs fonctionnels
Identificateur
AT
Marqueur1
Valeur2
DEA_01
Tableau_1
FF1
Light1
UVWptr
Type
:=
Commentaire
BOOL
INT
qDEA
MYARRAY
RS
LIGHT
^DEF
2#1
Bit marqueur valeur initiale 1(TRUE)
Mot en tant qu’ INT, (Valeur initiale 0)
Variable structurée
Variable de Type MYARRAY
FB micrologiciel, Type RS, nom d’affectation FF1
FB utilisateur, Type LIGHT, nom d’affectation Light1
Pointeur avec type de données DEF
La colonne AT est toujours vide.
VAR RETAIN END_VAR
Déclaration d'indicateurs
de retenue et d'affectation de
blocs fonctionnels
Identificateur
Marqueur1
Valeur2
DEA_02
FF2
Light2
AT
Type
BOOL
INT
qDEA
SR
LIGHT
:=
5
Commentaire
Indicateur de retenue
Indicateur de retenue, INT, valeur initiale 3
struct. Variable rémanente type qDEA
FB micrologiciel, Type SR, Nom d’affectation FF2
FB utilisateur, Type LIGHT, Nom d’affectation Light2
La colonne AT est toujours vide.
Des pointeurs ne sont pas permis
N.B.
Pour les paliers temporels TON, TOFF, TP, on ne doit pas définir de propriétés rémanentes.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-9
Guide de programmation SPS - 18VRS
Déclaration de variables
globales dans le
programme
Nom
AT
TYPE
:=
Commentaire
i
A#iDEA0
iDEA
STRUCT d'entrée
ibit
%I1.1.1
BOOL
Adresse abs, ÅType de
données
int_a
%QW2.2
INT
VAR_GLOBAL
-35
un nombre également
m
tWilli
variable, type utilisateur
m_r
tWilli
retain var, type utilisateur
END_VAR
Déclaration de variables
globales dans
bloc fonctionnel
Nom
TYPE
:=
Commentaire
VAR_EXTERNAL
i
iDEA
Accès aux variables d'entrée (r/o)
ibit
BOOL
Adresse abs, ÅType de
données
Int_a
INT
m
tWilli
END_VAR
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
AT
Type de données utilisateur
5-10 Déclaration
Représentation ASCII de la
section déclaration d'un bloc
fonctionnel
Guide de programmation SPS - 18VRS
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
5-3:
Section déclaration d'un bloc fonctionnel on a alors la sortie suivante:
FUNCTION_BLOCK AOVRD
(*Analog-Override, FB convertit l'octet d'entrée "IOVR" 0...255 à la valeur de *)
(*sortie correspondant à la valeur maximale "MAX" "QOVR".*)
(*ENA=0, Conversion bloquée, ancienne valeur reste; ENA=1, conversion en cours *)
(*TOG100 commute entre la valeur 100% et la valeur de référence*)
(*Affichage de 0% et 100%. créé le 10.01.95, par N.N.*)
IMPORTATION
(*Editeur d'importation fournit cette partie, effacée ici par manque de place*)
END_IMPORT
DECLARATION
VAR_INPUT
ENA: BOOL := 2#0; (*validation *)
TOG100-¦
¦ BOOL := 2#0; (*Commutation n%/100% OVR*)...
MAX: INT; (*Valeur max. Override*)
IOVR: OCTET; (*OVERRIDE $0....$FF*)
END_VAR
VAR_OUTPUT
QOVR: USINT; (*OVERRIDE, calibré*)
AT_0: BOOL; (*Affichage si QOVR=0%*)
AT_100: BOOL; (*Affichage si QOVR=100%*)
END_VAR
VAR
HM100: BOOL; (*Etiquette auxiliaire 1*)
HMM100: BOOL; (*Etiquette auxiliaire 2*)
END_VAR
VAR RETAIN
END_VAR
VAR EXTERNAL
END_VAR
END_DECLARATION
IMPLEMENTATION
END_IMPLEMENTATION
END_FUNCTION_BLOCK
Particularité:
Le commentaire de déclaration du fichier (qui se trouve dans l'éditeur de
déclaration en amont de la zone des variables d'entrée (VAR_INPUT...)
est placé au début du fichier ASCII. Lors de la lecture du fichier, il est
retransféré à sa place initiale.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-11
Guide de programmation SPS - 18VRS
Section déclaration d'une fonction
Fig. 5-4: Section déclaration d'une fonction
La section déclaration présente déjà des lignes non effaçables lors de la
création d'une nouvelle fonction.
ère
ligne
ème
ligne
1
A partir de la 2
⇒ Elle comprend le mot clé FUNCTION, le nom du type de la fonction et
le type de données de la sortie de la fonction qui doit être entré ici.
A titre d'explication de la fonction FK, il est possible d'entrer ici 5 lignes de
commentaires. Ces commentaires seront exploités dans les autres éditeurs en tant qu'aide déclaration.
⇒ Inscrire les variables d'entrée de la FK entre VAR_INPUT et
END_VAR
⇒ Inscrire les variables internes de la FK entre VAR_INPUT et
END_VAR
N.B.
Des blocs fonctionnels ne peuvent pas être entrés.
L'unique variable de sortie présente le même nom et le même type que la
fonction.
Ensuite, une sélection de lignes de déclaration correctes du point de vue
syntaxe est effectuée.
VAR_INPUT... END_VAR
Déclaration de variables d'entrée
Identificateur
AT
Commutateur1
Valeur1
Text_1
Type
BOOL
INT
STRING
:=
Commentaire
Variable d'entrée de type BOOL
Variable d'entrée de type INT
Entrée de type STRING, au max. 255 caractères
Les colonnes AT et:= sont toujours vides.
Des variables structurées et des tableaux ne sont pas permis.
VAR_OUTPUT END_VAR
Déclaration de
variables de sortie
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
sans objet
5-12 Déclaration
Guide de programmation SPS - 18VRS
VAR END_VAR
Déclaration de
variables drapeaux
Identificateur
AT
Marqueur1
Text_2
Type
BOOL
STRING[3]
:=
Commentaire
Bit drapeau
Variables drapeaux du type STRING, au max. 3 caractères
Les colonnes AT et:= sont toujours vides. Des variables structures et des
tableaux ne sont pas permis.
VAR RETAIN END_VAR
Déclaration d'indicateurs de
retenue
Représentation ASCII de la
section déclaration d'une
fonction
sans objet
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
5-4: Section déclaration d'une fonction on a alors la sortie suivante:
FUNCTION SELECT: INT
(*En fonction de l'entrée "SEL", l'une des deux entrées *)
(*"i1" ou "i2" est commutée sur la sortie de fonction.*)
(*Créé le: 06.01.95, par N.N.*)
IMPORTATION
END_IMPORT
DECLARATION
VAR_INPUT
SEL: BOOL; (*Sélection: "1": i1; "0": i2*)
i1: INT; (*Valeur 1*)
i2: INT; (*Valeur 2*)
END_VAR
VAR
M_INT: INT; (*Mémoire intermédiaire*)
END_VAR
END_DECLARATION
IMPLEMENTATION
END_IMPLEMENTATION
END_FUNCTION
Particularité:
Le commentaire de déclaration du fichier (qui se trouve dans l'éditeur de
déclaration en amont de la zone des variables d'entrée (VAR_INPUT...)
est placé au début du fichier ASCII. Lors de la lecture du fichier, il est
retransféré à sa place initiale.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-13
Guide de programmation SPS - 18VRS
5.2 Edition d'une section déclaration
Déclaration de variables
Le travail avec l'éditeur de déclaration doit être représenté en fonction de
l'évolution indiqué à la Fig. 5-1: Création d'un programme 'PR', bloc fonctionnel 'FB',
d'une fonction 'FK' ou d'un type de données 'TY' .
A titre d'exemple, on a exposé (voir fig. ci-après) le programme EXEMPLE.
Fig. 5-5: Section déclaration du programme EXEMPLE
Si l'installation est nouvelle, le curseur est positionné sur le mot clé PROGRAM (FUNCTION_BLOCK ou FUNCTION).
⇒ Déplacer le curseur vers VAR_INPUT.
⇒ Activer la touche <Enter>La place pour l'entrée du commentaire sur le fichier est créée.
⇒ Positionner le curseur sur la ligne vide et ouvrir commentaire avec la touche <4> .
⇒ Après entrée du commentaire voulu, placer le curseur sur la ligne vide
entre VAR_INPUT et END_VAR
N.B.
Séquence d'entrée
Cette zone est assujettie aux règles de syntaxe pour variables
d'entrée avec contrôle correspondant de l'entrée.
sAuto<Space>1.0.3<Space><Space>Mode automatique ON<Enter>
<4>bit d'entrée , Poste 1, Elément enfichable 0, Raccord 3<Enter>
⇒ En fin d'entrée d'une chaîne de caractères (d'un nom), on utilise la
touche espace <Space>.
Le curseur saute alors sur le champ suivant autorisé.
Si on active encore une fois la touche <Space>, ceci signifie que le
champ suivant peut rester vide; le curseur saute alors ce champ.
⇒ Activation de la touche <Enter> dans le champ commentaire.
Le commentaire est terminé
- ou -
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-14 Déclaration
Guide de programmation SPS - 18VRS
⇒ Au lieu d’activer la touche <Space>, on peut activer la touche <Enter>,
ce qui a l’effet suivant:
⇒ Si des champs doivent encore être remplis dans la ligne, <Enter> sera
traitée comme la touche <Space>, c'est-à-dire que l'on sautera dans
le champ suivant nécessaire,
⇒ si aucun autre champ ne doit être rempli dans la ligne, l'activation de
la touche <Enter> entraînera la fermeture de la ligne et l'ouverture
d'une nouvelle ligne.
⇒ Lorsque le minimum d'informations a été entré, on peut quitter la ligne
avec <CursorUp> ou <CursorDown>.
La touche <Esc> efface toute ligne commencée, mais non remplie entièrement.
⇒ Positionner le curseur sur la ligne vide entre VAR_OUTPUT et
END_VAR.
N.B.
Cette zone est assujettie aux règles de syntaxe pour variables
de sortie avec contrôle correspondant de l'entrée.
Ensuite, on peut poursuivre le remplissage de la ligne.
Des indications similaires valent entre VAR et END_VAR ou VAR RETAIN et END_VAR.
Si une variable n'a pas encore été utilisée dans la section implémentation,
la ligne de déclaration peut être effacée avec la combinaison de touches
<Ctrl>+<Y> ou modifiée (Mode Edit, accessible via la touche <0>).
Si une variable est déjà utilisée, le nom peut être modifié dans la colonne
1. Il change partout où il est utilisé. Par ailleurs, il est également possible
de modifier la valeur initiale et le commentaire.
Si la variable est déjà utilisée dans l'implémentation, le type de variables
ne peut plus être modifié vu qu'une telle modification entraînerait une
erreur aux autres endroits d'utilisation.
Pour la zone entre VAR et END_VAR ou VAR RETAIN et END_VAR, un
règlement particulier est appliqué, à savoir: certaines variables ou certains blocs – même s'ils sont déjà utilisés – peuvent, dans la mesure où
ils ne sont pas liés à une adresse absolue, être déplacés dans l'autre
zone respective (Instruction bloc).
Fenêtre de sélection lors de la déclaration de variables
Lors de l'entrée de la section déclaration, l'accès aux fenêtres de sélection est
proposé dans la ligne de pied de page, en fonction de la position du curseur.
Fenêtre de sélection pour
constantes d'adresse
La fenêtre de sélection est accessible dans les programmes dans la zone
VAR_INPUT...END_VAR et VAR_OUTPUT...END_VAR
⇒ Entrée du nom des variables
⇒ Terminer avec <Enter> ou <Space>
Dans la seconde colonne apparaît alors automatiquement %I ou %Q
⇒ Ces indications sont à effacer avec <Esc>
L'instruction de pied de page 2-AdrCo apparaît alors puis, après sa
confirmation, la fenêtre de sélection représentée ci-après.
⇒ Sélection via les touches de direction
- ou ⇒ en mode sélection rapide par inscription du nom des constantes
d'adresse désirées.
⇒ Confirmation par la combinaison de touches <Alt>+<T>
L'information affichée sur le type est disponible pour la constante
d'adresse respectivement présélectionnée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-15
Fig. 5-6: Fenêtre de sélection 'Constantes d'adresse'
Fenêtre de sélection types de
données dérivés
La fenêtre de sélection est accessible dans les programmes et blocs fonctionnels pour variables WORD. Ceci permet la déclaration d'une variable
STRUCT ou d'un ARRAY (tableau). En tant que types de données, on dispose des types de données micrologiciels et de types de structures ou de
tableaux définis par utilisateur et déjà importés.
⇒ Appel via l'instruction de pied de page Type dérivé 3
Après confirmation, la fenêtre de sélection suivante s'ouvre.
⇒ Sélection via les touches de direction
- ou ⇒ en mode sélection rapide par inscription du nom du type désiré.
⇒ Confirmation par la combinaison de touches <Alt>+<T>
L'information affichée sur le type est disponible pour le type de données respectivement présélectionné.
Fig. 5-7: Fenêtre de sélection 'Types de données dérivés'
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-16 Déclaration
Fenêtre de sélection pour types
de données standard
Guide de programmation SPS - 18VRS
La fenêtre de sélection est accessible après introduction d'un nom et le
cas échéant d'une adresse et/ou d'une constante dans la colonne 3.
⇒ Activation de la touche <6>
L'offre englobe les types de données standard possibles.
⇒ Sélection via les touches de direction
⇒ Confirmation avec <Enter>
N.B.
Si une adresse et/ou une constante d'adresse a été indiquée,
une limitation aux types de données appropriés est alors effectuée.
Fig. 5-8: Fenêtre de sélection 'Types de données standard'
Convention pour l’affectation des blocs fonctionnels
La convention sur l’utilisation des blocs fonctionnels se limite aux zones
VAR...END_VAR et VAR RETAIN...END_VAR.
Fig. 5-9: Convention pour blocs fonctionnels
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-17
Guide de programmation SPS - 18VRS
La convention pour blocs fonctionnels s'effectue de façon analogue à celle
effectuée pour les variables.
La ligne qui se trouve dans la figure ci-dessus a été générée d'après la séquence suivante:
Séquence d'entrée
Graissg1<Space><Space>TON<Space><Space>Palier temps ‘Graissage1’ ON<Enter>
Si un bloc fonctionnel n'a pas encore été utilisé dans la section implémentation, sa ligne de déclaration peut être effacée avec la combinaison
de touches <Ctrl>+<Y> ou modifiée (Mode Edit, accessible via la touche
<0>).
Si un bloc fonctionnel est déjà utilisé, le nom peut être modifié dans la
colonne 1. Il change partout où il est utilisé. Par ailleurs, il est également
possible de modifier le commentaire.
Le type d'un FB ne peut être remplacé par un autre que si les deux types
ont la même interface (même types et nombre d'entrées et de sorties).
(Remplacer TON par TOFF ....)
Pour la zone entre VAR et END_VAR ou VAR RETAIN et END_VAR, un
règlement particulier est appliqué, à savoir: certains blocs fonctionnels ou
certains blocs de blocs fonctionnels – même s'ils sont déjà utilisés – peuvent être déplacés dans l'autre zone respective (Instruction bloc).
Si le curseur se trouve sur un nom de type de FB (colonne 3) d'un bloc
fonctionnel défini par utilisateur, il est possible d'immerger dans le bloc
fonctionnel via les combinaisons de touches <Ctrl>+<Enter> ou
<Ctrl>+<N> (Retour via <Alt>+<F4>). L'appel des possibilités d'aide est
décrite au Chapitre.
N.B.
Pour les paliers temporels TON, TOFF, TP, on ne doit pas définir de propriétés rémanentes.
Fenêtre de sélection pour la convention de blocs fonctionnels
La fenêtre de sélection est accessible dans les programmes et blocs fonctionnels dans les zones VAR...END_VAR et VAR RETAIN...END_VAR.
Cette fenêtre permet de définir la convention pour les applications de
blocs fonctionnels.
⇒ Entrée du nom de l'affectation du bloc fonctionnel,
⇒ Terminer avec <Enter>
- ou ⇒ <Space>,
L'instruction de pied de page Type 5-FB apparaît.
⇒ Confirmer l'instruction Type 5-FB.
La fenêtre de sélection ci-après s'ouvre. Cette fenêtre contient tous les
blocs fonctionnels standard, micrologiciels et tous les blocs fonctionnels utilisateur importés jusqu'à présent.
⇒ Sélection via les touches de direction
- ou ⇒ en mode sélection rapide par inscription du nom du type désiré.
⇒ Confirmation par la combinaison de touches <Alt>+<T>
L'information affichée sur le type est disponible pour le bloc fonctionnel
respectivement présélectionné.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-18 Déclaration
Guide de programmation SPS - 18VRS
Fig. 5-10: Fenêtre de sélection 'Types de blocs fonctionnels''
5.3 Convention de types de données dans l'éditeur de
déclaration
1ère ligne
Elle contient le mot clé TYPE, suivi du nom du type de données défini par
utilisateur (au max. 8 caractères; le premier caractère devant être représenté par une lettre).
2ème ligne
Un commentaire peut être entré sur le type de données.
Les cinq premières lignes de ce commentaire servent en tant qu'aide
déclaration (<Shift>+<F1>) en relation avec le type de données.
A la ligne suivante, le nom est répété automatiquement (colonne 1). Via
l'instruction de pied, il est possible d'entrer la nature du type de données
(structure ou tableau) dans la colonne 2 de cette ligne.
Les lignes suivantes sont réservées à la convention permettant de définir
les éléments du type de données. La clôture de la convention Type s'effectue avec END_TYPE
L'ensemble de cette procédure est illustré ci-après à l'aide de trois
exemples:
• Entrée d'une structure avec des éléments élémentaires
(voir Chapitre ‘Entrée d'une structure avec variables élémentaires’,
Page 5-19)
• Entrée d'un tableau avec des éléments élémentaires
(voir Chapitre ‘Entrée d'un tableau avec variables élémentaires’, Page
5-20)
• Entrée d'un tableau avec des structures en tant qu'élément
(Importation de types de données utilisateur dans types de données, voir
Chapitre ‘Entrée d'un tableau avec des structures en tant qu'élément’,
Page 5-21)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-19
Entrée d'une structure avec variables élémentaires
On veut définir un type de données utilisateur OUTILLAGE comportant le
numéro de l'outil (Nombre INT), la classe de précision (Nombre SINT), la
direction de traitement admissible (BOOL) et un nom en texte clair avec
au maximum 10 caractères pour l'affichage. Comme les différents éléments sont eux-mêmes des types de données différents, la seule solution
possible est de les regrouper dans une structure.
⇒ Appeler l'option de menu Fichier/charger avec <F3>
La fenêtre ci-après s'ouvre alors pour le type de données utilisateur
OUTILLAGE.
Fig. 5-11: Fenêtre de déclaration d'un type de données utilisateur
Le nouveau type de données reçoit tout d'abord un commentaire.
Séquence d'entrée
⇒ Curseur sur la ligne 2
<4>Type de données util. Outillage, avec les éléments Outil-Numéro,<Enter>
<4>Classe de précision,<Enter>
<4>Direction de coupe,<Enter>
<4>Nom de l'outil,<Enter>
<4>créé le: 06.01.95, par N.N.<Enter>
⇒ Avec l'instruction de pied 1 STRUCT, sélectionner la structure.
Ensuite entrer ligne par ligne les éléments de la structure.
Séquence d'entrée
Numéro<Space>INT<Space>Outil-Numéro<Enter>
Classe<Space>SINT<Space>Classe de précision<Enter>
Direction<Space>BOOL<Space>vers la droite/vers la gauche<Enter>
Nom<Space>STRING[10]<Space>Nom de l'outil, au max. 10 caractères<Enter>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-20 Déclaration
Représentation ASCII
d'une structure
Guide de programmation SPS - 18VRS
A partir de la version 17, il est possible d'écrire des POU complètes en fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig. 511: Fenêtre de déclaration d'un type de données utilisateur on a alors la
sortie suivante:
TYPE OUTIL
(*Type de données utilisateur "OUTILLAGE", avec les éléments Outil-Numéro,*)
(*
Classe de précision,*)
(*
Direction de coupe,*)
(*
Nom de l'outil*)
(*Créé le: 06.01.95, par N.N.*)
IMPORTATION
END_IMPORT
DECLARATION
OUTILLAGE
STRUCT
Numéro:INT (*Outil-Numéro*)
Classe: SINT (*Classe de précision,*)
Direction: BOOL (*vers la droite/vers la gauche*)
Nom STRING[10](*Nom de l'outil, au max. 10 caractères*)
END_STRUCT
END_DECLARATION
END_TYPE
Particularité:
Le commentaire de déclaration sur le fichier est placé au début du fichier
ASCII. Lors de la lecture du fichier, il est retransféré à sa place initiale.
Entrée d'un tableau avec variables élémentaires
On veut définir un type de données utilisateur PALETTE qui doit décrire l'affectation de la position de 25x25 pièces sur une palette.
• Pièce disponible:
1
• Pièce non-disponible:
0
Tous les éléments présentent ainsi le même type de données BOOL.
Un tableau bidimensionnel apparaît judicieux à l'utilisateur.
⇒ Ouvrir l'option de menu Fichier/charger avec <F3>
La fenêtre ci-après s'ouvre alors pour le type de données utilisateur PALETTE.
Fig. 5-12: Fenêtre de déclaration d'un type de données utilisateur
Le nouveau type de données reçoit un commentaire.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-21
Guide de programmation SPS - 18VRS
Séquence d'entrée
⇒ Curseur sur la ligne 2
<4>Type de données utilisateur ‘PALETTE’, 25 x 25 Places<Enter>
<4>créé le: 06.01.95, par N.N.<Enter>
⇒ Avec l'instruction de pied 2-ARRAY, sélectionner un tableau.
Ensuite entrer ligne par ligne les éléments du tableau.
Séquence d'entrée
24<Enter>
24<Enter>
<Enter>
BOOL<Enter>
(*on n'a pas besoin de plus d'éléments*)
Un commentaire peut être introduit ensuite dans les lignes des éléments.
(Curseur sur le champ commentaire de la ligne, 0-Edit.)
Représentation ASCII d'un Array
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
5-12: Fenêtre de déclaration d'un type de données utilisateur on a alors la
sortie suivante:
TYPE PALETTE
(*Type de données utilisateur "PALETTE", 25 x 25 Places*)
créé le: 06.01.95, par N.N.*)
IMPORTATION
END_IMPORT
DECLARATION
PALETTE ARRAY [
0 .. 24 (*Largeur de la palette*)
0 .. 24 (*Longueur de la palette*)
] OF BOOL
END_DECLARATION
END_TYPE
Particularité:
Le commentaire de déclaration sur le fichier est placé au début du fichier
ASCII. Lors de la lecture du fichier, il est retransféré à sa place initiale.
Entrée d'un tableau avec des structures en tant qu'élément
On veut définir un type de données utilisateur CHANGEUR D'OUTIL. Un
Echangeur d'outils à chaîne dispose de 16 places pour outils Les outils
eux-même sont décrits par le type de données utilisateur OUTILLAGE.
En supplément aux outils réellement disponibles (voir Chapitre ‘Entrée
d'une structure avec variables élémentaires’, Page 5-19) il existe également une place libre pour l'outil Zéro.
Tous les éléments présentent ainsi le même type de données OUTILLAGE.
Un tableau unidimensionnel apparaît judicieux à l'utilisateur.
⇒ Ouvrir l'option de menu Fichier/charger avec <F3>
La fenêtre ci-après s'ouvre alors pour le type de données utilisateur
ECHANGEUR.
⇒ Avant de commencer la déclaration, il faut appeler la section importation
du type de données via Edition/Importation avec <Alt>+<M> et importer
le type de données OUTILLAGE:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-22 Déclaration
Guide de programmation SPS - 18VRS
Fig. 5-13: Importation d'OUTILLAGE dans le type de données utilisateur
ECHANGEUR
Ensuite, il est possible, comme explicité au Chapitre ‘Entrée d'un tableau
avec variables élémentaires’ (Page 5-20) de définir le tableau ECHANGEUR.
Fig. 5-14: Type de données utilisateur ECHANGEUR
A la suite de l'importation, l'aide déclaration (<Shift>+<F1>) est à disposition pour le type de données OUTILLAGE.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-23
Fig. 5-15: <Shift>+<F1>, Aide pour OUTILLAGE dans type de données
ECHANGEUR
5.4 Aide à la mise en route dans l'éditeur de déclaration
Affichage d'informations sur l'état
Si un programme se trouve en cours d'exécution sur la commande, il est
possible dans l'éditeur de déclaration d'obtenir les informations suivantes
sur l'état du programme ou d'un bloc fonctionnel utilisé.
• les variables bit marquées en couleur sont logiques 1,
• les autres variables sont affichées dans le champ commentaire avec
leur valeur.
• via l'instruction de pied 2, le commentaire sur l'affichage peut être ouvert.
• les variables à plusieurs éléments (variables structurées et tableaux)
peuvent être affichées dans une fenêtre particulière.
Si l'affichage de l'état est activé dans l'éditeur de déclaration, l'utilisateur
reçoit des informations sur la valeur actuelle des variables indépendamment de l'utilisation ou non de ces variables dans l'implémentation. De
cette façon, il est possible avec la section déclaration d'un programme de
contrôler le câblage entre encodeurs utilisés et vérins. Pour chaque entrée et sortie déclarée au niveau du programme, la valeur actuelle appliquée aux bornes est affichée, que cette valeur soit ou non déjà utilisée.
Dans le cas des variables non utilisées jusqu'à présent et qui ne sont pas
des entrées ou sorties de programme, le système affiche la valeur initiale
standard.
Dans la section déclaration des blocs fonctionnels, la valeur actuelle au
point d'utilisation est affichée. S'il n'y a pas d'utilisation, c'est la valeur
initiale qui est affichée. Un affichage de la valeur des variables à l'intérieur
de fonctions n'est pas possible étant donné que ces valeurs ne sont disponibles qu'au moment de l'usinage actuel et qu'elles sont ensuite immédiatement réécrites.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-24 Déclaration
Guide de programmation SPS - 18VRS
Fig. 5-16: Editeur de déclaration, informations sur l'état
Variables à plusieurs éléments
<Shift>+<F3>
Via l'option de menu Démarrage/variable à plusieurs éléments ou via la
combinaison de touches <Shift>+<F3>, on a la possibilité d'ouvrir une fenêtre d'affichage avec la structure interne des variables. Avant d'ouvrir cette
fenêtre, le curseur doit être positionné sur la variable désirée (structure ou
array).
Si le curseur n'est pas pointé sur une telle variable, une fenêtre s'ouvrira
pour l'introduction du nom.
Fig. 5-17: Sélection d'une variable à plusieurs éléments
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-25
Fig. 5-18: Affichage d'une variable à plusieurs éléments
Pour les tableaux, il faut éventuellement effectuer une limitation sur un
groupe d'éléments.
Fig. 5-19: Affichage de la structure (en tant qu'élément de tableau)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-26 Déclaration
Guide de programmation SPS - 18VRS
Listage de variables et d'éléments de variables avec noms et
informations sur leur état
L'utilisation de types de données utilisateur (imbriqués) est pour la mise
en
route
supportée
par
l'instruction bloc <Ctrl>+<K><S> qui permet l'établissement sous la forme
d'un fichier ASCII d'une liste nominative de toutes les variables et éléments de variables contenus dans un bloc avec leur état actuel tandis
que le rétro-chargement des valeurs à partir du fichier (modifié) dans la
commande est supporté avec la combinaison de touches <Ctrl>+<K><D>
.
Fig. 5-20: Variable en tant que bloc (avec info sur le type)
L'archivage sous la forme de fichier ASCII peut s'effectuer de façon interne ou bien via le bouton Exportation vers un lecteur quelconque. Le
fichier peut être édité et modifié dans l'éditeur de texte (ou dans n'importe
quel autre éditeur ASCII).
Fig. 5-21: Archivage du fichier ASCII
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-27
Guide de programmation SPS - 18VRS
Fig. 5-22: Traitement du fichier ASCII dans l'éditeur de texte
La figure présente le listage des éléments d'une variable de type tableau
unidimensionnel avec une structure en tant que type d'élément. La syntaxe de l'accès correspond à celle de l'instruction <Ctrl>+<F4>.
Accès à
Exemple dans IL
Remarque
ARRAY [
LD
Changement1
Tableau complet avec tous les composants
Elément d'ARRAY
LD
Changement1[3]
Elément 3 – une structure complète
Elément de STRUCT
dans tableau
LD
Changement1[3].Nom
Nom de l'élément ARRAY 3
Caractère dans le STRING
de…
LD
Changement1[3].Nom[5]
5. Lettre du nom
N.B.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Le retrait des variables présuppose que l'on dispose des informations sur leur état!
5-28 Déclaration
Guide de programmation SPS - 18VRS
5.5 Options dans l'éditeur de déclaration
Les options énumérées ci-après influencent le travail dans l'éditeur de
déclaration. Il est recommandé à l'utilisateur de les définir sous forme
préférentielle. Cette définition est mémorisée lorsqu'on quitte le système
de programmation pour revenir au menu principal.
Option 'Paramètres généraux'
Fig. 5-23: Fenêtre d'options ‘Paramètres généraux’
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'
Cette option permet en commun avec 'Requête lors de la sauvegarde' la
mémorisation automatique de l'état intermédiaire obtenu. (Le fichier BAK est
alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Commentaire de déclaration
dans l'implémentation
Les commentaires qui sont affectés aux variables dans l'éditeur de déclaration sont affichés dans les lignes des listes d'instructions (IL) aux emplacements où ces variables sont utilisées, sous la forme d'un commentaire pouvant être réécrit. Ce commentaire suffit dans la plupart des cas en tant
qu'explication. Si l'option est désactivée, les lignes correspondantes seront
vides. La mise au point effectuée agit également dans la documentation.
Affichage de variables
symbolique ou absolu
<Shift>+<F2>
A l'intérieur des programmes, il est possible de remplacer les noms (symboliques) attribués par l'adresse absolue indiquée en tous points de la liste
d'instructions (IL) ou des réseaux LD/FBD. L'inverse est également possible. Pour simplification, cette option a été prévue avec la combinaison de
touches <Shift>+<F2>.
Représentation de variables
absolues
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I et %E ou %Q et %A.
Exemple:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4 et inversement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-29
Guide de programmation SPS - 18VRS
Option ‘Paramètres de l'écran’
Fig. 5-24: Fenêtre d'option ‘Paramètres de l'écran’
Fonction
Zone de paramétrage
Autres éditeurs
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
• Paramètre de mise au point
Coupure de nom:
Stratégie permettant de couper un nom
trop long.
Coupure de nombres:
Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
• Commutateur
Ok:
Appliquer
Standard:
Interruption:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Accepter les paramètres,
les appliquer dans les éditeurs actuels.
Appliquer les paramètres dans les
éditeurs actuels, sans quitter la fenêtre.
Restaure les paramètres standard de la
zone de paramétrage sélectionnée.
Restaure les paramètres avant
intervention dans la fenêtre et quitter la
fenêtre.
5-30 Déclaration
Guide de programmation SPS - 18VRS
5.6 Aide dans l'éditeur de déclaration
Conformément
uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur (dans la fenêtre éditeur ou dans
la fenêtre menu). Si des termes sont marqués en couleur, une nouvelle
aide peut être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si des termes
sont marqués en couleur, une nouvelle aide peut être sélectionnée (placer
le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section déclaration du nom marqué par le curseur.
Il est possible de représenter l'interface d'un bloc fonctionnel, d'une fonction, d'une variable structurée ainsi que les caractéristiques d'une variable
quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 5-25: <F1> Aide en relation avec l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-31
Fig. 5-26: <Ctrl>+<F1>, Aide contextuelle (le curseur se trouve sur le terme
iDEA)
⇒ Appel de l’aide avec la combinaison de touches <Ctrl>+<F1>
- ou ⇒ Touche <F1>
⇒ Activation de la combinaison de touches <Alt>+<S>
Un terme de recherche quelconque ou une partie de ce terme peut
être entré dans la fenêtre d'aide.
Fig. 5-27: Recherche d'un terme prédéfini
Pour l'aide déclaration, il existe, dans la mesure où elles sont remplies,
deux positions, la colonne
• Identificateur et la colonne
• TYPE
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-32 Déclaration
Guide de programmation SPS - 18VRS
Fig. 5-28: <Shift>+<F1>, Aide déclaration sur l'Identificateur PO1S avec passage
à l'information sur le type <T>
Lorsqu'on passe à la colonne TYPE, les indications suivantes apparaissent:
Fig. 5-29: <Shift>+<F1>, Aide déclaration sur le type de données iPROC
⇒ Placer le curseur sur la position d’appel de iPROC.
⇒ Activer la combinaison de touches <Shift>+<F1>.
La structure (interface) avec les types des entrées et sorties et le
commentaire à la déclaration en provenance de la bibliothèque ou au
moment de l'importation est alors affiché.
La même chose vaut de façon analogue pour les blocs fonctionnels, le
curseur devant cette fois être respectivement positionné sur le nom d'utilisation et le nom du type.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Déclaration 5-33
Fig. 5-30: <Shift>+<F1>, aide déclaration sur l'Identificateur S_Cycles avec passage à l'information sur le type <T>
Si le curseur est placé sur le type du bloc fonctionnel, le commentaire de
déclaration (ligne 1…5), son interface et le type des entrées et sorties
ainsi que le nom du bloc seront alors affichés.
Les données sont extraites de la bibliothèque ou transférées au moment
de l'importation.
Fig. 5-31: <Shift>+<F1>, Aide déclaration sur le type de données CTUD_INT
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-34 Déclaration
Guide de programmation SPS - 18VRS
5.7 Touches dans l'éditeur de déclaration
⇒ Activation de la combinaison de touches <Alt>+<H>
Toutes les touches actives au moment précis peuvent être appelées
pour sélection et exécution.
Touches générales
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Colonne de la grille vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Colonne de la grille vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
<Shift>+<CursorUp>
<Shift>+<CursorDown>
<Shift>+<PageUp>
<Shift>+<PageDown>
Marquer bloc
Touche (s)
Touches d’effacement
<Ctrl>+<G>
<Delete>
Effacement d'un caractère
<Ctrl>+<H>
<Delete><CursorLeft>
Effacement d'un caractère en aval
Effacer une ligne complète
<Ctrl>+<Y>
<Ctrl>+<V>
<Insert>
Commutation Réécrire/Remplacer
<Ctrl>+<M>
<Enter>
Fin d'une entrée
Touche (s)
Accès
<Ctrl>+<Enter> <Ctrl>+<N>
Passage à FB / FK / TY
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-35
Guide de programmation SPS - 18VRS
Touches accessibles via le menu local dans l'éditeur de déclaration
⇒ Activation de la combinaison de touches <Alt>+<F10>
Dans chaque éditeur, il existe un menu local qui regroupe les instructions importantes de l'éditeur de façon à ce qu'elles soient rapidement
accessibles.
Fig. 5-32: Menu local dans l'éditeur de déclaration
Touche (s)
Menu local <Alt>+<F10>
<F5>
Test de syntaxe
<F6>
Commentaire édition
<Ctrl>+<F6>
Commentaire, ligne complète on/off
<Shift>+<F2>
Adresse absolue / Nom (symbolique)
<Alt>+<P>
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<Q>
Instructions Quick, état actuel
<Ctrl>+<K> ...
Instructions bloc, état actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-36 Déclaration
Guide de programmation SPS - 18VRS
Combinaisons de touches pour Instructions bloc dans l'éditeur de
déclaration
Le but des Instructions bloc est de minimiser le travail par rapport à une introduction d'entrées. Un bloc à l'intérieur de l'éditeur de déclaration se compose
d'une ou de plusieurs lignes qui se suivent directement.
Pour l'éditeur de déclaration, les opérations en bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Début du bloc
<Ctrl>+<K><K>
Fin de bloc
<Ctrl>+<K><L>
Ligne en tant que bloc
<Ctrl>+<K><H>
Marquage de bloc e/s
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><C>
Copier commentaire
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><W>
Ecrire bloc
<Ctrl>+<K><R>
Lire bloc d'une disquette
<Ctrl>+<K><P>
Imprimer bloc
<Ctrl>+<K><I>
Trier variables de bloc
<Ctrl>+<K><A>
Trier AbsVar de bloc
<Ctrl>+<K><T>
Ligne/commentaire en tant que bloc
<Ctrl>+<K><U>
Effacer déclarations inutilisées
<Ctrl>+<K><S>
Variables de SPS vers PC
<Ctrl>+<K><D>
Variables de PC vers SPS
<Ctrl>+<K><3>
Copier bloc dans éditeur de texte
<Ctrl>+<K><4>
Copier bloc ED dans éditeur de déclaration
Début de bloc
<Ctrl>+<K><B>
Positionner le curseur sur la première ligne voulue et activer la combinaison de touches <Ctrl>+<K><B>.
Fin de bloc
<Ctrl>+<K><K>
Positionner le curseur sur la première ligne voulue et activer la combinaison de touches <Ctrl>+<K><K>.
Ligne en tant que bloc
<Ctrl>+<K><L>
Marquage de bloc e/s
<Ctrl>+<K><H>
Déplacer bloc
<Ctrl>+<K><V>
Copier commentaire
<Ctrl>+<K><C>
La ligne actuelle va être marquée en tant que bloc.
Le bloc marqué est rendu visible ou invisible par activation de la combinaison de touches <Ctrl>+<K><H> .
Le bloc marqué va être déplacé directement à l'aval de la position marquée par le curseur.
Cette instruction ne devrait être utilisée que pour un déplacement entre
VAR… END_VAR et VAR RETAIN ... END_VAR.
Le bloc marqué va être copié directement à l'aval de la position marquée
par le curseur.
Effacer un bloc
<Ctrl>+<K><Y>
Si les variables et les noms d'affectation convenus n'ont pas encore été
utilisés, toutes les lignes marquées seront effacées sans avertissement.
IL EST PREFERABLE D'UTILISER: <Ctrl>+<K><U>
Ecrire bloc
<Ctrl>+<K><W>
Le bloc marqué est écrit sur le support de données indiqué dans la fenêtre
de sélection sous le nom indiqué. Le bloc est ensuite archivé en tant que
fichier ASCII standard.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-37
Guide de programmation SPS - 18VRS
Lire bloc
<Ctrl>+<K><R>
Insère derrière la position actuelle du curseur un bloc archivé auparavant
avec Ecrire bloc.
N.B.
Imprimer bloc
<Ctrl>+<K><P>
Lors de sa lecture, l'exactitude de la syntaxe du bloc est contrôlée.
Des corrections sont possibles dans la fenêtre. Si des limites de
bloc comme VAR_INPUT.. END_VAR etc. existent, un triage est
effectué automatiquement.
Le bloc marqué est imprimé.
Trier variables de bloc
<Ctrl>+<K><I>
Les variables à l'intérieur du bloc sont classées en ordre alphabétique
En cas de déplacement d'entrées (VAR_INPUT...END_VAR) ou de sorties (VAR_OUTPUT...END_VAR) dans le bloc fonctionnel, l'interface visible de l'extérieur sera détruite. Si l'utilisation de FB modifiés doit se poursuivre, de vastes opérations doivent être effectuées dans l'éditeur d'interface du PR ou du FB utilisant (voir Editeur d'importation/ Editeur d'interface).
A EVITER AUTANT QUE POSSIBLE.
Trier AbsVar de bloc
<Ctrl>+<K><A>
Les variables à l'intérieur du bloc sont classées par adresses en ordre
croissant
En cas de déplacement d'entrées (VAR_INPUT...END_VAR) ou de sorties
(VAR_OUTPUT...END_VAR) dans le bloc fonctionnel, l'interface visible de
l'extérieur sera détruite. Si l'utilisation de FB modifiés doit se poursuivre, de
vastes opérations doivent être effectuées dans l'éditeur d'interface du PR
ou du FB utilisant (voir Editeur d'importation/ Editeur d'interface).
A EVITER AUTANT QUE POSSIBLE.
Ligne/commentaire en tant que
bloc <Ctrl>+<K><T>
Une ligne complète est marquée ou bien le commentaire si le curseur se
trouve dans le champ commentaire
Effacer déclaration inutilisée
<Ctrl>+<K><U>
Toutes les variables et/ou instances du bloc marqué qui n'ont pas encore
été utilisée jusqu'à présent sont effacées, les commentaires et lignes
vides sont conservées.
Variables de SPS vers PC
<Ctrl>+<K><S>
Les noms et les valeurs actuelles des variables et de leurs éléments qui
se trouvent dans le bloc sont archivés dans un dossier ASCII pouvant
être édité.
Variables de PC vers SPS
<Ctrl>+<K><D>
Relecture des valeurs (modifiées) de variables d'un fichier créé avec
<Ctrl>+<K><S>.
Copier bloc dans éditeur de
texte
<Ctrl>+<K><3>
Le bloc marqué est copié dans l'éditeur de texte. Pour une meilleure structuration, les lignes spécifiques du système sont archivées parallèlement.
Copier bloc éditeur de texte
dans éditeur de déclaration
<Ctrl>+<K><4>
Le bloc marqué de l'éditeur de texte est copié dans l'éditeur de déclaration.
Si des limites de bloc comme VAR_INPUT.. END_VAR etc. existent, un
triage est effectué automatiquement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-38 Déclaration
Guide de programmation SPS - 18VRS
Combinaisons de touches pour instructions Quick dans l'éditeur de
déclaration
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début de l'écran
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin de l'écran
<Ctrl>+<Q><P>
vers la dernière position
<Ctrl>+<Q><G>
vers la ligne à indiquer
Chercher et Remplacer
Utilise la même fenêtre que ‘Rechercher et Remplacer’....
Recherche d'une chaîne
de caractères <Ctrl>+<Q><F>
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 5-33: Recherche et remplacement d'un texte (chaîne de caractères)
Cherche Texte
sAuto
Le texte à rechercher est tout d'abord défini par le terme sur lequel se
trouve le curseur. On peut soit réécrire ce terme soit sélectionner un autre
terme déjà utilisé auparavant via la fenêtre history.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Déclaration 5-39
Guide de programmation SPS - 18VRS
Nouveau Texte
Texte qui doit remplacer le texte recherché. Un contrôle de convenance
est effectué afin que le nouveau texte puisse assumer la tâche du texte
précédent
• Eléments:
[X]
Variables et constantes
[ ]
Repère
[ ]
Bloc fonctionnel
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments peuvent être sélectionnés.
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas sélectionnables (grisés)
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc.
[ ]
mots complets seulement
[ ]
avec demande
En options, on peut demander au système d'ignorer les majuscules et
minuscules et de ne rechercher que des mots complets. Par ailleurs, il est
également possible de demander qu'une confirmation soit effectuée avant
chaque remplacement.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
à partir du curseur
( )
tout autour
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée, tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la direction ou inversement sur toute la zone
Si on utilise l'instruction <Ctrl>+<Q><A>, il est judicieux de prévoir l'ouverture d'une fenêtre avec demande de confirmation par l'utilisateur avant
tout échange d'une possibilité d'édition.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
5-40 Déclaration
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRS Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-1
6 Organigramme séquentiel (SFC) SEQUENTIAL
FUNCTION CHART
Les éléments SFC permettent une structuration de différentes séquences
d'évolution à l'intérieur des blocs fonctionnels et des programmes.
Les séquences sont pourvues d' "étapes" et de "transitions" reliés les uns
aux autres par des lignes fléchées.
A l'intérieur des séquences, il est également possible de réaliser des
branchements alternatifs (OU) comme des branchements parallèles (ET).
La figure suivante illustre le classement de la structure SFC lors de la
création de programmes ou de blocs fonctionnels.
+------------------- TABLEAU IO ------------------+ 1. Tableau IO
¦ N° LWL- I/O Canal
1
2
¦
Définition de la configuration
¦ Boucle Type 0123456789.0123456789.01234567890..¦
matérielle
¦ 1 1
RECO III.QQQ............................¦
(seulement avec programmes!)
+--------------------- IMPORTATION ---------------+ ¦
¦ IMPORT
FROM
Commentaire
¦..¦
¦ FUNCTION (*Fonctions définies par utilisateur*)¦..¦ 2. Importation de types de
¦ NAND8
(*Fonction NAND avec 8 entrées*)
¦..¦
de données(TY),
¦ NOR8
(*Fonction NOR avec 8 entrées *)
¦..¦
Fonctions (FK) et
¦
¦..¦
Blocs fonctionnels (FB)util.
¦ FU+------------------- DECLARATION -----------------+
avant leur utilisation
¦ A¦ Nom
AT
TYPE
:=
Commentaire
¦
¦ B¦ VAR_INPUT (* Déclaration des entrées
*) ¦ 3a.Déclaration de variables
¦ C¦ ON
%E0.1.1
(* Introducteur
*)
¦
et blocs fonctionnels
+---¦ ALARME %E2.5.2
(* Capteur
*) ¦
(FB et fb) avant leur
¦ END_VAR
¦
utilisation
¦
¦ 3b.Nouvelle création de
¦ VAR_OUTPUT (* Déclaration des sorties
*) ¦
de types de données utilisateur
________________________ SFC ______________________¦
¦
+-----+
¦ ¦ 4. Entrée de la structure SFC
¦
¦ S10 +...
¦ ¦
pour structuration du
¦
+-----+
¦ ¦
programme (PR) ou du
¦
+--------------+
¦ ¦
bloc fonctionnel (FB)
¦
+ T10
+ T14
¦ ¦
(Avec les fonctions, l'utilisation
¦
+-----+
+-----+
¦ ¦
d'éléments SFC n'est
¦
¦ S11 +...
¦ S15 +...
¦-+
pas autorisée.)
¦
+-----+
+-----+
¦
¦
+ T11
+ T15 +-----BLOCS D'ACTION ----+
¦
+-----+
+-----+ ¦ +--------------------+ ¦
¦
¦ S13 +...
¦ S16 +----B N ¦
¦URG.MAX ¦ ¦
¦
+-----+
+-----+ ¦ +---+-------+--------¦ ¦
¦
+ T13
+ T16 ¦ ¦ S ¦
¦ACCELER.¦ ¦
¦
+--:-----------+
¦ +---+-------+--------¦ ¦
¦__________:_________________¦ ¦ L ¦ T#10s ¦LD2
¦.........
:
¦ +--------------------+ ¦
:
V
+------------------------+
:
+--------------- IL ----------+
:
+-------------- LD -----------+ ¦ 5. Addition de blocs
:
+------------- FBD ------------+ ¦ ¦
d'actions, qui contiennent des
:
¦
+---+
¦ ¦ ¦
variables, lignes d'instructions IL, :
¦ ON -¦& ¦
+---+
¦ ¦ ¦
des réseaux LD ou FBD
:
¦ M4 -O
+---¦>=1¦
¦ ¦ ¦
en tant qu'actions, au droit d'étape V
¦
+---+
¦
¦
¦ ¦ ¦
+--------------- IL -----------------+
¦
MOTEUR -¦
+-- T13
¦ ¦-+ +--------- ----- FBD -----------------+ ¦
¦
+---+
¦-+ +------------- LD --------------------+ ¦ ¦
+------------------------------+
¦
¦ ON
ALARME
MOTEUR
¦
¦ ¦ ¦
7. Entrée des conditions de
¦
+-¦ +---¦/+--------( )¦
¦ ¦ ¦
poursuite de commutation
¦
¦
¦
¦
¦ ¦ ¦
(Transitions) avec
¦
¦ TEM ¦
¦
¦ ¦ ¦
l'éditeur LD,FBD
¦
+-¦/+-+
¦
¦ ¦-+
ou IL
¦
¦-+
ou bien par entrée
+-----------------------------+
directe des variables
6. Exécution des actions avec l'éditeur
LD, FBD ou IL
Fig. 6-1:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Création d'un programme ‘PR’ ou d'un bloc fonctionnel ‘FB’ en utilisant
des éléments SFC.
6-2 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART Guide de programmation SPS-18VRS
6.1 Eléments de base
Etapes (STEP)
L'étape est un élément de base de l'organigramme
A chaque étape, on peut déclencher
• zéro,
• une ou
• plusieurs actions (voir chapitre 7, blocs d'actions).
Si un programme est en cours sur la commande, chaque étape est alors ou
• active ou bien
• inactive.
Etape initiale
A l'intérieur d'une séquence, la première étape joue toujours en tant
qu'étape de démarrage un rôle particulièrement important. Elle est
désignée par étape initiale de la séquence. C'est dans l'étape initiale que
commence et se ferme à nouveau chaque séquence.
Si une autre étape est inscrite avant l'étape initiale, c'est cette nouvelle
étape qui assumera alors la fonction d'étape initiale.
Chaque étape, étape initiale comprise, reçoit un nom composé au
maximum de 9 caractères
Un commentaire est demandé après l'entrée du nom de l'étape.
Etape sEtape1
Etape initiale sINIT
+---------+
¦sEtape1¦
+---------+
Etape sEtape2 (n'est pas encore remplie)
+---------+
¦sINIT
¦
---------+
+---------+
?sEtape¦
+---------+
Transitions (TRANSITION)
La transition est le second élément de base de l'organigramme séquentiel
Chaque transition est assujettie à une condition (réceptivité) qui détermine le
tracé suivi par la commande d'une ou de plusieurs étapes en amont de cette
transition vers une ou plusieurs étapes en aval le long de lignes fléchées. Si la
condition de transition est satisfaite, le passage peut s'effectuer.
La condition de réceptivité peut être définie en:
•
•
•
liste d'instructions (IL)
langage à contacts (LD) ou
bloc fonctionnel (FBD).
A l'intérieur d'une condition, il est également possible d'utiliser des
fonctions. Une condition de transition non remplie est définie en tant que
condition satisfaite en permanence.
Chaque transition a un nom de 9 caractères au maximum. Un
commentaire est demandé après entrée du nom de la transition, mais on
peut ignorer cette requête (<Enter>). Si le nom est entré une seconde
fois, le système suppose automatiquement le même contenu, un nouveau
commentaire sur l'emplacement d'utilisation sera toutefois demandé.
Transition tTransit1
+ tTransit1
Alternativement, il est possible d'entrer directement certaines variables
booléennes ou les constantes TRUE (VRAI c'est-à-dire toujours satisfaites)
ou FALSE (FAUX c'est-à-dire jamais satisfaites).
Transition avec la variable
bool_var
Transition avec la variable négativée
n
bool_var
B+ bool_var
B+ bool_var
Transition, toujours satisfaite
Transition, jamais satisfaite
B+ TRUE
B+ FALSE
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRS Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-3
Lignes fléchées
A l'intérieur d'une séquence, la direction de l'évolution est prédéfinie par des
lignes fléchées. Une séquence se traite de haut en bas ou de la gauche
vers la droite. Des sauts peuvent exister à l'intérieur d'une séquence.
Pour des raisons de clarté, il n'existe toutefois aucune intersection entre les
différentes lignes fléchées d'une séquence.
Saut à l'étape sStepn
Evolution de gauche à droite
---->
---->
¦
V
sStepn
V
Saut à la transition tTransitn
¦
V
tTransitn
V
Séquences alternatives.
Les séquences d'évolutions alternatives commencent toujours après le
point de branchement avec une transition et se terminent toujours par une
transition. Une séquence d'évolution alternative peut en cas extrême ne
comporter qu'une seule transition.
En partant d'une étape (voir exemple – étape sA1), la séquence se
ramifie en fonction de la condition de transition satisfaite.
Avec la transition:
• tA1 vers l'étape sB1,
• tC1 vers l'étape sD1et
• tE1 vers l'étape sA1 (Saut).
Si les conditions de plusieurs transitions sont satisfaites simultanément,
c'est la séquence qui se trouve le plus loin à gauche qui sera poursuivie.
Exemple:
Les conditions des transitions tC1 et tE1 sont satisfaites simultanément,
la séquence va évoluer vers l'étape sD.
+<tE1<
+-----+
¦ sA1 ¦
+-----+
+-------->--------->+
+tA1
+tC1
+tE1
+-----+
+-----+
V
¦ sB1 ¦
¦ sD1 ¦
sA1
+-----+
+-----+
:
:
+-----+
+-----+
¦ sC1 ¦
¦ sE1 ¦
+-----+
+-----+
+tB1
+tD1
+<--------+
Les séquences normales sont à nouveau regroupées après les
transitions finales (tB1 ou tD1) (voir exemple). Dans le cas exceptionnel
Saut, le point d'entrée du saut (voir exemple avant étape sA1) est
caractérisé par une flèche et le nom de l'élément de sortie du saut (voir
exemple Transition tE1).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-4 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART Guide de programmation SPS-18VRS
Séquences parallèles
Après une transition commune s'effectue le passage à deux ou plusieurs
séquences exécutables parallèlement dans le temps.
Les séquences d'évolution commencent et se terminent avant le
regroupement avec une étape.
+-----+
¦ sA2 ¦
+-----+
+tA2
¦-------->+
+-----+
+-----+
¦ sB2 ¦
¦ sC2 ¦
+-----+
+-----+
:
:
+-----+
+-----+
¦ sD2 ¦
¦ sE2 ¦
+-----+
+-----+
¦<--------+
+tB2
Si la condition de transition tA2 est satisfaite et l'étape antérieure sA2
active, sB2 et sC2 seront activées.
Chaque séquence d'évolution
indépendamment l'une de l'autre.
est
exécutée
simultanément,
mais
Le regroupement est piloté par la transition commune tB2; il s'effectue
après exécution des deux séquences et satisfaction de la condition de
transition.
Lois d'exécution
Séquence composée de
Etape/Transition/Etape
Lorsqu'une séquence d'évolution est démarrée, la première étape, l'étape
initiale, est activée. Ensuite, le déroulement de l'exécution se présente
comme illustré par la figure ci-après d'une chaîne simple sans
branchement.
+-----+
¦ sA3 ¦
+-----+
+tA3
+-----+
¦ sB3 ¦
+-----+
A condition que l'étape sA3 soit active, la condition qui correspond à la
transition tA3 est alors calculée. Si cette condition n'est pas satisfaite,
c'est-à-dire logique 0, l'étape sA3 reste active.
Si elle est remplie, c'est-à-dire logique 1, la transition commute et l'étape
suivante sB3 est activée. Parallèlement, l'étape sA3 est désactivée.
Exécution avec
branchement alternatif
Dans la séquence d'évolution alternative présentée ci-après, l'étape sA4
est supposée active. Le calcul des transitions s'effectue à partir de la
gauche dans l'ordre tA4, tB4, tC4.
En l'absence totale de réceptivité, l'étape sA reste active.
Si une condition est reconnue satisfaite, l'étape suivante est activée et
l'étape sA4 désactivée.
Ensuite, il n'y aura plus aucun traitement d'autres transitions appartenant
à ce branchement, étant donné que l'étape qui précède sA4 n'est plus
active.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRS Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-5
+<tC4<
+-----+
¦ sA4 ¦
+-----+
+-------->--------->+
+tA4
+tB4
+tC4
+-----+
+-----+
V
¦ sB4 ¦
¦ sC4 ¦
sA4
+-----+
+-----+
Le regroupement de séquences alternatives ou d'un point d'entrée de
saut ne représente pour l'exécution aucune particularité.
Exécution avec
branchement parallèle
Dans la séquence d'évolution avec branchement conjonctif telle que
représentée ci-après, l'étape sA5 est supposée active. La réceptivité à la
transition tA5 est alors calculée.
Si cette condition n'est pas satisfaite, c'est-à-dire logique 0, l'étape sA5
reste active. Si elle est remplie, c'est-à-dire logique 1, la transition
commute et les étapes suivantes (voir fig. sB5 et sC5) sont activées.
Parallèlement, l'étape sA5 est désactivée.
+-----+
¦ sA5 ¦
+-----+
+tA5
¦-------->+
+-----+
+-----+
¦ sB5 ¦
¦ sC5 ¦
+-----+
+-----+
Après passage du branchement parallèle, une étape active se trouve dans
chaque séquence partielle parallèle. Toutes les étapes actives sont traitées
à l'intérieur d'un cycle SPS une fois exactement de la gauche vers la droite.
Exécution du regroupement
des séquences parallèles
Le regroupement des séquences parallèles est explicité par la figure
suivante.
L'étape sF6 ne peut être activée que si la condition de la transition tB6 qui
se trouve en amont est satisfaite et toutes les étapes précédentes (sD6 et
sE6) activées. L'étape sF6 désactive après son activation les étapes qui
la précèdent sD6 et sE6.
Si l'une des étapes précédentes n'est pas activée et / ou la condition de
transition non remplie, sF6 ne peut pas être activée.
:
:
+-----+
+-----+
¦ sD6 ¦
¦ sE6 ¦
+-----+
+-----+
¦<--------+
+tB6
+-----+
¦ sF6 ¦
+-----+
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-6 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART Guide de programmation SPS-18VRS
6.2 Entrées de séquences dans l'éditeur SFC
Le travail dans l'éditeur SFC sera tout d'abord démontré à l'aide d'un
exemple simple, à savoir celui de la commande des modes de
fonctionnement pour un robot SCARA.
Une explication des possibilités d'insertion d'étapes, transitions,
branchements et regroupements est donnée ci-après. Ensuite, on a exposé
les possibilités d'effacement. En conclusion, on a illustré le travail avec les
instructions blocs à l'aide de différents exemples
La séquence suivante parle d'elle-même.
+---------+
?INIT
¦
+---------+
+INIT_OK
+---------+
?POWER_ON ¦
+---------+
+------------------------------------->+
+POWER_OK
+POW_NOK2
+<NEW_MODE
¦
+---------+
¦
?ES1
¦
¦
+---------+
¦
+----------->------------>+
¦
B+IAUTO
B+ISEMI
B+ISETUP
¦
+---------+ +---------+ +---------+
¦
?AUTO
¦ ?SEMI
¦ ?SETUP
¦
¦
+---------+ +---------+ +---------+
¦
+NO_AUTO
+NO_SEMI
+NO_SETUP
¦
+<------------<------------<-----------+
+---------+
?ES2
¦
+---------+
+----------->+
/B+MXPOWERON
+NEW_MODE
+---------+
V
?POWER_OFF¦
ES1
+---------+
V
B+TRUE
V
INIT
V
Etapes
INIT Initialisation générale, effacement d'erreur, préparation ampli
POWER_ON
Mise en marche de l'ampli de puissance
ES1
Attend sélection mode de fonctionnement ou erreur ampli
AUTO
Mode pas à pas automatique
SEMI
Mode pas à pas
SETUP
Mode manuel
ES2
Attend sélection mode de fonctionnement ou arrêt
POWER_OFF
Arrêt ampli
Transitions
INIT_OK
POWER_OK
POW_NOK2
NO_AUTO
NO_SEMI
NO_SETUP
NEW_MODE
Init OK et validation de l'organigramme effectuée?
Mise en marche ampli effectuée suivant plan?
Erreur en cours de mise en marche?
Automatique déconnecté?
Mode pas à pas déconnecté?
Mode manuel déconnecté?
Sélection nouveau mode de fonctionnement?
Variables booléennes en tant que transitions
IAUTO
Valider automatique?
ISEMI
Valider mode pas à pas?
ISETUP
Valider mode manuel?
MXPOWERON
Arrêter ampli?
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRS Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-7
Entrée d'un SFC simple
Le présent chapitre explicite de façon plus détaillée la stratégie
opérationnelle fondamentale de l'éditeur de structures.
Il est supposé que l'importation des FB/FK/TY utilisateur et la déclaration
des variables telle que représentée ci-après ont été effectuées en tant que
conditions pour la poursuite de commutation dans les transitions.
Fig. 6-2:
Déclaration des variables utilisées en tant que condition pour la
poursuite de la commutation
Lorsqu'on entre une nouvelle structure SFC à l'intérieur d'un programme ou
d'un bloc fonctionnel, un écran vierge apparaît tout d'abord.
L'utilisateur doit porter son attention sur la ligne 3, sur la fenêtre principale
de l'éditeur et sur l'avant-dernière ligne avec les instructions de pied de
page actuellement possibles.
La ligne 3 contient le nom du programme ou du bloc fonctionnel actuel ainsi
que la position du curseur bloc qui se trouve dans la fenêtre principale et qui
marque l'élément actuel. Le mode de fonction Insertion et le type
d'adressage symbolique ne peuvent pas être modifiés.
Dans l'avant-dernière ligne, les instructions de pied de page respectivement
possibles sont affichées. Le contenu de cette ligne change en permanence
en fonction des besoins.
Instructions de pied de page
<1>
Insertion d'une paire Etape/Transition ou Transition/Etape
<2>
Ouvrir/Fermer un branchement parallèle (ET-Branchement)
<3>
Ouvrir/Fermer un branchement alternatif (OU-Branchement)
<9>
Commutation Insertion avant/Insertion après
<0>
Edition de noms d'étape et de transition ainsi que de commentaires
Sur la Fig. 6-3: SFC avec étape d'initialisation, transition et saut à l'étape
initiale est indiquée la seule possibilité existant pour le moment pour une
entrée de l'étape d'initialisation et pour l'entrée consécutive de la transition
au moyen de la touche <1>.
Pour chacune de ces entrées, il faut compléter le nom et les commentaires
correspondant sur l'étape et la transition. Si aucun commentaire n'est
désiré, il faut quitter le champ commentaire avec la touche <Enter>.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-8 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART Guide de programmation SPS-18VRS
Séquence d'entrée
<1>INIT<Enter>
Initialisation générale, Effacer erreur, Préparer ampli ...<Enter>
INIT_OK<Enter>
Init OK et validation de la séquence effectuée?<Enter>
Fig. 6-3: SFC avec étape d'initialisation, transition et saut à l'étape initiale
Avec la combinaison de touches <Ctrl>+<F6>, on peut, sur le bord
inférieur de la fenêtre, faire apparaître en permanence le commentaire
sur l'étape actuelle et/ou sur la transition actuelle.
Le point d'interrogation qui se trouve devant le nom respectif rappelle que
l'élément n'est pas encore rempli.
Ensuite, on entre la séquence complète du chemin principal sans tenir
compte des branchements ou regroupements prévus.
Séquence d'entrée
<1>POWER_ON<Enter>
Mise en marche ampli de puissance<Enter>
POWER_OK<Enter>
Mise en marche ampli effectuée suivant plan?<Enter>
<1>ES1<Enter>
Attend sélection mode de fonctionnement ou erreur ampli<Enter>
IAUTO<Enter>
Variable booléenne!!
Automatique validé?<Enter>
<1>AUTO<Enter>
Mode pas à pas automatique<Enter>
NO_AUTO<Enter>
Automatique déconnecté?<Enter>
<1>ES2<Enter>
Attend sélection mode de fonctionnement ou arrêt?<Enter>
MXPOWERON<Enter>
Variable booléenne!!
Arrêter ampli?<Enter>
<4>
Négation des variables
booléennes!!
<1>POWER_OFF<Enter>
Arrêter ampli<Enter>
TRUE<Enter> <Enter>
Aucun commentaire!!
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRS Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-9
Fig. 6-4: Séquence du chemin principal
L'entrée se poursuit conformément à la figure suivante:
Séquence d'entrée
⇒ Curseur sur transition POWER_OK
<3>POW_NOK2<Enter>
Erreur lors de la mise en marche?<Enter>
Fig. 6-5: Branchement alternatif
La branche ouverte doit être fermée en premier. Si le curseur se trouve sur
une transition et s'il est déplacé sur des étapes ou des transitions déjà
entrées, on peut voir qu'en dessous de la transition respective, le système
offre dans la ligne des instructions de pied de page de fermer l'alternative
En dessous de la transition NO_AUTO, le branchement est fermé.
Séquence d'entrée
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
⇒ Curseur sur transition NO_AUTO
<3>
6-10 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Fig. 6-6: Fin de la séquence alternative.
En fonction de la tâche fixée, la structure sera élargie des étapes
alternatives modes de fonctionnement SEMI et SETUP.
Séquence d'entrée
⇒ Curseur sur transition IAUTO
<3>ISEMI<Enter>
Valider mode pas à pas?<Enter>
<1>SEMI<Enter>
Mode pas à pas<Enter>
NO_SEMI<Enter
Mode pas à pas arrêté?<Enter>
Curseur sur transition NO_AUTO
<3>
⇒ Curseur sur transition ISEMI
<3>ISETUP<Enter>
Valider mode manuel?<Enter>
<1>SETUP<Enter>
Mode manuel<Enter>
NO_SETUP<Enter
Mode manuel arrêté?<Enter>
Variable booléenne!!
Variable booléenne!!
⇒ Curseur sur transition NO_SEMI
<3>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-11
Fig. 6-7: Fin de l’alternative
Le renvoi faisant encore défaut pour modification du mode de
fonctionnement suit à présent:
Séquence d'entrée
⇒ Curseur sur transition MXPOWERON
<3>
NEW_MODE<Enter
Nouveau mode de fonctionnement sélectionné?<Enter>
⇒ Curseur sur transition POWER_OK
<3>
Fig. 6-8: Renvoi
La structure est fermée conformément à la Fig. 6-8: Renvoi
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-12 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Insertion d'étapes (S), de transitions (T), de branchements (V) et de
regroupements (Z)
On désire ajouter d'autres éléments à une séquence déjà existante Pour
ce faire, les pieds de page actuels de l'éditeur ainsi que la séquence initiale
sont affichés, les suites de touche nécessaires nommées et la nouvelle
séquence définie. Les points de sortie sont représentés par l'étape sb suivi
de la transition tB.
<0>
Edit permet de modifier le nom de l'élément actuel et ensuite son
commentaire.
<9>
commute le pied de page: en amont/en aval
Exemples
Pied de page:
1-T/S en bas 2-ET_ V à droite
9-en amont
Après activation de la touche <1> , le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
+tC
1-T/S en bas
----------->
1
0-Edit
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
?+¦¦¦¦¦¦
-----+
?
¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
Pied de page (après activation de la touche <9>):
1-S/T en haut 2-ET_ V à gauche
9-à l'aval
Après activation de la touche <1> , le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
+tC
2
1-S/T en haut
----------->
0-Edit
-----+
¦ sA ¦
+-----+
+tA
-----+
?¦¦¦¦¦¦
+-----+
?+
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-13
Si le curseur bloc est déplacé de l'étape sB sur la Transition tB avant
confirmation de la touche de pied, les possibilités suivantes sont
données:
Exemples
Pied de page:
1-S/T en bas 3-OU_ V à droite
9-en amont
Après activation de la touche <1> , le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
¦¦¦ +tB¦¦
-----+
¦ sC ¦
+-----+
+tC
0-Edit
-----+
¦ sA ¦
+-----+
+tA
1-S/T en bas
----------->
3
¦ sB ¦
+-----+
+tB
-----+
?¦¦¦¦¦¦
+-----+
?+
-----+
¦ sC ¦
+-----+
+tC
Pied de page (après activation de la touche <9>):
1-T/S en haut 3-OU_ V à gauche
9-à l'aval
Après activation de la touche <1> , le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
¦¦¦ +tB¦¦
-----+
¦ sC ¦
+-----+
+tC
4
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
1-T/S en haut
----------->
0-Edit
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
?+¦¦¦¦¦
-----+
?
¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
6-14 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
L’ouverture de branchements peut s’effectuer de la droite ou de la gauche
à partir de la position actuelle du curseur.
Exemples
Pied de page:
1-T/S en bas 2-ET_ V à droite
9-en amont
Après activation de la touche <2> , le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
0-Edit
-----+
¦ sA ¦
+-----+
+tA
>
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
ou
>
-----+
¦ sC ¦
+-----+
2-ET_V à droite -----+
--------------> ³ sB ¦
+-----+
-----+
¦ sA ¦
+-----+
+tA
>
-----+
?¦¦¦¦¦¦
+-----+
-----+
³ sC ¦
+-----+
-----+
¦ sA ¦
+-----+
+tA
>
-----+
¦ sB ¦
+-----+
>
¦ -----+¦
¦¦ sC ¦¦
¦+-----+¦
2-ET_V à droite -----+
--------------> ³ sB ¦
+-----+
>
-----+
³ sC ¦
+-----+
-----+
?¦¦¦¦¦¦
+-----+
5
Pied de page (après activation de la touche <9>):
1-S/T en haut 2-ET_ V à gauche
9-à l'aval
Après activation de la touche <2>, le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
+tA
0-Edit
-----+
¦ sA ¦
+-----+
+tA
>
6
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
>
-----+
¦ sC ¦
+-----+
2-ET_V à gauche -----+
--------------> ?¦¦¦¦¦¦
+-----+
>
-----+
³ sB ¦
+-----+
-----+
³ sC ¦
+-----+
Si on insère une branche vers la gauche, cette ramification sera ensuite
nécessairement refermée automatiquement dans la colonne 1. En cas de
besoin, elle peut être élargie.
Une extension vers la gauche peut également être engendrée à partir de
chaque autre étape.
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sA ¦
+-----+
+tA
>
7
-----+
¦ sB ¦
+-----+
>
¦ -----+¦
¦¦ sC ¦¦
¦+-----+¦
2-ET_V à gauche -----+
--------------> ³ sB ¦
+-----+
>
-----+
?¦¦¦¦¦¦
+-----+
-----+
³ sC ¦
+-----+
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-15
Si le curseur bloc est déplacé de l'étape sB sur la Transition tB avant
confirmation de la touche de pied, les possibilités suivantes sont
données:
Exemples
Pied de page:
1-S/T en bas 3-OU_ V à droite
9-en amont
Après activation de la touche <3>, le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
0-Edit
-----+
¦ sA ¦
+-----+
>
¦¦¦ +tA¦¦
+tB
3-OU_V à droite
--------------->
>
>
+tA
?+¦¦¦¦¦
+tB
ou
-----+
¦ sA ¦
+-----+
-----+
¦ sA ¦
+-----+
>
+tA
¦¦¦ +tB¦¦
8
3-OU_V à droite
--------------->
>
+tA
>
+tB
?+¦¦¦¦¦
Pied de page (après activation de la touche <9>):
1-T/S en haut 3-OU_ V à gauche
9-à l'aval
Après activation de la touche <3>, le passage ci-après est effectué:
-----+
¦ sA ¦
+-----+
0-Edit
-----+
¦ sA ¦
+-----+
>
9
¦¦¦ +tA¦¦
+tB
3-OU_B à gauche
--------------->
>
?+¦¦¦¦¦
>
+tA
+tB
Si on insère une branche vers la gauche, cette ramification sera ensuite
nécessairement refermée automatiquement dans la colonne 1. En cas de
besoin, elle peut être élargie.
Une extension vers la gauche est possible à partir de n'importe quel autre
point.
-----+
¦ sA ¦
+-----+
-----+
¦ sA ¦
+-----+
>
+tA
¦¦¦ +tB¦¦
3-OU_B à gauche
--------------->
>
+tA
>
?+¦¦¦¦¦
+tB
10
En complément, on trouvera les possibilités de fermeture des
branchements. Elles ont la particularité de ne permettre qu'une seule offre
dans le pied de page si un branchement correspondant existe.
Pour la fermeture d'une branche parallèle, une autre branche parallèle est
supposée ouverte en un autre endroit. La branche parallèle ne peut être
fermée qu'après une étape ou avant une transition.
Pied de page:
1-T/S en bas
2-ET_ Z en bas
¦ sA ¦
+-----+
+tA
9-en amont
0-Edit
¦ sA ¦
+-----+
+tA
>
11
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
³
+tB
-----+
¦ sC ¦
+-----+
+tC
>
-----+
¦ sC ¦
+-----+
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
2-ET_Z en bas ¦ -----+¦
-------------> ¦ sB ¦¦
¦+-----+¦
-----+
sC ¦
+-----+
<
+tB
-----+
¦ sC ¦
+-----+
+tC
6-16 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
A partir de la transition ‘tB', on peut obtenir le même effet après activation
de la touche <9>, Commutation pieds de page.
Pied de page:
1-T/S en haut 2-ET_ Z en haut
9-en amont
-----+
¦ sA ¦
+-----+
+tA
0-Edit
-----+
¦ sA ¦
+-----+
+tA
>
-----+
¦ sB ¦
+-----+
>
Ú-----+
¦ sC ¦
+-----+
2-ET_Z en haut ¦ -----+¦
-------------> ¦ sB ¦¦
¦+-----+¦
-----+
sC ¦
+-----+
<
12
¦¦¦ +tB¦¦
-----+
¦ sC ¦
+-----+
+tC
+tB
-----+
¦ sC ¦
+-----+
+tC
Pour la fermeture d’une branche alternative, une autre branche alternative
est supposée ouverte en un autre endroit.
La branche alternative ne peut être fermée qu'après une transition ou avant
une étape.
Pied de page:
1-S/T en bas
3-OU_ Z en bas
9-en amont
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tA
-----+
¦ sB ¦
+-----+
¦¦¦+tB¦¦
-----+
¦ sC ¦
+-----+
+tC
V
sInit
V
13
0-Edit
>
+tE
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
+tG
+tH
V
sA
V
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
3-ODER_Z unten
-------------> +tA
+tE
-----+
-----+
¦ sB ¦
¦ sD ¦
+-----+
+-----+
¦¦¦+tB¦¦
+tF
-----+
¦ sE ¦
+-----+
+tG
<-------------+
¦ sC ¦
+-----+
+tC
V
sInit
V
>
+tH
V
sA
V
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-17
A partir de l'étape ‘sD', on peut obtenir le même effet après activation de
la touche <9>, Commutation pieds de page.
Pied de page:
1-T/S en haut 3-OU_ Z en haut
9-en amont
sInit
0-Edit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tA
-----+
¦ sB ¦
+-----+
+tB
¦ -----+¦
¦¦ sC ¦¦
¦+-----+¦
+tC
V
sInit
V
>
+tE
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
+tG
14
+tH
V
sA
V
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
3-OU_Z en haut
------------> +tA
+tE
-----+
-----+
¦ sB ¦
¦ sD ¦
+-----+
+-----+
¦¦¦+tB¦¦
+tF
-----+
¦ sE ¦
+-----+
+tG
<-------------+
¦ sC ¦
+-----+
+tC
V
sInit
V
>
+tH
V
sA
V
Effacement d’Etapes(S), Transitions (T) et branchements (V)
L'effacement d'étapes, transitions et branchements est possible avec les
combinaisons de touches suivantes:
<BS> / <CursorLeft> ou
<Ctrl>+<H>
<Entf> / <Del> ou
<Ctrl>+<G>
Effacement de l'élément actuel et du précédent
Effacement de l'élément actuel et de l'élément suivant
<Ctrl>+<T>
Ouverture de la branche actuelle
<Ctrl>+<Y>
Effacement de la branche actuelle
L'effacement d'éléments SFC dans l'éditeur SFC
⇒ entraîne
simultanément
un
effacement
des
commentaires, conditions de transition et blocs
d'actions correspondants. (à partir de la version 17
ATTENTION
cette opération ne s'effectue qu'après interrogation!)
Les exemples ci-après entendent illustrer l'effet des touches.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-18 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Effacement d'étapes et de
transitions
-----+
¦ sA ¦
+-----+
+tA
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
+tC
<BS> ou <Ctrl>H
----------------->
¦ -----+¦
¦¦ sA ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
+tC
ou
15
-----+
¦ sA ¦
+-----+
+tA
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
+tC
-----+
¦ sA ¦
+-----+
+tA
<Entf>/DEL ou <Ctrl>G
¦ -----+¦
----------------------> ¦¦ sC ¦¦
¦+-----+¦
+tC
Si le curseur est positionné sur la transition tB, les graphiques
analogiques suivants sont représentés
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
¦¦¦ +tB¦¦
-----+
¦ sC ¦
+-----+
+tC
<BS> ou <Ctrl>H
----------------->
-----+
¦ sA ¦
+-----+
¦¦¦ +tA¦¦
-----+
¦ sC ¦
+-----+
+tC
ou
16
-----+
¦ sA ¦
+-----+
+tA
-----+
¦ sB ¦
+-----+
¦¦¦ +tB¦¦
-----+
¦ sC ¦
+-----+
+tC
-----+
¦ sA ¦
+-----+
+tA
-----+
<Entf>/DEL ou <Ctrl>G
----------------------> ¦ sB ¦
+-----+
¦¦¦ +tC¦¦
La disparition du dernier élément (étape ou transition) entraîne la
disparition simultanée de la possibilité d'embranchement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-19
L'ouverture d'une branche présuppose, dans le cas des séquences
alternatives comme dans le cas de séquences parallèles, que la structure
SFC ait été complètement fermée auparavant, étant donné qu'elle ne peut
être ouverte qu'en un seul point. La branche ouverte peut ensuite être
écourtée, prolongée ou à nouveau fermée en un autre point autorisé.
La position du curseur à l'intérieur de la branche à ouvrir n'a aucune
importance.
Ouverture d'une branche où se
trouve le curseur
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
>
+tA
-----+
¦ sB ¦
+-----+
+tB
17
¦¦¦ +tE¦¦
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
+tG
<-------------+
¦ sC ¦
+-----+
+tC
V
sInit
V
<Ctrl>T
------->
>
+tA
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
V
sInit
V
sInit
sInit
+tA
+tA
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
18
+tH
V
sA
V
-----+
¦ sD ¦
+-----+
¦¦¦ +tF¦¦
-----+
¦ sE ¦
+-----+
+tC
V
sInit
V
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
<Ctrl>T
-------->
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
V
sInit
V
>
+tE
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
¦¦¦ +tG¦¦
-----+
¦ sD ¦
+-----+
+tF
¦ -----+¦
¦¦ sE ¦¦
¦+-----+¦
+tH
V
sA
V
6-20 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
L'effacement d'une branche présuppose, dans le cas des séquences
alternatives comme dans le cas des séquences parallèles, que la structure
SFC ait été complètement fermée auparavant.
La position du curseur à l'intérieur de la branche à effacer n'a aucune
importance.
Effacement de la branche où se
trouve le curseur
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tA
-----+
¦ sB ¦
+-----+
+tB
19
¦¦¦ +tE¦¦
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
+tG
<-------------+
¦ sC ¦
+-----+
+tC
V
sInit
V
>
+tH
V
sA
V
<Ctrl>Y
------->
sInit
sInit
+tA
¦ -----+¦
¦¦ sB ¦¦
¦+-----+¦
+tB
-----+
¦ sC ¦
+-----+
20
+tC
V
sInit
V
>
¦¦¦ +tH¦¦
V
sA
V
+tA
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
+tC
V
sInit
V
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
<Ctrl>Y
-------->
+tA
¦ -----+¦
¦¦ sD ¦¦
¦+-----+¦
+tF
-----+
¦ sE ¦
+-----+
+tC
V
sInit
V
L'étape initiale ne doit, pour sa part, être effacée qu'en dernier.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-21
Instructions bloc dans l'éditeur SFC
Le but des instructions bloc est d'économiser du travail en ce qui
concerne les nouvelles entrées. Un bloc dans un organigramme SFC se
compose d'étapes, de transitions et de lignes fléchées. Par ailleurs, il peut
également contenir des branchements et des regroupements.
Un bloc comprend une ligne entrante et une ligne sortante. Pour l'éditeur
SFC, les opérations bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Marquer Début du bloc
<Ctrl>+<K><K>
Marquer Fin de bloc
<Ctrl>+<K><A>
SFC complet en tant que bloc
<Ctrl>+<K><H>
Masquer le bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><C>
Copier bloc, et compléter avec noms de nouvelles étapes
<Ctrl>+<K><W>
Ecrire le bloc
<Ctrl>+<K><R>
Lire le bloc
A partir de la version 16
Modification des limites de bloc admissibles!
ATTENTION
En fonction de son utilisation un bloc qui commence par une étape, peut
se terminer par une transition (cas A) ou par une étape(cas B).
De même, un bloc qui commence par une transition, peut se terminer par
une étape(cas C) ou par une transition (cas D).
Simples opérations en bloc
La présente section entend tout d'abord expliciter les différents
Instructions bloc à l'aide d'exemples simples, c'est-à-dire des types de
blocs A et B. Ensuite, la section suivante illustrera et expliquera des
possibilités plus approfondies et plus complexes.
Marquer début de bloc
<Ctrl>+<K><B>
En tant que début de bloc, le système accepte des étapes ou des transitions.
Le curseur bloc est donc à positionner sur une étape ou une transition,
ensuite on doit activer la combinaison de touches <Ctrl>+<K><B> (voir
figures suivantes).
Marquer fin de bloc
<Ctrl>+<K><K>
En tant que fin de bloc, le système accepte des étapes ou des transitions.
Le curseur bloc est donc à positionner sur une étapeou une transition, ensuite
on doit activer la combinaison de touches <Ctrl>+<K><K> (voir figures
suivantes).
Masquer le bloc
<Ctrl>+<K><H>
Le bloc marqué peut être masqué avec <Ctrl>+<K><H> puis être à
nouveau démasqué en activant une nouvelle fois cette combinaison de
touches.
Ecrire bloc
<Ctrl>+<K><W>
Le bloc marqué (type indifférent) est écrit sur le support de données sous la
forme d'un fichier ASCII.
En supplément, il est possible de sélectionner si seules les étapes, transitions,
et les informations d'enchaînement correspondantes doivent être archivées
ou bien si en même temps on désire stocker certains détails supplémentaires
(actions, blocs d'actions, conditions de transitions).
Lire bloc
<Ctrl>+<K><R>
Lecture du bloc sauvegardé en code ASCII. En fonction du type de bloc, il
sera inséré (Cas A ou Cas C) ou connecté parallèlement à l'élément actuel
(Cas B ou Cas D). En cas de besoins, de nouveaux noms d'étapes seront
demandés.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-22 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Marquer un bloc (Cas A)
commençant par l'étape sB et
finissant par la transition tC
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
21a
>
+tA
+tE
-----+
¦ -----+¦
¦ sD ¦
¦ sB ¦¦
¦+-----+¦
+-----+
+tB
+tF
-----+
-----+
¦ sC ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+tC
V
sInit
V
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tH
V
sA
V
>
+tA
+tE
-----+
¦ -----+¦
¦¦ sB ¦¦
¦ sD ¦
¦+-----+¦
+-----+
¦¦¦ +tB¦¦
+tF
-----+
¦ -----+¦
¦¦ sG ¦¦
¦ sE ¦
¦+-----+¦
+-----+
¦¦¦ +tC¦¦
+tG
<-------------+
¦ sG ¦
+-----+
+tC
V
sInit
V
⇒ Curseur sur l'étape sB
⇒ Curseur sur transition tC
Séquence opérationnelle
>
+tH
V
sA
V
<Ctrl>+<K><B>
<Ctrl>+<K><K>
Marquer un bloc (Cas C)
commençant par l'étape sB et
finissant par l'étape sC
21b
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tA
+tE
¦ -----+¦
-----+
¦ sB ¦¦
¦ sD ¦
¦+-----+¦
+-----+
+tB
+tF
-----+
-----+
¦ sC ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+tC
V
sInit
V
Séquence opérationnelle
>
+tH
V
sA
V
>
+tA
+tE
¦ -----+¦
-----+
¦¦ sB ¦¦
¦ sD ¦
¦+-----+¦
+-----+
¦¦¦ +tB¦¦
+tF
¦ -----+¦
-----+
¦¦ sC ¦¦
¦ sE ¦
¦+-----+¦
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+tC
V
sInit
V
⇒ Curseur sur l'étape sB
⇒ Curseur sur l'étape sC
>
+tH
V
sA
V
<Ctrl>+<K><B>
<Ctrl>+<K><K>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-23
Marquer un bloc (Cas C)
commençant par la transition tE
et finissant par l'étape sE
22a
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
>
+tA
¦¦¦ +tE¦¦
-----+
-----+
sB ¦
¦ sD ¦
+-----+
+-----+
+tB
+tF
-----+
-----+
¦ sC ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+ti
V
sInit
V
Séquence opérationnelle
+tH
V
sA
V
>
>
+tA
¦¦¦ +tE¦¦
-----+
¦ -----+¦
¦ sB ¦
¦ sD ¦¦
+-----+
¦+-----+¦
+tB
¦¦¦ +tF¦¦
-----+
¦ -----+¦
¦ sC ¦
¦¦ sE ¦¦
+-----+
¦+-----+¦
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+ti
V
sInit
V
⇒ Curseur sur transition tE
⇒ Curseur sur étape sE
+tH
V
sA
V
<Ctrl>+<K><B>
<Ctrl>+<K><K>
Marquer un bloc (Cas D)
commençant par la transition tE et finissant par la
transition tF
22b
sInit
sInit
+ti
<tH<
-----+
¦ sA ¦
+-----+
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
>
+tA
¦¦¦ +tE¦¦
-----+
-----+
sB ¦
¦ sD ¦
+-----+
+-----+
+tB
+tF
-----+
-----+
¦ sC ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+ti
V
sInit
V
Séquence opérationnelle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
+tH
V
sA
V
>
>
+tA
¦¦¦ +tE¦¦
-----+
¦ -----+¦
¦ sB ¦
¦ sD ¦¦
+-----+
¦+-----+¦
+tB
¦¦¦ +tF¦¦
-----+
-----+
¦ sC ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
<-------------+
¦ sG ¦
+-----+
+ti
V
sInit
V
⇒ Curseur sur transition tE
⇒ Curseur sur transition tF
+tH
V
sA
V
<Ctrl>+<K><B>
<Ctrl>+<K><K>
6-24 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Effacer bloc
<Ctrl>+<K><Y>
Le bloc marqué peut être effacé si une structure correcte existe dans le
résultat.
Effacement d'un bloc marqué
(Cas A) composé de sB, tB, sC
et tC
-----+
¦ sA ¦
+-----+
23
>
+tA
+tE
¦ -----+¦
-----+
¦¦ sB ¦¦
¦ sD ¦
¦+-----+¦
+-----+
¦¦¦ +tB¦¦
+tF
¦ -----+¦
-----+
¦¦ sC ¦¦
¦ sE ¦
¦+-----+¦
+-----+
¦¦¦ +tC¦¦
+tG
<-------------+
¦ sG ¦
+-----+
Séquence opérationnelle
Effacement d'un bloc marqué
(Cas B) composé de sB, tB et
sD
+-----+
¦ sA ¦
+-----+
+tA
¦-------->+
¦+-----+¦ +-----+
¦¦ sB ¦¦ ¦ sC ¦
¦+-----+¦ +-----+
¦¦ ¦+tB¦¦
+tC
¦+-----+¦ +-----+
¦¦ sD ¦¦ ¦ sE ¦
¦+-----+¦ +-----+
¦<--------+
+tB
Séquence opérationnelle
Effacement d'un bloc marqué
(Cas C) composé de tE, sD, tF
et sE
-----+
¦ sA ¦
+-----+
>
+tA
¦¦¦ +tE¦¦
-----+
¦ -----+¦
¦ sB ¦
¦ sD ¦¦
+-----+
¦+-----+¦
+tB
¦¦¦ +tF¦¦
-----+
¦ -----+¦
¦ sC ¦
¦¦ sE ¦¦
+-----+
¦+-----+¦
+tC
+tG
<-------------+
¦ sG ¦
24
+-----+
Séquence opérationnelle
-----+
¦ sA ¦
+-----+
>
¦¦¦ +tA¦¦
+tE
¦
-----+
¦
¦ sD ¦
¦
+-----+
¦
+tF
¦
-----+
¦
¦ sE ¦
¦
+-----+
¦
+tG
<-------------+
¦ sG ¦
+-----+
⇒ Curseur sur une position quelconque
<Ctrl>+<K><Y>
+-----+
¦ sA ¦
+-----+
+tA
+-----+
¦ sC ¦
+-----+
+tC
+-----+
¦ sE ¦
+-----+
+tB
⇒ Curseur sur une position quelconque
<Ctrl>+<K><Y>
-----+
¦ sA ¦
+-----+
>
+tA
¦¦¦ +tG¦¦
-----+
¦
¦ sB ¦
¦
+-----+
¦
+tB
¦
-----+
¦
¦ sC ¦
¦
+-----+
¦
+tC
¦
<-------------+
¦ sG ¦
+-----+
⇒ Curseur sur une position quelconque
<Ctrl>+<K><Y>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-25
Effacement d'un bloc marqué
(Cas D) composé de tA, sB, tB
et tC
-----+
¦ sA ¦
+-----+
24
-----+
¦ sA ¦
+-----+
¦¦¦ +tE¦¦
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
+tG
-----+
¦ sG ¦
+-----+
>
¦¦¦ +tA¦
+tE
¦ -----+¦
-----+
¦¦ sB ¦¦
sD ¦
¦+-----+¦
+-----+
¦¦¦ +tB¦¦
+tF
¦ -----+¦
-----+
¦¦ sC ¦¦
¦ sE ¦
¦+-----+¦
+-----+
¦¦¦ +tC¦¦
+tG
<-------------+
¦ sG ¦
+-----+
⇒ Curseur sur une position quelconque
Séquence opérationnelle
Un bloc ne peut être déplacé qu'en aval de la position marquée par le
curseur, c'est-à-dire que si un bloc commence par une étape, il ne peut
être inséré qu'après une transition et doit se terminer par une transition
(Cas A).
Si un bloc commence par une transition, il ne peut être inséré qu'après
une étape et doit se terminer par une étape(Cas C).
Les blocs suivant cas B et D ne se prêtent pas à un déplacement.
Déplacer bloc
<Ctrl>+<K><V>
Déplacer bloc (Cas A) après
transition tH
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
+tA
+tE
¦ -----+¦
-----+
¦¦ sB ¦¦
¦ sD ¦
¦+-----+¦
+-----+
¦¦¦ +tB¦¦
+tF
¦ -----+¦
-----+
¦¦ sC ¦¦
¦ sE ¦
¦+-----+¦
+-----+
¦¦¦ +tC¦¦
+tG
<-------------+
¦ sG ¦
25
+-----+
<Ctrl>+<K><Y>
+ti
<tC<
-----+
¦ sA ¦
+-----+
>
Séquence opérationnelle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
+tH
V
sA
V
>
+tA
+tE
¦
-----+
¦
¦ sD ¦
¦
+-----+
¦
+tF
¦
-----+
¦
¦ sE ¦
¦
+-----+
¦
+tG
<-------------+
¦ sG ¦
+-----+
>
¦¦ +tH¦¦
-----+
¦ sB ¦
+-----+
+tB
-----+
¦ sC ¦
+-----+
tC
V
sA
V
⇒ Curseur sur une transition (tH dans l’exemple)
Le bloc commence par une étape.
⇒ Activer la combinaison de touches <Ctrl>+<K><V>.
6-26 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Déplacer bloc (Cas C) après
l'étape sA
+ti
<tH<
-----+
¦ sA ¦
+-----+
>
>
+tA
¦¦¦ +tE¦¦
-----+
¦ -----+¦
¦ sB ¦
¦ sD ¦¦
+-----+
¦+-----+¦
+tB
¦¦¦ +tF¦¦
¦
¦ -----+¦
¦
¦¦ sE ¦¦
¦
¦+-----+¦
¦
+tG
<-------------+
¦ sG ¦
26
+-----+
Séquence opérationnelle
+tH
V
sA
V
+ti
<tH<
¦ -----+¦
¦¦ sA ¦¦
¦+-----+¦
+tE
-----+
¦ sD ¦
+-----+
+tF
-----+
¦ sE ¦
+-----+
>
+tA
+tG
-----+
¦
¦ sB ¦
¦
+-----+
¦
+tB
¦
<-------------+
¦ sG ¦
+-----+
>
+tH
V
sA
V
⇒ Positionner le curseur sur une étape (sA dans l'exemple)
Le bloc commence par une transition.
⇒ Activer la combinaison de touches <Ctrl>+<K><V>.
Pour des raisons graphiques, il se peut qu'on doive insérer une étape vide
avec transition toujours satisfaite ou une transition toujours satisfaite et une
étape vide.
Copier bloc
<Ctrl>+<K><C>
Un bloc peut être copié en aval de la position marquée par le curseur, c'està-dire que si un bloc commence par une étape, il ne peut être inséré
qu'après une transition et doit se terminer par une transition (Cas A).
Si un bloc commence par une transition, il ne peut être inséré qu'après une
étape et doit se terminer par une étape (Cas C).
Des blocs suivant Cas B (commençant et finissant par une étape) peuvent
être utilisés pour ajouter une branche à des séquences parallèles, tandis
que des blocs suivant Cas D (commençant et finissant par une transition)
peuvent être utilisés pour ajouter une branche à des séquences
alternatives.
Pour chaque étape, l'entrée d'un nouveau nom d'étape est requise. Les
étapes et transitions présentent les même détails que leurs originaux.
Copier bloc (Cas A) après
transition tH
+tB
+<tH<
+-----+
¦ sA ¦
+-----+
+-------->--------->+
+tA
+tE
¦¦ +tH¦¦
¦+-----+¦ +-----+
V
¦¦ sB ¦¦ ¦ sC ¦
sA
¦+-----+¦ +-----+
¦¦¦ +tB¦¦
+tF
¦+-----+¦ +-----+
¦¦ sD ¦¦ ¦ sE ¦
¦+-----+¦ +-----+
¦¦¦ +tC¦¦
+tG
+<--------+
V
sINIT
V
Séquence opérationnelle
+tB
+<tC<
+-----+
¦ sA ¦
+-----+
+-------->--------->+
+tA
+tE
¦¦ +tH¦¦
+-----+
+-----+
+-----+
¦ sB ¦
¦ sC ¦
¦
¦
+-----+
+-----+
+-----+
+tB
+tF
+tB
+-----+
+-----+
+-----+
¦ sD ¦
¦ sE ¦
¦
¦
+-----+
+-----+
+-----+
+tC
+tG
+tC
+<--------+
V
V
sA
sINIT
V
V
⇒ Curseur sur une transition (tH dans l’exemple)
Le bloc commence par une étape, activer la combinaison de touches
<Ctrl>+<K><C>.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-27
Copier bloc (Cas B) à côté de
l'étape sB
+tA
¦-------->+
+-----+ ¦+-----+¦
¦ sB ¦ ¦¦ sC ¦¦
+-----+ ¦+-----+¦
+tB
¦¦¦ +tC¦¦
+-----+ ¦+-----+¦
¦ sD ¦ ¦¦ sE ¦¦
+-----+ ¦+-----+¦
¦<--------+
+tB
Séquence opérationnelle
+tA
¦------------------>+
+-----+
+-----+
+-----+
¦ sB ¦
¦
¦
¦ sC ¦
+-----+
+-----+
+-----+
+tB
+tC
+tC
+-----+
+-----+
+-----+
¦ sD ¦
¦
¦
¦ sE ¦
+-----+
+-----+
+-----+
¦<sE<
V
+tB
tB
⇒ Positionner le curseur sur l'étape sB
⇒ Activer la combinaison de touches <Ctrl>+<K><C>.
Copier bloc (Cas C) après
l'étape sA
+tB
+<tH<
+-----+
¦ sA ¦
+-----+
+-------->--------->+
+tA
¦¦¦ +tE¦¦
+tH
+-----+ ¦+-----+¦
V
¦ sB ¦ ¦¦ sC ¦¦
sA
+-----+ ¦+-----+¦
V
+tB
¦¦¦ +tF¦¦
+-----+ ¦+-----+¦
¦ sD ¦ ¦¦ sE ¦¦
+-----+ ¦+-----+¦
+tC
+tG
+<--------+
V
sINIT
V
Séquence opérationnelle
Copier bloc (Cas D) à côté de la
transition tA
+-----+
¦ sA ¦
+-----+
+-------->+
¦¦¦ +tA¦¦
+tE
¦+-----+¦ +-----+
¦¦ sB ¦¦ ¦ sC ¦
¦+-----+¦ +-----+
¦¦¦ +tB¦¦
+tF
¦+-----+¦ +-----+
¦¦ sD ¦¦ ¦ sE ¦
¦+-----+¦ +-----+
¦¦¦ +tC¦¦
+tG
+<--------+
V
sINIT
V
Séquence opérationnelle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
+tB
+<tH<
+-----+
¦ sA ¦
+-----+
+tE
+-----+
¦
¦
+-----+
+tF
+-----+
¦
¦
+-----+
+-------->--------->+
+tA
+tE
+tH
+-----+
+-----+
V
¦ sB ¦
¦ sC ¦
sA
+-----+
+-----+
V
+tB
+tF
+-----+
+-----+
¦ sD ¦
¦ sE ¦
+-----+
+-----+
+tC
+tG
+<--------+
V
sINIT
V
⇒ Positionner le curseur sur une étape (sA dans l'exemple)
Le bloc commence par une transition.
⇒ Activer la combinaison de touches <Ctrl>+<K><C>.
+-----+
¦ sA ¦
+-----+
+-------->--------->+
+tA
+tA
+tE
+-----+
+-----+
+-----+
¦ sB ¦
¦
¦
¦ sC ¦
+-----+
+-----+
+-----+
+tB
+tB
+tF
+-----+
+-----+
+-----+
¦ sD ¦
¦
¦
¦ sE ¦
+-----+
+-----+
+-----+
+tC
+tC
+tG
V
V
sINIT
sINIT
V
V
⇒ Positionner le curseur sur la transition tA
⇒ Activer la combinaison de touches <Ctrl>+<K><C>,
pour copier le bloc à côté du même bloc.
6-28 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Marquage d'une structure SFC complète en tant que bloc
Marquer toute la structure SFC
en tant que bloc
<Ctrl>+<K><A>
Le bloc marqué comprend toute la structure SFC, y compris le renvoi et
l'étape initiale.
Comme une structure SFC ne doit contenir qu'une seule étape initiale, une
insertion ou une addition de ce bloc n'est pas possible Il ne peut être utilisé
que pour la construction d'un nouvel SFC avec une structure vide.
Représentation ASCII de l'éditeur SFC
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII.
Fig. 6-9: Structure SFC pour archivage ASCII
Chaque éditeur y contribue. Pour l'affectation suivant Fig. 6-9: Structure
SFC pour archivage ASCII, on a alors la sortie suivante (sans indication
des actions et des blocs d'actions, abrégée).
En-tête du SFC (Mode de
fonctionn., section. 6.8)
SFC _SFC1:
SFC: SFC_T;
STEP: STEP_T;
TRANSITION: TRANS_T;
ACTION: ACTION_T;
ACTION_IN: _aIn1;
ACTION_OUT: _aOut1;
ACTION_DIAG: _aDiag1;
STEP1: ^STEP_T;
(*SFCnom =
_SFC1, Standard*)
(*Type de la chaîne d'étapes = SFC_T*)
(*Type des étapes =
STEP_T*)
(*Type des transitions= TRANS_T*)
(*Type des actions=
ACTION_T*)
(*action du système _aIn1*)
(*action du système _aOut1*)
(*action du système _DIAG*)
(*pointeur sur étape actuelle*)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-29
Déclaration des étapes
(abrégée)
INITIAL_STEP INIT: (*Allg. Initialisierung, Fehler löschen, LV vorbereiten*)
M_INIT(N);
(*Drapeau d'étape pour affichage*)
CLEAR_ERR(S);
(*Effacer erreur avec INIT*)
POWER(S);
(*Mise en marche de l'ampli de puissance*)
EVENTS(S);
(*Drapeau couplage NC*)
END_STEP
STEP POWER_ON:
(*Mise en marche de l'ampli de puissance*)
SWITCH_ON(N);
(*Mise en marche de l'ampli de puissance*)
................
END_STEP
................
STEP SETUP:
START_SET(N);
ARM_POS(N);
JOG_AX_X(N);
JOG_AX_Y(N);
................
END_STEP
(*Mode manuel*)
(*initialiser SCARA*)
(*Position du bras*)
(*Axe X*)
(*Axe Y*)
Déclaration des transitions
(abrégée)
TRANSITION INIT_OK: (*INIT_OK Init OK et validation de la séquence effectuée?*)
LD .......
ST INIT_OK
END_TRANSITION
..............
TRANSITION POW_NOK2: (*Erreur lors de la mise en marche?*)
LD .......
ST POW_NOK2
END_TRANSITION
Enchaînement des étapes et
transitions
INIT_OK FROM INIT TO POWER_ON
POWER_OK FROM POWER_ON TO ES1
IAUTO FROM ES1 TO AUTO
NO_AUTO FROM AUTO TO ES2
NOT MXPOWERON FROM ES2 TO POWER_OFF
TRUE FROM POWER_OFF TO INIT
NEW_MODE FROM ES2 TO ES1
ISEMI FROM ES1 TO SEMI
NO_SEMI FROM SEMI TO ES2
ISETUP FROM ES1 TO SETUP
NO_SETUP FROM SETUP TO ES2
POW_NOK2 FROM POWER_ON TO ES2
Mot clé ‘FORWARD’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
(*INIT_OK Init OK et valid. de la séq. effectuée?*)
(*Mise en marche ampli effectuée suivant plan?*)
(*Automatique validé?*)
(*Automatique validé?*)
(*Arrêter ampli?*)
(*Nouveau mode de fonctionnement sélectionné?*)
(*Valider mode pas à pas?*)
(*Mode pas à pas déconnecté?*)
(*Valider mode manuel?*)
(*Mode manuel déconnecté?*)
(*Erreur lors de la mise en marche?*)
Pour la lecture de données PCL en tant que texte ASCII, il faut appliquer le
principe suivant: On ne peut utiliser que ce qui a été déclaré auparavant.
Avec l'introduction de types de données pour actions, étapes et
transitions, il est à présent possible d'effectuer des références croisées
entre ces types de données; ces références sont éditables en tant que:
• Identificateur de transitions, sous-identificateur booléen d'étapes, d'actions
et de transitions
• Identificateur d'actions, sous-identificateur booléen d'étapes, d'actions et
de transitions
C'est ce qui explique qu'un nouveau mot clé, le mot clé ‘FORWARD’, soit
défini. Pour les faits décrits plus haut, une courte déclaration des
transitions suivi du mot clé ‘FORWARD’ précède l'action. L'identificateur
de l'action est alors connu, même si une déclaration classique des
transitions doit encore suivre.
Des déclarations FORWARD, même multiples, sont possibles pour les
actions, étapes et transitions. Si une déclaration FORWARD n'est pas suivie
par une déclaration régulière, toute la lecture des POU est interrompue et le
stock de données lu jusque là est refusé.
6-30 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
6.3 Niveaux de détail de l'organigramme séquentiel
Suivant l'architecture de la structure SFC écrite dans l'organigramme
séquentiel, les niveaux qui lui sont sous-jacents doivent être remplis
(conditions pour la poursuite de commutation des transitions//actions des
étapes).
Conditions pour la poursuite de commutation des transitions
En tant que conditions pour la poursuite de commutation, on peut indiquer
directement dans l'éditeur SFC:
• certaines variables, comme par exemple IAUTO, ISEMI, ISETUP,
• des variables négativées, avec MXPOWERON ainsi que
• des constantes, comme TRUE et FALSE
Une condition de poursuite de commutation peut toutefois également être
très complexe et contenir tout un réseau ou des lignes de listes
d'instructions (IL) correspondantes.
Pour le remplissage des conditions de poursuite de commutation, trois
langages spéciaux sont à disposition:
• La liste d'instructions 'IL',
• Le langage à contacts LD et
• le langage en diagramme de blocs fonctionnels 'FBD'.
L'utilisateur peut accéder aux éditeurs correspondants en positionnant le
curseur sur la transition voulue puis en activant
⇒ <Ctrl>+<Enter> ou
⇒ <Enter>
pour accès.
Fig. 6-10: Préparation au remplissage de la transition
Accès avec la combinaison de touches <Ctrl>+<Enter>
Les éditeurs correspondants mettent déjà des listes pratiquement toutes
prêtes ou des réseaux (voir ci-après – Remplissage de la transition en IL,
LD et FBD) qu'il suffit de compléter. Pour de plus amples informations sur
la manipulation des différents éditeurs IL/LD/FBD, voir description des
éditeurs.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-31
Remplissage de la transition en
IL
Repère
Opération
LD
ST
Opérande
2#1
NO_AUTO
Commentaire
(**)
Remplissage de la
transition en LD
¦
NO_AUTO
¦
+------------------------------------------------------------------( )------¦
Remplissage de la transition en
FBD
+---------+
2#1-¦:=
+-NO_AUTO
+---------+
Les transitions sont assujetties aux restrictions suivantes:
• La condition de réceptivité ne doit être formulée que dans un réseau
LD / FBD ou sous la forme d'une liste IL équivalente,
• La condition de réceptivité peut contenir des fonctions, mais elle ne
doit pas contenir de blocs fonctionnels.
• Un effacement du contenu complet de la transition est empêché.
Liste de transitions
Une liste, analogue à la liste d'actions <Alt>+<N>, Chapitre 7, , dresse un
aperçu de toutes les transitions se rapportant au fichier. Cette liste peut
être appelée via édition/transitions.
Fig. 6-11: Liste de transitions
La colonne ‘Info’ indique le langage actuel des transitions (IL/FBD/LD),
(BOOL/NOT BOOL) pour transitions booléennes, TRUE, FALSE.
La colonne 2
contient le nom de la transition.
La colonne 3
<F6> le commentaire sur la transition
⇒ Avec <Enter> ou <Ctrl>+<Enter> on peut alors entrer dans la liste.
Une édition est alors possible.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-32 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Utilisation multiple de transitions
Une condition de transition peut apparaître plusieurs fois en tant que passage
entre différentes étapes.
Pour deux ou plusieurs utilisations de ce genre, les manipulations
suivantes sont possibles.
Instructions de pied de page
<0> Nouvelle Transition
En entrant le nouveau nom, on engendre une nouvelle transition vide.
<2> Renommer
Toutes les transitions du nom actuel reçoivent le même nouveau nom, le
contenu reste conservé.
<3> Doubler
La transition actuelle reçoit un nouveau nom tout en conservant l'ancien
contenu qui peut continuer à être utilisé indépendamment.
Le curseur doit être positionné sur le champ nom.
Les instructions de pied de page Renommer et Doubler n'apparaissent
que si la transition est utilisée plusieurs fois.
Actions des étapes
Dans les différentes étapes de la séquence, on peut se trouver en face des
cas suivants: aucune action, déclenchement d'une action, de plusieurs
actions.
⇒ Pour le remplissage des étapes, positionner le curseur sur l'étape
voulue.
⇒ Ensuite entrer dans la fenêtre avec <Ctrl>+<Enter>
Pour de plus amples informations voir Chapitre 7 ‘Blocs d'actions’
6.4 Aide à la mise en route pour le niveau d'exécution
Affichage de l'état dans la séquence
Un affichage des étapes actives et des transitions actuellement en cours
de traitement est effectué au niveau de la séquence. Dans la figure ciaprès, l'étape ES1 est active et les transitions IAUTO, ISEMI, ISETUP
sont en cours de traitement.
Fig. 6-12: Affichage de l'état, des étapes et des transitions
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-33
Tableaux des étapes et des transitions
Un complément à l'affichage de l'état est donné dans l'option de menu
'Démarrage':
• Liste des étapes actives
• Liste des transitions actives
• Liste des actions actives
Ces fenêtres montrent l'ordre dans lequel est effectuée l'exécution des
étapes, transitions et actions. Les fenêtres sont conservées même en cas
de passage vers un autre éditeur et elles peuvent être actualisées.
Avec <F4>, il est possible de passer de la fenêtre éditeur SFC à la liste
actuelle et inversement.
Fig. 6-13: Tableau des transitions dans l'éditeur SFC
Recherche de l'étape active suivante
Aller à l'étape active suivante
<Ctrl>+<Q><H>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Avec la combinaison de touches <Ctrl>+<Q><H>, il est possible, si
l'affichage d'état est actif, d'accéder à toutes les étapes actives dans l'ordre
de leur exécution (de gauche à droit et de haut en bas).
6-34 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
6.5 Options dans l'éditeur SFC
Option 'Paramètres généraux'
Fig. 6-14: Fenêtre d'options ‘Paramètres généraux’
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'.
Cette option permet en commun avec 'Requête lors de la sauvegarde' la
mémorisation automatique de l'état intermédiaire obtenu. (Le fichier BAK
est alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Affichage de variables
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Cette option est active au niveau programme pour variables d'entrée et de
sortie booléennes, ceci signifie que l'on peut passer du nom à l'adresse
absolue et inversement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-35
Option ‘Paramètres de l'écran’
Fig. 6-15: Fenêtre d'option ‘Paramètres de l'écran’
Fonction
Zone de paramétrage
Paramètres de mise au point
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
SFC Standard // SFC comprimé
Colonnes d'éditeur:
Largeur de grille:
Lignes pour nom:
Lignes p. commentaire:
(sans objet)
Nbre de caractères dans 1 colonne 13 5
(sans objet)
(sans objet)
Couper nom:
Stratégie permettant de couper un nom trop
long.
Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
Coupure de nombres:
Documentation
Boutons
La documentation utilise les jeux de paramètres standard.
Ok:
Appliquer
Standard:
Interruption:
<Ctrl>+<F2>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Accepter les paramètres,
les appliquer dans les éditeurs actuels.
les appliquer dans les éditeurs actuels.
sans quitter la fenêtre
Restaurer les paramètres standard de la zone de
paramétrage sélectionnée.
Restaurer les paramètres avant intervention
dans la fenêtre et quitter la fenêtre.
Sauter entre jeux de données
(SFC ↔ SFC comprimé)
6-36 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
6.6 Aide dans l'éditeur SFC
Conformément à la conception d'aide uniforme du système de
programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu
actuelle, en fonction de la position du curseur dans la fenêtre éditeur ou
dans la fenêtre menu. Si dans une aide contextuelle des termes sont
marqués en couleur, une aide peut alors être sélectionnée (placer le
curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si dans une
aide contextuelle des termes sont marqués en couleur, une aide peut
alors être sélectionnée (placer le curseur sur le terme voulu, puis appuyer
<Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section
déclaration du nom marqué par le curseur. Il est possible de représenter
l'interface d'un bloc fonctionnel, d'une fonction, d'une variable structurée
ainsi que les caractéristiques d'une variable quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 6-16: <F1> Aide en relation avec l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-37
Fig. 6-17: <Ctrl>+<F1> - Aide sur le terme ’Transition’
L’aide sur le terme donne une explication sur la position actuelle du
curseur. Dans l’exemple, le curseur se trouve sur une transition.
⇒ Aide avec la combinaison de touche <Ctrl>+<F1>
- ou ⇒ avec la touche <F1>
⇒ Activer dans la fenêtre d'aide la combinaison de touches <Alt>+<S>
⇒ entrer un terme de recherche quelconque ou une partie d'un concept.
Fig. 6-18: Aide sur le terme ’Action’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-38 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
6.7 Touches dans l'éditeur SFC
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent .
Touche (s)
Instructions curseur
<Ctrl>+<S>
<CursorLeft>
Colonne de la grille vers la gauche
<Ctrl>+<D>
<CursorRight>
Colonne de la grille vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<A>
<CursorLeft>
Bord SFC gauche
<Ctrl>+<F>
<CursorRight>
Bord SFC droit
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
Touche (s)
Touches d’effacement
<Ctrl>+<G>
Effacement d'une paire T/S ou S/T
<Ctrl>+<T>
Ouverture des regroupements
<Ctrl>+<T>
Fermeture de branchements
<Ctrl>+<H>
<Delete><CursorLeft>
<Delete>
en fonction de la position <Ctrl>+<T> ou <Ctrl>+<G>
<Ctrl>+<Y>
Effacement de branches complètes
Touche (s)
Accès
<Ctrl>+<Enter>
Passage à l'éditeur de blocs d'actions et
à l'intérieur de transitions
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-39
Menu local dans l'éditeur SFC
Dans chaque éditeur il existe un menu local (combinaison de touches
<Alt>+<F10>) qui permet de regrouper des instructions importantes de
l'éditeur de façon à ce qu'elles soient rapidement accessibles.
Fig. 6-19: Menu local dans l'éditeur SFC
Test sur les erreurs de syntaxe
Test de syntaxe
<F6>
Commentaire édition
Commentaire Etape/Transition
<Ctrl>+<F6>
Commentaire on/off
Commentaire, ligne complète on/off
<Shift>+<F2>
Symb. / Abs.
Représentation des variables symbolique/absolue
<Alt>+<P>
Imprimer
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<Q>
Instructions Quick
Offre d'instructions ^Q actuelle
<Ctrl>+<K>
Instructions bloc
Offre d'instructions ^K actuelle
Validation et utilisation de variables et actions système
Déclaration de chaînes d'étapes
Instructions bloc dans l'éditeur SFC
Entrées de séquences dans l'éditeur SFC sont au Chapitre 6, Page 6-6.
Instructions Quick dans l'éditeur SFC
Les instructions Quick permettent d'accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><H>
vers l' étape active suivante
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début de la page
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin de la page
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-40 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Chercher et Remplacer
Recherche d'une chaîne de
caractères
<Ctrl>+<Q><F>
L'utilisation de la fonction rechercher correspond à la fonction remplacer
(sans nouveau texte!).
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 6-20: Recherche et remplacement d'un texte (chaîne de caractères)
Cherche Texte
INIT
Le texte à rechercher est tout d'abord présenté avec le terme sur lequel
se trouve le curseur.
On peut soit réécrire ce terme soit sélectionner un autre terme déjà utilisé
auparavant via la fenêtre history.
Nouveau Texte
Texte qui doit remplacer le texte recherché. Un contrôle de convenance
est effectué afin que le nouveau texte puisse assumer la tâche du texte
précédent
• Eléments:
[X]
Variables et constantes
[ ]
Repère
[ ]
Bloc fonctionnel
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments
peuvent être sélectionnés.
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas
sélectionnables (grisés)
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-41
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
[ ]
avec requête
En options, on peut demander au système d'ignorer les majuscules et
minuscules et de ne rechercher que des mots complets. Par ailleurs, il est
également possible de demander qu'une confirmation soit effectuée avant
chaque remplacement.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
à partir du curseur
( )
tout autour
(*)
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction
susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la
direction ou inversement sur toute la zone
Déclaration d'une chaîne d'étapes
Les manipulations possibles sous cette option de menu sont explicitées
au Chapitre 6.8, ‘Modes de fonctionnement SFC’, Page 6-42 .
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-42 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
6.8 Modes de fonctionnement SFC
Problématique
La programmation SPS permet grâce à l'utilisation de chaînes d'étapes
une structuration simple et claire du programme utilisateur. C'est ce qui
explique que la programmation par chaînes d'étapes soit depuis quelques
années de plus en plus acceptée par les utilisateurs et qu'elle soit
devenue partie intégrante de la Norme EN 6-1131-3.
On attend de cette programmation une assistance lors de
• la mise en route et de l'ajustement
• la supervision,
• l'analyse et la localisation d'erreurs.
Principes de solution
La fonctionnalité des diagnostics et modes de fonctionnement pour les
chaînes d'étapes est obtenue par des données système permanentes et
définies par utilisateur dans une technologie de programmation prédéfinie.
Les données système permanentes sont des données mises à
disposition par le système de programmation SPS. L'utilisateur ne peut ni
les supprimer nit les modifier ni modifier leur nom.
Les données les plus importantes sont représentées par les données
système définies par l'utilisateur. Ce sont elles essentiellement qui
déterminent la fonctionnalité. L'utilisateur peut définir leur existence, leur
nom et leur type suivant une syntaxe prédéfinie dans un fichier spécial
faisant partie de l'interface de programmation. Après démarrage, le
système de programmation intériorise ces données et met à disposition
des instances système correspondantes en fonction de l'édition des
éléments-SFC.
Dans les données système définies par utilisateur, on distingue entre
données système (variables système SFC) pour:
• chaîne d'étapes
• étape
• transition et
• action.
Par ailleurs, une assistance système est fournie sous la forme d'actions
système SFC.
Les actions systèmes SFC sont décrites en chaîne d'étapes orientée
utilisateur /4/, INDRASTEP et ne font pas partie de la présente
documentation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-43
Variables système SFC
chaîne d'étapes
Le comportement de la chaîne d'étapes doit à l'avenir être piloté suivant
Fig. 6-21: Données système permanentes et définies par l'utilisateur de
la chaîne d'étapes. par un module.
sfc_x
Données système permanentes SFC
SET_HAND:
MODE_AUTO:
RESET:
RESTORE:
ERRORFLG:
ERRORNR:
ERRORTYP:
BOOL
BOOL
BOOL
BOOL
BOOL
USINT
INT
Données système utilisateur
(Jeu de données 1-SFC)
(* Corps SFC *)
Exemple:
Auto:
Sync:
Revers:
Learn:
Monitor:
Status:
Message:
BOOL
BOOL
BOOL
BOOL
STRING
INTEGER
STRING
stfc_x.fh7
Fig. 6-21:
Données système permanentes et définies par l'utilisateur de la
chaîne d'étapes.
Ce module est lié à l'existence de la chaîne d'étapes, c'est-à-dire qu'un
jeu de données permanentes et/ou de données définies par utilisateur
sera créé chaque fois qu'une nouvelle chaîne d'étapes sera générée.
La première phase d'aménagement contient les éléments suivants pour la
réalisation des données permanentes (exemple d'application: Chapitre 0):
Type SFC minimal
Type de données SFC (supporté
par le système)
TYPE SFC_T)
SFC_T STRUCT
SET_HAND BOOL
(* Mode de fonctionnement manuel
(TRUE)/Automatique (FALSE) *)
MODE_AUTO BOOL (* Affichage Mode de fonctionnement manuel
(FALSE)/Auto TRUE*)
RESET
BOOL (* Reset/Initialise SFC *)
RESTORE
BOOL (* Restaure ancienne affectation d'étape active "1"/
(* essaye de démarrer avec nouvelle affectation "0"*)
ERRORFLG BOOL (* SFC_Erreur de traitement *)
ERRORNR
USINT (* Zone d'erreur *)
ERRORTYP INT
(* Détail sur erreur *)
END_STRUCT
END_TYPE
Etape
step_x
Données système permanentes SFC
Données système utilisateur
X:
T:
BOOL
TIME
Exemple:
C:
T1:
T1X:
T1C:
T2:
T2X:
T2C:
STRING[70]
TIME
BOOL
STRING[70]
TIME
BOOL
STRING[70]
step_x.fh7
Fig. 6-22: Données système permanentes et définies par l'utilisateur de l'étape
Type d'étape minimal
Type de données étape
(supporté par le système)
TYPE STEP_T)
STEP_T STRUCT
X
BOOL (* Drapeau étape active *)
(* Mode de fonctionnement AUTO: Affichage,
si étape est active*)
(* Modes de fonctionnement MANUEL: drapeau dee
forçage fnr actif/inactif*)
T
TIME (* Temps étape active *)
END_STRUCT
END_TYPE
L'utilisateur peut ajouter 8 éléments en supplément à l'aval.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-44 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Transition
Données système permanentes (non)
trans_x
Données système utilisateur
Exemble:
C: STRING[70]
trans_x.fh7
Fig. 6-23: Données système permanentes et définies par l'utilisateur de la transition
Des données système permanentes ne sont pas prévues, deux éléments
peuvent être définis par l'utilisateur.
Action
Données système permanentes
Q:
A:
X:
BOOL
BOOL
BOOL
action_x
Données système utilisateur
Exemple:
C:STRING[70]
action_x.fh7
Fig. 6-24: Données système permanentes et définies par l'utilisateur de l'action
Type d’action minimal
Type de données action
(supporté par le système
TYPE ACTION_T)
ACTION_T STRUCT
Q
BOOL
A
BOOL
X
BOOL
END_STRUCT
END_TYPE
(* Drapeau action active *)
(* retraitement de l’action *)
(* Drapeau action forcée *)
L'utilisateur peut ajouter 8 éléments en supplément à l'aval!
Entrée et utilisation
L'utilisation de variables / d'actions système SFC n'est pas expressément
nécessaire. Il est possible de charger, de traduire et de transférer à la
commande des sources déjà disponibles avec éléments SFC sans que
l'utilisateur ait besoin de connaître ou d'utiliser la nouvelle fonctionnalité.
N.B.
Variables système et Types de
données système
Type de données sans
utilisation de l'assistance mode
de fonctionnement
Lors du développement des composants, l'objectif principal
poursuivi était de conserver la fonctionnalité des anciens SFC.
Au chapitre 0 on a énuméré les points qui devraient être
contrôlés en cas de doute.
Si la nouvelle fonctionnalité doit être utilisée, il faut tout d'abord procéder
conformément à la méthode habituelle pour SFC,étapes et actions, à la
déclaration d'un type de données (structure) respectif (voir Chap. 0).. Ces
types de données doivent présenter la configuration minimale exigée. Ils
remplacent alors les types par défaut vides présentés ci-après qui ne
permettent aucune assistance mode de fonctionnement.
SFC:
Etapes:
Transitions:
Actions:
SFC
STEP
TRANSITION
ACTION
Dans chaque type de données, il est possible d'entrer d'autres variables de
type quelconque (exception faite des pointeurs, arrays et structures).
Ces types de données doivent être importés dans les POU
(FUNCTION_BLOCK ou PROGRAM) qui désirent utiliser la fonctionnalité
SFC.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-45
Fig. 6-25: Importation des types de données utilisateur pour éléments SFC
Dans l'éditeur SFC, les types de données sont affectés aux éléments
SFC au moyen de la combinaison de touches <AIt>+<F10>, Déclaration
de la chaîne d'étapes.
Fig. 6-26: Déclaration de la chaîne d'étapes– Affectation des types de données SFC
Les termes contenus dans la fenêtre 'Déclaration de la chaîne d'étapes' sont
énumérés ci-après:
Modèle de la chaîne d'étapes
Le nom du modèle de la chaîne d'étapes n'a aucun intérêt pour les
applications générales. (Voir /4/, Documentation ‘INDRASTEP, Chaîne
d'étapes orientée utilisateur avec diagnostic’)
Nom de la structure SFC
actuelle 'SFCnom'
La structure SFC actuelle (SFCnom) reçoit automatiquement un nom qui
peut être modifié manuellement. Ce nom est par exemple nécessaire
pour la commande des modes de fonctionnement (voir aussi maximale)
(Voir aussi /4/, Documentation ‘INDRASTEP, Chaîne d'étapes orientée
utilisateur avec diagnostic’)
Pointeur sur jeu de données de
l'étape actuellement en cours
de traitement
L'introduction de ce pointeur a été dictée par la nécessité de pouvoir
appeler des actions (actions système comprises) dans différentes étapes.
Ces actions portent respectivement le même nom et ont le même
contenu. Si à partir d'une telle action, on désire à présent recourir aux
donnés d'une étape, on peut le faire via
nométape.variablesystem
Ceci ne serait toutefois pas très judicieux vu que le nom de chaque étape
entraînerait une différence entre les contenus d'une telle action dans les
différentes étapes La solution est représentée par un accès via un
pointeur qui montre toujours les données de l'étape actuellement en
cours de traitement.
N.B.
En fin de cycle de traitement, le pointeur est nul (NIL)
Si le type d'étape n'est pas structuré (Type STEP), il n'y a pas de
pointeur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-46 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Si on modifie le type de données étapes, le type du pointeur est actualisé en
conséquence (voir, Type d'étape minimal, type de données d'étape(supporté
par le système).
Le pointeur ne présente aucun intérêt pour les applications générales. (Voir
/4/, Documentation ‘INDRASTEP, Chaîne d'étapes orientée utilisateur avec
diagnostic’).
Actions système
Les actions système sont générées automatiquement. Pour les POU
créées avec d'anciennes versions PCL et contenant des chaînes
d'étapes, ces actions sont créées automatiquement lors du chargement.
Elles restent vides dans le cas d'applications générales. (Voir /4/,
Documentation ‘INDRASTEP, Chaîne d'étapes orientée utilisateur avec
diagnostic’).
Fig. 6-27: Edition des actions système via la liste d'action
Modes de fonctionnement des SFC
(Application du type de données 'Type SFC minimal SFC_T', voir 'Type SFC
minimal – Type de données SFC (supporté par le système)
Une chaîne d'étapes peut être traitée avec les modes de fonctionnement
suivant :
• automatique ou
• manuel
Toutes les variables nommées alors dans les transitions sont créées à
partir de:
• SFCnom
_SFC1 et
• Nom d'élément
par exemple suivant ‘Type SFC minimal – Type de données SFC
(supporté par le système)’: RESET
vers par exemple . _SFC1.RESET.
Fig. 6-28: Passages entre les modes de fonctionnement d'une chaîne d'étapes
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-47
Activités dans et entre les
modes de fonctionnement d'une
chaîne d'étapes
Etat
Code / activités
AUTO
•
•
•
•
AUTOÅMANUEL
Flancs 0-1 de
SET_HAND
soit
_SFC1.SET_HAND
•
•
•
•
MANUEL
•
•
MANUELÅAUTO
Le code programme est exécuté
automatiquement en fonction de la notation
RESET de la chaîne d'étapes(Passage de
l'affectation quelconque à l'étape initiale)
SFCnom.RESET, soit par ex.. _SFC1.RESET
tous les étapes sont désactivées
les actions non-mémorisantes sont désactivées
et traitées plus tard car les étapes auxquelles
elles appartiennent ont été désactivées
toutes les transitions sont désactivées (il n'y a
plus de traitement)
tous les paliers temporels au niveau des étapes
sont stoppés
Etat de la chaîne d'étapes(état de toutes les
étapes) est noté
toutes les étapes, étape initiale comprise, sont
tout d'abord inactives
Aucun traitement de transitions (aucun passage
automatique entre étapes)
Un FORÇAGE d'étapes est possible pour étape
"s0" par exemple via s0.X
•
RESET de la chaîne d'étapes(Passage de
l'affectation quelconque à l'étape initiale)
SFCnom.RESET, soit par ex.. _SFC1.RESET
•
via SFCnomRESTORE, soit par ex.
_SFC1.RESTORE, le comportement ultérieur
peut être influencé.
− RESTORE=TRUE:
L'affectation étape qui existait avant le mode
manuel est réactivée
− RESTORE=FALSE:
Le système tente de passer en mode
automatique avec l'affectation étape forcée
en mode manuel. (Test de fonctionnement),
si impossible continuer mode manuel
Les actions vont être traitées en fonction de
l'étiquetage des étapes.
Flancs 1-0 de
SET_HAND
soit
_SFC1.SET_HAND
•
Si la commutation entre les modes de fonctionnement est refusée en raison
d'un état d'étape SFC inadmissible, l'origine de ce refus peut être limitée au
moyen des marqueurs suivants:
SFCnom.ERRORFLG
SFCnom.ERRORNR
SFCnom.ERRORTYP
Modes de fonctionnement SFC
Erreur de commutation
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
SFCnom.ERRORFLG affiche si la dernière commutation entre les modes
de
fonctionnement
a
été
effectuée
correctement.
Si
SFCnom.ERRORFLG a la valeur TRUE, il est possible à l'aide des
marqueurs SFCnom.ERRORNR et SFCnom.ERRORTYP de déduire la
propriété de l'état de l'étape SFC qui a entraîné l'interruption de la
dernière commutation entre les modes de fonctionnement.
SFCnom
ERRORTYP
Cause:
Traitement de
l’erreur
-11101
Aucune étape active dans le
SFC
-11102
Le nombre de repères pour
les branches existantes dans
le SFC est insuffisant
(coincement)
Commutation entre les
modes de fonctionnement
a été interrompue
Traitement SFC se poursuit
en mode manuel
-11103
Les branches dans le SFC
contiennent un nombre de
repères trop important.
6-48 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
N.B.
La commutation entre les modes de fonctionnement n’agit pas
directement sur le traitement des actions. Les actions ne sont
influencées directement que si on active et désactive les
étapes.
Il s'ensuit que lors de la commutation du mode auto en mode
manuel, par exemple, toutes les actions mémorisantes restent
actives!
6.9 Particularités du traitement SFC
Avantages du nouvel
interpréteur de structures
• Introduction d'une règle facile à comprendre pour l'ordre dans lequel
les étapes et actions doivent être traités.
• Support du diagnostic de marche des programmes SPS avec SFC par
le système d'exploitation SPS.
• Réalisation du mode manuel pour SFC.
• Réalisation du
fonctionnement.
forçage
d'action
dans
tous
les
modes
de
• Préparation de l'interpréteur de structures au traitement de plusieurs
SFC par POU.
• Conversion du logiciel du système d'exploitation du langage
assembleur en langage C.
Mode de travail du nouvel interpréteur de structures
L'interpréteur de structures effectue par traitement d'un SFC, les
opérations suivantes dans l'ordre indiqué:
1. Détection du mode de fonctionnement
2. Nouveau calcul de l'état du étapes SFC
3. Détermination de l'affectation des entrées des ActionControls
4. Calculs des sorties Q/A de tous les ActionControls
5. Retraitement des actions (Ordre suivant liste des actions)
6. Traitement des actions (Ordre suivant structure SFC)
Calcul de l'état des étapes SFC (mode automatique)
L'état des étapes SFC est décrit par l'ensemble de toutes les étape
actives du SFC. A partir de cet état des étapes SFC, on peut déduire
l'état (actif/inactif) de toutes les transitions du SFC.
L'état des étapes SFC pour un cycle de traitement correspond au résultat
donné par l'état SFC du cycle de traitement antérieur et les valeurs de
renvoi déterminées par le traitement de toutes les transitions actives.
Implémentation du mode automatique
L'implémentation du mode automatique s'effectue de façon telle que les
définitions de l'IEC 61131-3, Section 2.6 soient remplies. Par ailleurs, les
règles suivantes sont opérationnelles:
• Des transitions ne sont traitées que si elles sont actives.
• Dans le cycle SPS où un SFC est traité pour la première fois, l'étape
initiale du SFC est actif. Toutes les transitions sont inactives pendant
ce cycle et ne peuvent donc pas être connectées.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-49
Programmes SPS existants et nouvel interpréteur de structures
Les programmes SPS qui utilisaient l'une des propriétés suivantes de
l'interpréteur de structures mis en œuvre jusqu'à présent, afficheront sans
aucun doute un fonctionnement modifié avec le nouvel interpréteur de
structures:
•
Utilisation de l'ordre de traitement des actions
• Utilisation de la réécriture du qualificatif AQ
• Utilisation de AQ-R pour l'initialisation d'actions
• Désactivation
descendant'
du
compilateur
option
'Traitement
après
flanc
Le SPS montrera lors d'une mise en oeuvre avec le nouvel interpréteur
de structures un fonctionnement modifié, si l'un des points suivants est
applicable:.
• Utilisation multiple d'actions
• SFC avec boucle minimale.
Utilisation de l’ordre
d'exécution des actions
Jusqu'à présent
Si une action ‘ac_1’ est activée, elle est enregistrée avec son nom, sa
marque d'identification (qualificatif) et le cas échéant le temps d'action
dans le tableau d'exécution.
Si elle est suivie d'une seconde action ‘ac_2’ , cette seconde action est
enregistrée après ‘ac_1’ dans le même tableau.
Si ‘ac_1’ est ensuite désactivée, elle est rayée de la liste et ‘ac_2’ prend
sa place en première position.
Les actions qui ne sont pas désactivées se trouvent dans l'ordre
correspondant en tête du tableau.
A présent:
L'exécution des actions est assujettie à l'ordre des étapes de gauche à
droite puis de bas en haut. Par cycle SPS, chaque étape de la série est
examinée une fois pour déterminer si elle présente des actions qui
doivent être co-traitées conformément à l'affectation active des étapes.
Pour les blocs fonctionnels, cet examen est effectué une fois par appel.
Utilisation de la
réécriture de AQ
Jusqu'à présent
Une action ‘ac_1’ est activée avec la marque d'identification 'S – en '
mémorisant - dans l'étape ‘step_1’ Elle est enregistrée dans le tableau
d'exécution. Dans l'étape suivante ‘step_2’ (dans l'une des étapes
suivantes) l'action ‘ac_1’ est à nouveau activée – sans avoir été
désactivée auparavant – avec la marque d'identification ‘N’ . L'action
‘ac_1’ conserve dans ce cas sa position dans le tableau, seule la marque
d'identification est remplacée, c'est-à-dire que ‘N’ remplace ‘S’. Lorsqu'on
quitte l'étape suivante ‘step_2’, ‘ac_1’ est désactivée.
A présent:
Une action ‘ac_1’ est activée avec la marque d'identification 'S' – en
mémorisant - dans l'étape ‘step_1’ et elle est enregistrée en conséquence
dans le tableau d'exécution.
Dans l'étape suivante ‘step_2’ (dans l'une des étapes suivantes) l'action
‘ac_1’ est à nouveau activée – sans avoir été désactivée auparavant –
avec la marque d'identification ‘N’ .
A la différence de ce qui se passait jusqu'à présent, un ‘ac_1 Q’ et ‘ac_1
A’ résultant sont alors calculés suivant Chap. 7.
Lorsqu'on quitte l'étape suivante ‘step_2’ , le composant ‘N’ disparaît des
calculs et ‘ac_1’ reste active avec la marque d'identification ‘S’.
Solution: L'ancienne fonctionnalité peut être rétablie par remise à l'état
initial avant activation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-50 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Utilisation de AQ-R pour
l’initialisation d’actions
Jusqu'à présent
Si un bloc fonctionnel ‘fb1' se trouve dans une action ‘ac_1’: FB_1’ qui
comprend une structure SFC, l'application de la marque d'identification ‘R’
sur cette action entraîne une initialisation de la structure SFC. Ce qui
entraîne l'effet secondaire suivant:
− ‘fb1: FB_1’ est utilisé dans l'action ‘ac_1’ bien que cette action
n'ait jamais été activée jusqu'à présent.
− ‘fb1: FB_1’ est utilisé une seconde fois dans l'action ‘ac_2’, sa
structure SFC a été exécutée jusqu'à une certaine affectation
d'étapes; au cours de cette exécution s'effectue l'application du
qualificatif ‘R’ sur ‘ac_1’, la structure SFC est remise à zéro.
A présent:
Un abus de l'instruction de remise à zéro pour initialisation est supprimé,
l'action ‘ac_2’ peut travailler sans difficulté.
Effet secondaire:
− une action peut ainsi, sans être influencée par le qualificatif 'R'
(visible), être reliée à une POU.
Désactivation du compilateur
option 'Traitement après flanc
descendant'
Jusqu'à présent
La désactivation de l'option 'Traitement après flanc descendant' donne à
l'utilisateur la possibilité d'empêcher systématiquement le traitement
ultérieur de l'action.
A présent:
Cette option est éliminée. En cas de besoin, l'utilisateur doit établir une
liaison avec les variables ‘action_name.Q’ et ‘action_name.A’ .
Utilisation multiple d'actions
Jusqu'à présent
Chaque action ne peut être enregistrée qu'une seule fois dans le tableau
d'exécution. Un nouvel enregistrement équivaut à une réécriture de
l'ancien. L'action ne peut être traitée / corrigée qu'une seule fois dans un
cycle SPS.
A présent:
Plusieurs traitements des actions dans un cycle SPS sont permis
Exemple 1:
Marque d'identification 'N' ((ou ‘L’, ‘D’ en fonction du cas)
Traitement multiple non mémorisant
+----+ +------------------+
¦ s1 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t1 ¦N ¦
A2
¦
¦
+---+--------------¦
¦
¦N ¦
A2
¦
¦
+------------------+
+----+ +------------------+
¦ s2 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t2 ¦N ¦
A2
¦
+----+ +------------------+
¦ s3 ¦
+----+
Étape active
Nombre de traitements par cycle SPS
s1
A1: 1* traitement
A2: 2* traitement
s2
A1: 1* traitement
A2: 1* traitement
s3, 1. Cycle
A1: 1* retraitement
A2: 1* retraitement
s3, à partir du
Cycle 2
A1: aucun traitement
A2: aucun traitement
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-51
Exemple 2:
‘DS’,’SL’
Action des marques d'identification ‘S’ et/ou ‘SD’,
Traitement multiple avec utilisation de 'S'....
+----+ +------------------+
¦ s0 +-¦S ¦
A1
¦
+----+ +------------------+
t0
+----+ +------------------+
¦ s1 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t1 ¦N ¦
A2
¦
¦
+---+--------------¦
¦
¦N ¦
A2
¦
¦
+------------------+
+----+ +------------------+
¦ s2 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t2 ¦N ¦
A2
¦
¦
+------------------+
+----+
¦ s3 ¦
+----+
Étape active
s0
Nombre de traitements par cycle SPS
A1: 1* traitement s0
A1: 1* traitement s1
A1: 1* traitement s2
A1: 3* traitement !!!
s1
A1: 1* traitement s0
A1: 1* traitement s1
A2:
2* traitement
A1: 1* traitement s2
A1: 3* traitement !!!
s2
A1: 1* traitement s0
A1: 1* traitement s1
A2:
1* traitement
A1: 1* traitement s2
A1: 3* traitement !!!
s3,
1er Cycle
A1: 1* traitement s0
A1: 1* traitement s1
A2:
1* retraitement
A1: 1* traitement s2
A1: 3* traitement !!!
s3, à partir du A1: 1* traitement s0
Cycle 2
A1: 1* traitement s1
A1: 1* traitement s2
A1: 3* traitement !!!
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
A2:
aucun traitement
6-52 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
Exemple 3:
‘DS’,’SL’
Autres marques d'identification ‘R', 'S’ et/ou ‘SD’,
Autre exemple avec 'S','R'....
+----+ +------------------+
¦ s +-¦S ¦
A1
¦
+----+ +------------------+
t
+----+ +------------------+
¦ s0 +-¦R ¦
A1
¦
+----+ +------------------+
t0
+----+ +------------------+
¦ s1 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t1 ¦N ¦
A2
¦
¦
+---+--------------¦
¦
¦N ¦
A2
¦
¦
+------------------+
+----+ +------------------+
¦ s2 +-¦N ¦
A1
¦
+----+ +---+--------------¦
t2 ¦N ¦
A2
¦
¦
+------------------+
+----+
¦ s3 ¦
+----+
Étape active
Nombre de traitements par cycle SPS
S
A1: 1* traitement s
A1: 1* traitement s1
A1: 1* traitement s2
étape s0 vu que
"R"!
A1: 4* traitement !!!
Utilisation multiple d’actions
dans des étapes consécutives
sans interruption!
s0, 1. Zyklus
A1: 1* retraitement
s0, ab 2. Zyklus
A1: aucun traitement
s1
A1: 1* traitement
A2: 2* traitement
s2
A1: 1* traitement
A2: 1* traitement
s3, 1. Cycle
A1: retraitement
A2:
1* retraitement
s3, à partir du
Cycle 2
A1: aucun traitement
A2:
aucun traitement
Activation d'actions dans des étapes consécutives
+----+ +------------------+
¦ s0 +-¦ P ¦
ac1
¦
+----+ +------------------+
+t1
+----+ +------------------+
¦ s1 +-¦ P ¦
ac1
¦
+----+ +------------------+
Jusqu'à présent
Lors du passage de ‘s0’ à ‘s1’, le programme effectue une interruption
artificielle de la commande du module ACTION_QUALIFIER. Chaque
impulsion agit ainsi séparément.
+------+
s0.X--+
+-------------+-------+
s1.X---------+
+-----++
++
ac1.Q--++-----++--------------+-+
+-+
ac1.A--+ +----+ +-------------ac1.A--+ +----+ +--------------
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS-18VRSOrganigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-53
A présent:
De l'étape ‘s0’ à l'étape ‘s1’, la commande du module ACTIONQUALIFIER-reste TRUE sans interruption, c'est-à-dire qu'il n'y a pas de
changement de flanc pour réactiver la commande.
+------+
s0.X--+
+-------------+-------+
s1.X---------+
+-----++
ac1.Q--++--------------------+-+
ac1.A--+ +--------------------
SFC avec boucle minimale,
sans interruption
Boucle minimale dans SFC
¦<s1<
+----+ +------------------+
¦ s1 +-¦D ¦T#5s¦ A1
¦
+----+ +------------------+
+--------------+
+t1
+t11
+----+
V
¦ s3 ¦
s1
+----+
V
Jusqu'à présent
Une fois le délai de 5s écoulé, l'action 'A1' est traitée, une action
booléenne est définie avec TRUE.
Après activation de la transition 't11', une interruption artificielle de la
commande du module ACTION_QUALIFIER est effectuée, le traitement
de 'A1' est après le retraitement suspendu (temporisé) pendant les 5 s
suivantes, une action booléenne devient FALSE.
A présent:
Une fois le délai de 5s écoulé, l'action 'A1' est traitée, une action
booléenne est définie avec TRUE.
Après activation de la transition 't11', il n'y a pas d'interruption de la
commande du module ACTION_QUALIFIER.
Le traitement de 'A1' se poursuit sans interruption. L'action booléenne
reste TRUE en permanence.
Traitement des SFC en mode manuel
L'état des étapes SFC pour un cycle SPS découle de la valeur du
NometapeX, marqueur de toutes les étapes du SFC.
Le traitement des SFC en mode manuel s'effectue de façon analogue au
traitement en mode automatique, mis à part les différences suivantes:
1. En mode manuel, toutes les transitions sont toujours inactives. Elles
ne sont donc pas traitées et ne peuvent pas être connectées.
2. Dans le cycle SPS où le SFC est traité pour la première fois en mode
manuel, toutes les étapes sont désactivées.
3. Des étapes peuvent être activées et désactivées par le programme
utilisateur SPS au moyen de la description des variables nométapeX.
Remise à zéro du SFC
L'état des étapes d'un SFC peut être influencé par le marqueur
SFCNom.RESET Si un flanc montant apparaît sur le marqueur, toutes les
étapes du SFC seront désactivées et l'étape initiale activée. La remise à zéro
de l'état des étapes peut s'effectuer sous n'importe quel mode de
fonctionnement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
6-54 Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHARTGuide de programmation SPS-18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-1
7 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
La figure suivante illustre le classement des blocs d’actions et leur traitement lors de la création de programmes ou de blocs fonctionnels contenant une structure SFC.
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
1
RECO III.QQQ......... ................... (seulement avec programmes!)
,03257
,03257)520Commentaire
)81&7,21(*Fonctions définies par utilisateur*) Importation de type de
1$1'(*Fonction NAND avec 8 entrées*)
de données (TY),
125(*Fonction NOR avec 8 entrées *)
fonctions (FK) et blocs
blocs fonctionnels (FB)util.
)8
DECLARATION
avant leur utilisation
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON %E0.1.1 (* Introducteur
´
*) et blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) FB et fb) avant leur
TEM %E3.2.4
(* Moniteur de température *) utilisation
(1'B9$5
ENouvelle création de
VAR_OUTPUT (* Déclaration des sorties *)
de types de données utilisateur
6)&
Entrée de la structure SFC
6 programme (PR) ou du
bloc fonctionnel (FB)
(Avec les fonctions, l'utilisation
7 7 d'éléments SFC n'est
pas autorisée.)
6 6 7 7
BLOCS D'ACTIONS
6 6
%1 URG.MAX 7 7 6 ACCELER. / 7V .23 :
V
$:/
.23
Addition de blocs
:
)%6
d'actions, qui contiennent des
:
variables, lignes d'instructions IL,
:
(,1
des réseaux LD ou FBD
:
0 2
! en tant qu'actions, au droit d'étapes v
$:/
02725 7 )%6
.23
(,1$/$5002725 7. Entrée des conditions de
poursuite de commutation
(Transitions) avec
7(0 éditeur LD, FBD ou IL
ou bien par entrée directe des
variables
6. Remplissage des actions avec
éditeur LD, FBD ou IL
Fig. 7-1: Création d'un programme 'PR' ou d'un bloc fonctionnel 'FB'
A chaque étape d'un SFC du niveau d'exécution, il est possible de relier
zéro, une ou plusieurs actions classées en blocs d'actions.
Une étape sans action entraîne une attente jusqu'à satisfaction de la condition de transition suivante.
Une action peut se composer :
• d'une variable booléenne,
• d'une variable booléenne négativée,
• d'une séquence d'instructions en IL ou
• d'un nombre de réseaux LD ou FBD.
Une action peut être utilisée:
• zéro fois (nouveauté à partir de la Version 17)
• une ou plusieurs fois
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-2 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Une action avec zéro utilisation est engendrée lorsqu'une étape est effacée
et que l'effacement des blocs d'actions qui en font partie est inhibé. L'enregistrement du nom d'une action dans un bloc d'actions permet de réutiliser
cette action sans que ses détails soient perdus.
A l'intérieur de la liste d'instructions IL ou des réseaux LD/FBD d'une action, il est également possible d'insérer d'autres blocs fonctionnels avec
séquences internes.
Chaque action peut recevoir un commentaire. Ce commentaire est,
comme le commentaire de déclaration d'une variable, lié au nom de l'action et est disponible à l'endroit où l'action est utilisée.
Le temps de traitement de l'action est prédéfini par le bloc d'actions.
7.1 Blocs d’actions et leur fonctionnement
Architecture d’un bloc d’actions
/ 7V couineur ON
(*Signal avertis 5sec après mise en marche*)
_
|
|
|
Commentaire sur le bloc d'actions
|
|
Nom de l'action (ACTION NAME) ou nom de variable
|
Temps d'action (ACTION TIME)
Marque (qualificatif d'action, ACTION QUALIFIER)
Dans le champ ’Nom de l’action’, on peut entrer le nom d’une action complexe (Liste d' instructions ou bien réseaux LD (langage à contacts) ou
réseaux FBD). Alternativement, il est également possible d'entrer le nom
d'une variable booléenne (vrai ou fausse), absolue ou symbolique.
Pour plus de clarté, ces variables booléennes sont marquées avec un 'B'.
Une action vide, c'est-à-dire une action qui n'est pas encore remplie,
porte la marque caractéristique '?'.
Exemples
Noms d'actions et de variables:
1 Couineur ON
(* Action dans IL, LD, FBD *)
? N
Accélération
(* Action, encore non remplie*)
B S
Protection_1
(* Variable booléenne 'Protection_1' *)
B L
7V NOT Protect._2
(* Variable booléenne négativée 'Protection_2' *)
B D
7P 4 (* Variable booléenne %Q1.2.3 *)
B SL W7,0( 1270 (* Var. bool négativée %M1.2, Temps prédéfini*)
(* dans tTIME variable: TIME*)
La marque d’identification (qualificatif d’action, ACTION QUALIFIER) indique la nature du traitement de l'action après activation de l'étape.
Certaines des marques d'identification doivent être complétées par un
temps d'action (ACTION TIME).
Pour le temps d'action, on peut utiliser une constante ou une variable du
type TIME:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-3
Exemples
Représentation du temps d'action:
Description:
Exemples
Durée
T#14ms T#14s T#47m T#147h T#14d T#25h15s T#1h3.3
Autres données système
En analogie aux services système librement commutables représentés par
étape, transition et organigramme SFC lui-même, des variables supplémentaires peuvent être également affectées aux actions (voir Chapitre 6).
Données système permanentes
Q:
A:
X:
BOOL
BOOL
BOOL
action_x
Données système utilisateur
Exemple:
C:STRING[70]
action_x.fh7
Fig. 7-2: Données système permanentes et définies par l'utilisateur de l'action
Type d'action minimal
Type de données action
(supporté par le système)
TYPE ACTION_T
ACTION_T STRUCT
Q BOOL (*Drapeau action active – seulement affichage*)
A BOOL (*retraitement de l'action – affichage seulement*)
X BOOL (*Drapeau action forcée *)
END_STRUCT
END_TYPE
action_name.Q
indique si l'action va être traitée.
action_name.A
indique si l'action va être traitée, retraitée, forcée (toutes les possibilités
de traitement).
action_name.X
est la variable qui permet de forcer l'action (<Ctrl>+<F4>) et qui indique
parallèlement si l'action va être forcée.
L'utilisateur peut en supplément ajouter 8 éléments à l'aval. SFC, étapes, transitions et actions sont rattachés ensemble à un type de données
dans l'éditeur SFC, <Alt>+<F10>, ‘Déclaration de chaînes d'étapes’ (Chapitre 6).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-4 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Traitement d'actions assisté par Action_Control
Pour déterminer les règles de traitement des actions d'un SFC, l'IEC-61131-3
utilise le modèle ActionControl. Ce modèle part du principe qu'il existe pour
chaque action d'une POU une instance du bloc fonctionnel Action_Control tel
que défini et représenté dans la norme. .
Action_Control
y compris marques
d’identification
P0/P1
+---+
+-----------------------------------------------------O| & |---Q
|
+-----+ |
|
N--|---------------------------------------------| >=1 |--|
|
|
S_FF
|
| +---+
R--+
+----+
|
|
|
| RS |
|
|
S--|----------------------|S Q1|-----------------|
|
+----------------------|R1 |
|
|
|
+----+ +---+
|
|
L--|---------+--------------------| & |----------|
|
|
|
L_TMR
+--O|
|
|
|
|
|
+-----+
|
+---+
|
|
|
|
| TON |
|
|
|
|
+------|IN Q|---+
D_TMR
|
|
| +-------------|PT
|
+-----+
|
|
| |
+-----+
| TON |
|
|
D--|--|-----------------------------|IN Q|------|
|
| +-----------------------------|PT
|
|
|
| |
P_TRIG
+-----+
|
|
| |
+--------+
|
|
| |
| R_TRIG |
|
|
P--|--|------------|CLK
Q|--------------------|
|
| |
SD_FF
+--------+
SD_TMR
|
|
| |
+----+
+-----+
|
|
| |
| RS |
| TON |
|
|
SD-|--|---|S Q1|----------------|IN Q|----------|
|
+--|---|R1 |
+------------|PT
|
|
|
| |
+----+
|
DS_TMR
+-----+ DS_FF
|
|
| +------------+
+-----+
+----+
|
|
| |
| TON |
| RS |
|
|
DS-|--|----------------|IN Q|----------|S Q1|---|
|
| +----------------|PT
|
+---|R1 |
|
|
| |
+-----+
|
+----+
|
|
+--|-----------------------------+
|
|
| |
SL_FF
|
|
| |
+----+
|
|
| |
| RS |
+---+ |
|
SL-|--|--------|S Q1|--+------------------| & |--|
|
+--|--------|R1 | |
SL_TMR
+--O|
| +-----+
|
+----+ |
+-----+
|
+---+
|
|
| TON |
|
|
+----|IN Q|---+
T-----+---------------------|PT
|
Q_TRIG
+-----+
+-----+
+--------+
| >=1 |
| F_TRIG |
Q---|
|---A
Q---|CLK
Q|-----------------------------------|
|
+--------+
P1_TRIG
|
|
+--------+
|
|
| R_TRIG |
|
|
P1--------------|CLK
Q|-----------------------|
|
P0_TRIG
+--------+
|
|
+--------+
|
|
| F_TRIG |
|
|
P0--|CLK
Q|-----------------------------------|
|
+--------+
+-----+
Ce bloc fonctionnel montre comment l'action à laquelle il est lié est traitée
à travers ses sorties Action_Control.Q et Action_Control.A. Ce traitement
se présente de la façon suivante (forçage d'actions non compris):
• La connexion de l'entrée du bloc fonctionnel Action_Control s'effectue
au moyen des blocs d'actions liés aux étapes. Une liaison existe entre
une étape et une entrée d'une instance du bloc fonctionnel Action_Control lorsq'un bloc d'action de cette étape se rapporte à la
même action qui appartient à l'instance du bloc fonctionnel Action_Control
• En fonction de l'activation de l'étape, une telle liaison peut être activée
ou désactivée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-5
• L'entrée d'une instance du bloc fonctionnel Action_Control est considérée définie pour TRUE s'il existe au moins une liaison active avec
une étape Dans le cas contraire l'entrée est définie pour FALSE
Nouvelle marque d’identification
(AQ)
L'IEC 61131-3 définit deux nouveaux qualificatifs d'action qui permettent de
ne traiter une action qu'une seule fois. Le qualificatif d'action P déjà existant
convient en particulier pour l'impulsion par flancs des variables booléennes
avec l'aide d'actions booléennes L'action est alors traitée deux fois. Le premier traitement peut être utilisé pour fixer la variable booléenne et le second
pour sa remise à zéro.
Les nouveaux qualificatifs d'action P0 et P1 permettent par-contre un traitement unique par flancs d'une action. L'action peut, ce faisant, être utilisée pour
l'activation (P0) ou la désactivation (P1) d'une étape, pour la remise à zéro
d'une variable booléenne (action booléenne) ou pour le comptage des activations d'étape.
Lors de l'utilisation des nouveaux qualificatifs d'action AQ, il faut tenir compte
du fait qu'ils n'influencent que la sortie A du bloc fonctionnel ActionControl.
Lors de l'utilisation des actions booléennes en liaison avec les nouveaux AQ,
on doit tenir compte de leur définition:
− Si une action est déclarée en tant que variable booléenne, la sortie Q
de l'ActionControl correspondant doit correspondre à l'état de la variable booléenne.
Variables système pour action
lors de l'utilisation des
qualificatifs d'actions N,P,P0, P1
VWHS 1 DFWLRQ
3 DFWLRQ
3 DFWLRQ
3 DFWLRQ
Qualificatif
d’action
step1.X
action1.Q
1
action1.A
1
3
action2.Q
action2.A
3
action3.Q
3
action3.A
3
action4.Q
3
action4.A
3
Le système supporte les qualificatifs d'action et temps d'action suivants:
Qualificatif
d’action
N
R
S
L
D
P, P0, P1
SD
DS
SL
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Temps d’action
nécessaire
non
non
non
oui
oui
non
oui
oui
oui
Effet:
non mémorisant
Retour à zéro prioritaire
Définir mémorisant
non mémorisant , limité dans le temps
non mémorisant, retardé
Impulsion (un cycle SPS)
mémorisant, retardé
retardé, mémorisant
mémorisant, limité dans le temps
7-6 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Ci-après, nous avons tout d'abord exposé les diagrammes temporels correspondant aux qualificatifs d'action. Ensuite nous donnons une explication
sur la base de quelques exemples pour une variable booléenne, une variable booléenne négativée et une action plus complexe.
Diagrammes temporels
correspondant aux qualificatifs
d’action
(Aperçu)
L'étape est active
"""
___________________ non mémorisant
¦
:
:
"""
___ mémorisant
S
¦
:
:
:
___________________________ non mémorisant
L/T1 """
et
___________________ limité dans le temps
L/T2 """
___________________ +non mémorisant
D/T1 """""""""""
et
D/T2 """"""""""""""""""""""""""""""""""""""" retardé
P,P0 """ BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBImpulsion
"""BBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBImpulsion
P1
___ +retardé
DS/T1 """""""""""
et
DS/T2 """"""""""""""""""""""""""""""""""""""" mémorisant
___ mémorisant
SD/T1 """""""""""
et
___ retardé
SD/T2 """""""""""""""""""""""""""
___________________________ mémorisant
SL/T1 """
et
___________ limité dans le temps
SL/T2 """
6$
7
6(
7
5
!W
Temps
N
SA – Etape va être active(Définition exacte page suivante)
SA – Etape n'est plus active(Définition exacte page suivante)
? - Aucune indication possible sur l'activité.
- Action active
_ - Action inactive
T1 – Temps est dans la plage du temps actif de l'étape
T2 – Temps est en dehors de la plage du temps actif de l'étape
R - Instruction de remise à zéro
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-7
Mode général d'exécution des actions
Coordination dans le temps du
traitement des actions
Le traitement des actions est assujetti à la structure graphique du SFC.
Chaque étape du SFC modèle une fonctionnalité complexe se rapportant
à une procédure réelle. Les actions doivent par conséquent être traitées
comme spécifiées par les étapes. L'interpréteur de structures réalise
dans ce contexte la stratégie d'exécution suivante:
• Les étapes du SFC sont parcourues ligne par ligne de gauche à droite
et de bas en haut.
• Pour chaque étape considérée, les blocs d'actions sont parcourus de
haut en bas.
• Pour chaque bloc d'action considéré, un contrôle de la sortie Q du bloc
fonctionnel ActionControl correspondant à l'action référencée est effectué. S'il présente la valeur FALSE, la prise en considération du bloc
d'actions actuel peut être interrompue.
Dans le cas contraire, il faut vérifier si l'étape actuellement considérée
est active. Si l'étape est active, l'action peut être traitée et la prise en
considération du bloc d'actions actuel être interrompue.
Dans le cas contraire, il faut vérifier si l'un des quatre blocs S_FF,
SD_TMR, DS_FF, SL_& présente TRUE en sa sortie. Si aucune des
sorties ne présente la valeur TRUE, la prise en considération du bloc
d'actions actuel peut être interrompue.
Dans le cas contraire, l'action peut être traitée et la prise en considération du bloc d'actions actuel être interrompue.
Cette stratégie permet le traitement multiple d'une action dans un cycle
SPS.
Coordination dans le temps du
retraitement des actions
Le retraitement de toutes les actions s'effectue dans le cycle d'alternance
des sorties ActionControl Q et A.
Comme le retraitement des actions n'est nécessaire qu'une seule fois, il
s'effectue indépendamment de la structure graphique du SFC. Les actions sont retraitées dans l'ordre qui découle de leur classement à l'intérieur de la liste d'actions.
Les exemples ci-après permettent d'expliquer ce processus.
Définition du moment 'Etape est active'
Si la condition de transition ’tOn' est remplie, l'étape sera évaluée comme
étant active au cours du même cycle SPS lors du calcul de l'action.
tOn
sEtape
tOff
Définition du moment 'Etape est inactive'
Si la condition de transition ’tOff' est remplie, l'étape sera évaluée comme
étant inactive au cours du même cycle SPS lors du calcul de l'action.
tOn
sEtape
tOff
Le fait que l'étape devienne inactive entraîne pour les variables booléennes et les variables négativées la conséquence suivante: ces variables
seront calculées dans le même cycle SPS, comme indiqué ci-dessus.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-8 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Variables appartenant
à l'action xxx
A présent:
Guide de programmation SPS - 18VRS
xxx.Q
xxx.A
TRUE
TRUE
Action est active/va être activée et traitée
FALSE
TRUE
Action va être désactivée et retraitée
FALSE
FALSE
Action est inactive et ne sera pas traitée
Un retraitement des actions complexes est effectué systématiquement.
Exemple:
Jusqu'à présent Option
Retraitement d'action ON
tOn
%1 ;
1 .23
tOff
sEtape
ACTION LD1
On
X1
X4
A présent: Suppression de
l'option
Variables système activées
tOn
sEtape
1 .23
tOff
ACTION KOP1
On
sEtape.X
X4
A partir de l'affectation des variables xxx.Q et xxx.A (Tableau ‘Variables appartenant à l'action xxx’) on peut voir si l'exécution régulière (xxx.Q/xxx.A:
TRUE/TRUE) se poursuit encore ou si le retraitement (xxx.Q/xxx.A:
FALSE/TRUE) a déjà été amorcé.
Si un retraitement doit être inhibé, il est possible de passer outre cette action avec la combinaison (xxx.Q /xxx.A: FALSE/TRUE).
N.B.
L'option qui existait jusqu'à présent Paramétrage compilateur/traitement action après flanc descendant est supprimée!
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-9
Qualificatifs d’action et leurs effets sur les actions
Au cours de cette section, nous examinerons les réactions concrètes de
tous les qualificatifs d'action en fonction de l'état actif de l'étape actuelle.
Pour ce faire, nous examinerons une variable booléenne, une variable
booléenne négativée et l'exécution d'une action complexe.
N – Non mémorisant
Le traitement se poursuit tant que l’ ’Etape’ est active.
B N
9$5B (* Variable booléenne 'VAR_1' *)
B N
1279$5B (* Variable booléenne négativée 'VAR_2' *)
1 $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
N
Temps
SA
SE
"""
_________________
6A
71
6E
72
5
non mémorisant
!W
- Etape va être active
- Etape n'est plus active
Variable booléenne!!
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Si l'étape est devenue inactive, la variable devient '0' dans le même cycle
SPS.
Variable booléenne négativée
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Si l'étape est devenue inactive, la variable devient '1' dans le même cycle
SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur l'activité.
est traitée/ retraitée
ne sera plus traitée
1 $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q """
_________________
________________
ACTION_1.A """
6A
71
6E
72
5
Temps
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Retraitement
!W
7-10 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
S - mémorisant
Le traitement démarre à partir du moment où l'étape devient active jusqu'à
remise à zéro.
B S
9$5B (* Variable booléenne 'VAR_1' *)
B S
1279$5B (* Variable booléenne négativée 'VAR_2' *)
6 $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
S
Temps
"""
___ mémorisant
6A
71
6E
72
5
!W
SA
SE
R
- Etape va être active
- Etape n'est plus active
- Remise à zéro
Variable booléenne!!
?
¦
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Après l'instruction de remise à zéro, la variable devient '0' dans le même
cycle SPS.
Variable booléenne négativée
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Après l'instruction de remise à zéro, la variable devient '1' dans le même
cycle SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur l'activité.
est traitée/ retraitée
ne sera plus traitée
6 $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q
ACTION_1.A
Temps
"""
___
"""
__ Retraitement
6A
71
6E
72
5
!W
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-11
L – non mémorisant, limité dans le temps
Le traitement est limité à la durée indiquée. Il ne dure au maximum que tant
que l' 'Etape' est active.
B L
7V 9$5B (* Variable booléenne
B L
7P 1279$5B (* Variable booléenne négativée 'VAR_2' *)
'VAR_1' *)
/ 7K $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
L/T1
L/T2
Temps
"""
___________________________ non mémorisant
et
"""
___________________ limité dans le temps
6A
71
6E
72
5
!W
SA
SE
T1
T2
–
–
Etape
Etape
Temps
Temps
va être active
n'est plus active
est dans la plage du temps actif de l'étape
est en dehors de la plage du temps actif de l'étape
Variable booléenne!!
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Lorsque le temps est écoulé, toutefois au maximum lorsque l'étape est devenue inactive, la variable devient '0' dans le même cycle SPS.
Variable booléenne négativée
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Lorsque le temps est écoulé, toutefois au maximum lorsque l'étape est devenue inactive, la variable devient '1' dans le même cycle SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur l'activité.
est traitée/ retraitée
ne sera plus traitée
/ 7K $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q
ACTION_1.A
ACTION_1.Q
ACTION_1.Q
Temps
"""
___________________________
"""
__________________________
"""
___________________
"""
__________________
6A
71
6E
72
5
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Traitement en T1
Retraitement en T1
Traitement en T2
Retraitement en T2
!W
7-12 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
D – non mémorisant, retardé
Le traitement démarre avec un décalage dans le temps et continue tant
que l'étape est active. Si l'étape est déjà à nouveau inactive avant que le
temps soit écoulé, aucun traitement ne sera effectué.
B D
7V 9$5B (* Variable booléenne
B D
7P 1279$5B (* Variable booléenne négativée 'VAR_2' *)
'VAR_1' *)
' 7K $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
D/T1
D/T2
Temps
"""""""""""
BBBBBBBBBBBBBBBBBBB non mémorisant
et
""""""""""""""""""""""""""""""""""""""" retardé
6A
71
6E
72
5
!W
SA
SE
?
–
–
_
T1
T2
Etape va être active
Etape n'est plus active
Aucune indication possible sur l'activité.
Action active
Action inactive
Temps est dans la plage du temps actif de l'étape
Temps est en dehors de la plage du temps actif de l'étape
Variable booléenne!!
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Si l'étape est devenue inactive alors que la variable était définie, la variable devient '0' dans le même cycle SPS.
Variable booléenne négativée
?
_
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Si l'étape est devenue inactive alors que la variable était définie, la variable devient '1' dans le même cycle SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur l'activité.
est traitée/ retraitée
ne sera plus traitée
' 7K $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q
ACTION_1.A
Zeit
"""""""""""
___________________ Traitement en T1
"""""""""""
__________________ Retraitement en T1
6A
71
6E
72
5
!W
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-13
Guide de programmation SPS - 18VRS
P - Impulsion (complété par P0/P1)
Le traitement ne dure que sur un cycle SPS.
B P
9$5B (* Variable booléenne 'VAR_1' *)
B P
1279$5B (* Variable booléenne négativée 'VAR_2' *)
3 $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
P
Temps
SA
SE
?
_
""" BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBImpulsion
6A
71
6E
72
5
!W
-
Etape va être active
Etape n'est plus active
Aucune indication possible sur l'activité.
Action active
Action inactive
Variable booléenne!!
?
_
Variable booléenne négativée
?
_
Action complexe
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '1' pour un cycle SPS
Variable est logique '0'
-
'0' ou '1', aucune indication possible sur l'activité.
Variable est logique '0' pour un cycle SPS
Variable est logique '1'
? - '0' ou '1', aucune indication possible sur le traitement.
- Action va être traitée exactement une fois
_ - Action ne sera plus traitée
VWHS 1 DFWLRQ
3 DFWLRQ
3 DFWLRQ
3 DFWLRQ
step1.X
action1.Q
1
action1.A
1
3
action2.Q
action2.A
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Qualificatif
d'action
3
action3.Q
3
action3.A
3
action4.Q
3
action4.A
3
7-14 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
DS – retardé et mémorisant
Le démarrage du traitement est retardé du temps indiqué. Il doit toutefois
s'effectuer avant que l'étape ne devienne inactive. Le traitement doit être
terminé avec l'instruction Reset.
B DS 7K 9$5B (* Variable booléenne 'VAR_1' *)
B DS 7V 1279$5B (* Variable booléenne négativée 'VAR_2' *)
'6 7P $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
DS/T1 """""""""""
BBB retardé
et
DS/T2 """"""""""""""""""""""""""""""""""""""" mémorisant
6A
71
6E
72
5
!W
Zeit
SA
SE
?
_
T1
T2
R
–
–
-
Etape va être active
Etape n'est plus active
Aucune indication possible sur l'activité.
Action active
Action inactive
Temps est dans la plage du temps actif de l'étape
Temps est en dehors de la plage du temps actif de l'étape
Remise à zéro
Variable booléenne!!
?
-
¦
-
'0' ou '1',
aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Après l'instruction de remise à zéro, la variable, si elle a été définie, devient
'0' dans le même cycle SPS.
Variable booléenne négativée
?
-
¦
-
’0’ ou ’1’,
aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Après l'instruction de remise à zéro, la variable, si elle a été définie, devient
'1' dans le même cycle SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur le traitement.
est traitée/ retraitée
ne sera plus traitée
'6 7P $&7,21B (* Action complexe 'ACTION_1' *)
Schritt ist aktiv
ACTION_1.Q """""""""""
___
Traitement en T1
|
:
:
:
:
:
__
Retraitement en T1
ACTION_1.A """""""""""
6A
71
6E
72
5
!t
Temps
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-15
SD – mémorisé et retardé
L'ordre de traitement est mémorisé. Le démarrage proprement dit du traitement est toutefois retardé du temps indiqué. Le traitement doit être terminé avec l'instruction Reset.
N.B.
Le démarrage du traitement de l'action peut s'effectuer après
l'inactivation de l'étape déclenchante.
B SD 7K 9$5B (* Variable booléenne 'VAR_1' *)
B SD 7V 1279$5B (* Variable booléenne négativée 'VAR_2' *)
6' 7P $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
SD/T1 """""""""""
BBB mémorisant
et
BBB retardé
SD/T2 """""""""""""""""""""""""""
6A
71
6E
72
5
!W
Zeit
SA
SE
?
_
T1
T2
R
–
–
-
Etape va être active
Etape n'est plus active
Aucune indication possible sur l'activité.
Action active
Action inactive
Temps est dans la plage du temps actif de l'étape
Temps est en dehors de la plage du temps actif de l'étape
Remise à zéro
Variable booléenne!!
?
-
_
-
'0' ou '1',
aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
Après l'instruction de remise à zéro, la variable devient '0' dans le même
cycle SPS.
Variable booléenne négativée
?
-
_
-
’0’ ou ’1’,
aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
Après l'instruction de remise à zéro, la variable, si elle a été définie, devient
'1' dans le même cycle SPS.
Action complexe
?
-
_
-
’0’ ou
aucune
Action
Action
’1’,
indication possible sur le traitement.
est traitée/ retraitée
ne sera plus traitée
6' 7P $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q """""""""""
___
__
ACTION_1.A """""""""""
___
ACTION_1.Q """""""""""""""""""""""""""
__
ACTION_1.A """""""""""""""""""""""""""
6A
71
6E
72
5
temps
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Traitement en T1
Retraitement en T1
Traitement en T2
Retraitement en T2
!W
7-16 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
SL – mémorisé et limité dans le temps
L'ordre de traitement est mémorisé. Le traitement démarre immédiatement et se termine une fois le temps indiqué écoulé.
B SL 7K 9$5B (* Variable booléenne 'VAR_1' *)
B SL 7V 1279$5B (* Variable booléenne négativée 'VAR_2' *)
6/ 7P $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
SL/T1 """
BBBBBBBBBBBBBBBBBBBBBBBBBBB mémorisant
et
BBBBBBBBBBB limité dans le temps
SL/T2 """
6A
71
6E
72
5
!W
Temps
SA
SE
?
_
T1
T2
R
–
–
Etape va être active
Etape n'est plus active
Aucune indication possible sur l'activité.
Action active
Action inactive
Temps est dans la plage du temps actif de l'étape
Temps est en dehors de la plage du temps actif de l'étape
- Remise à zéro
Variable booléenne!!
Variable booléenne négativée
Action complexe
?
-
_
-
?
-
_
-
?
-
_
-
'0' ou '1',
aucune indication possible sur l'activité.
Variable est logique '1'
Variable est logique '0'
'0' ou '1',
aucune indication possible sur l'activité.
Variable est logique '0'
Variable est logique '1'
'0' ou
aucune
Action
Action
'1',
indication possible sur le traitement.
est traitée/ retraitée
ne sera plus traitée
6/ 7P $&7,21B (* Action complexe 'ACTION_1' *)
Etape est active
ACTION_1.Q """
___________________________
__________________________
ACTION_1.A """
___________
ACTION_1.Q """
__________
ACTION_1.A """
6A
71
6E
72
5
Temps
Traitement en T1
Retraitement en T1
Traitement en T2
Retraitement en T2
!W
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-17
R – Remise à zéro
Le qualificatif d'action 'R' a la particularité de n'agir que si une action est en
traitement, c'est-à-dire enregistrée dans le tableau des actions à traiter. Si
le qualificatif d'action 'R' est utilisé de façon erronée, c'est-à-dire sans que
l'action ou une variable ait été auparavant enregistrée dans le tableau de
traitement, il reste alors sans effet.
La description suppose ensuite que la même action ou variable déclenchée
par un qualificatif 'S', 'SD', 'DS' ou 'SL' a également été transmise pour traitement.
B R
9$5B (* Variable booléenne 'VAR_1' *)
B R
1279$5B (* Variable booléenne négativée 'VAR_2' *)
5 $&7,21B (* Action complexe 'ACTION_1' *)
Variable booléenne!!
Variable était logique '1' et devient logique '0'.
Variable booléenne négativée
Variable était logique '1' et devient logique '0'.
Action complexe
Action va être retraitée.
Actions avec blocs fonctionnels contenant des
structures SFC
Les actions complexes peuvent contenir des listes d’instructions ou des
réseaux LD /FBD où des FB doivent être exécutés avec des structures
SFC. Si la transition est satisfaite, le traitement d'un tel bloc fonctionnel
permet le démarrage du SFC à l'intérieur du FB.
Si l'action est désactivée, le traitement du bloc fonctionnel et par conséquent de sa structure sera interrompu. Le bloc fonctionnel et sa structure
conservent leurs valeurs actuelles et le SFC son état actuel. Si le traitement du bloc fonctionnel est repris plus tard, le traitement du SFC se
poursuivra à partir de l'endroit de l'interruption.
Si l'action qui contient le bloc fonctionnel avec structure SFC est toutefois
appelée avec le qualificatif 'R', il n'y aura plus aucun traitement d'effectuer. La structure SFC et le bloc fonctionnel avec structures SFC appelés
par elle seront remis à zéro.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-18 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
7.2 Edition de blocs d’actions
Les opérations dans l'éditeur des blocs d'action seront tout d'abord illustrées à l'aide d'un simple exemple (Entrée, positionnement en aval et en
amont de blocs d'actions, effacement, instruction bloc).
Le passage à l'éditeur de blocs d'actions s'effectue en positionnant le
curseur dans l'éditeur SFC sur l'étape désirée puis en activant la combinaison de touche <Ctrl>+<Enter> pour accès.
Curseur sur étape
Accès avec
<Ctrl>+<Enter>
Niveau d'exécution (SFC) ←→
d'actions
Niveau
de
bloc
Accès à l'étape,
<Esc>
Travail dans l'éditeur des blocs d'actions
On désire entrer les blocs d'actions nécessaires dans le bloc fonctionnel
SCARA, Etape INIT.
⇒ Positionner le curseur sur l'étape INIT.
⇒ Activation de la combinaison de touches <Ctrl>+<Enter>
- ou ⇒ accéder à l'éditeur de blocs d'actions avec la touche <Enter>.
Fig. 7-3: Accès à l'éditeur de blocs d'actions à partir de l'éditeur SFC
La fenêtre d'entrée de l'éditeur de blocs d'actions est tout d'abord vierge.
Seule la possibilité 'Placer 1-BA en aval' est offerte en pied de page.
Séquence d'entrée
1<N><Enter>M_INIT<Enter>
Marqueur vers affichage<Enter>
1<N><Enter>CLEAR_ERR<Enter>
est reconnue en tant que variable
booléenne!
‘?’ indique que le bloc d'actions est
vide!!
Effacer erreur à l' INIT<Enter>
1<S><Enter>POWER<Enter>
Mise en marche de l'ampli de puissance<Enter>
1<S><Enter>EVENTS<Enter>
Marqueur couplage NC<Enter>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-19
Fig. 7-4: Entrée de blocs d'actions avec commentaire
Le commentaire requis immédiatement après l'entrée du nom décrit l'utilisation de l'action dans l'étape concrète.
⇒ Si on ne désire pas entrer de commentaire, il faut alors activer la touche <Enter> dans l'éditeur SFC.
⇒ Si, par contre, on désire que le même commentaire apparaisse partout où
une Action est utilisée (comme en analogie pour le commentaire de déclaration d'une variable), on peut entrer ce commentaire en activant en supplément la touche <F6> . (Voir <F6> - Commentaire de CLEAR_ERR.)
N.B.
Il est recommandé de commenter immédiatement le bloc
d'action respectif. (le commentaire est lié à l'emplacement de
l'utilisation).
Chaque action peut être à nouveau utilisée et aussi souvent que désiré
dans d'autres blocs d'actions, d'autres étapes du SFC.
Le '?' qui la précède indique que l'action n'est pas encore remplie.
Si un temps d'action est requis par un qualificatif d'action, on sera invité à
entrer ce temps lors de l'entrée du bloc d'actions.
⇒ Touche <1>
Placement d'un bloc d'action à l'aval du bloc actuel.
⇒ Touche <9>
Placement d'un bloc d'action à l'amont du bloc actuel
Si une variable binaire est détectée, comme dans la figure suivante, la
possibilité d'ajouter une négation, touche <4>, sera offerte après l'entrée
complète de la ligne.
⇒ Positionner le curseur sur le nom des variables
⇒ Activer à nouveau la touche <4>
La négation est alors à nouveau supprimée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-20 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Fig. 7-5: Négation d'une variable binaire dans un bloc d'actions
⇒ Touche <Space>
- ou ⇒ Touche <Enter> pour commuter dans une ligne.
⇒ L'entrée d'un bloc complet se termine en activant la touche <Enter>.
Avec <Esc>, on interrompt l'entrée en rétablissant l'état préalable.
Effacement d’un bloc d’action
⇒ Combinaison de touches <Ctrl>+<Y>
Une ligne complète peut être effacée. La position du curseur étant
alors indifférente.
Un avertissement est effectué avant l'effacement d'un bloc d'actions.
Modifications de texte dans un bloc d’actions
⇒ Si une correction de texte est nécessaire, positionner le curseur dans
la ligne respective et à l'emplacement voulu.
Si on commence immédiatement à écrire, le nouveau texte remplacera le précédent.
Si, par contre, on active '0'-Edit avant l'entrée de texte, le texte précédent
peut alors être modifié.
N.B.
Le fait de modifier le nom d'une action entraîne la création d'une
nouvelle action vide.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-21
Liste d’actions <Alt>+<N>
Compte tenu du fait qu'il est à présent possible d'utiliser une action zéro,
une ou plusieurs fois, une liste s'avère nécessaire pour pouvoir avoir un
aperçu de toutes les actions appartenant au fichier.
⇒ Appel de la liste via Edition/Actions <Alt>+<N>.
Fig. 7-6: Liste d’actions
Au début de la liste se trouvent les actions système – qu'elles soient utilisées
ou non, _aIn1, _aOut1, _aDiag1. Si elles ne sont pas utilisées, elles sont vides.
Elles sont suivies par les actions définies par l'utilisateur.
Colonne 'Info'
Le langage actuel de l'action est indiqué (IL/FBD/LD), et pour les variables
booléennes (BOOL/NOT BOOL), tandis qu'un (?) indique une action vide qui
n'a pas encore été ouverte.
2ème colonne
Nom de l'action
3ème colonne
<F6>-Commentaire sur l'action
⇒ Accès avec <Enter> ou <Ctrl>+<Enter>
Une édition est alors possible.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-22 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Utilisation multiple d’actions
Une action peut être utilisée dans plusieurs blocs d'actions, le cas
échéant avec des qualificatifs différents, dans plusieurs étapes.
Pour deux ou plusieurs utilisations de ce genre, les manipulations suivantes sont possibles.
Instructions de pied de page
<0>
Nouvelle action
L'entrée d'un nouveau nom entraîne la création d'une nouvelle action vide,
indépendante.
<2>
Renommer
Toutes les actions du nom actuel reçoivent le même nouveau nom, l'ancien
contenu reste conservé.
<3>
Doubler
L'action actuelle reçoit un nouveau nom tout en conservant l'ancien contenu
qui peut continuer à être utilisé indépendamment.
Le curseur doit être positionné sur le champ nom.
Les instructions de pied de page Renommer et Doubler n'apparaissent
que si l'action a été utilisée plusieurs fois.
Fig. 7-7: Utilisation multiple d’actions (dans l’exemple CLEAR_ERR)
Utilisation multiple d'actions dans une étape
Nouveauté de la Version 18
Une action peut être utilisée dans une étape dans plusieurs blocs d'actions, le cas échéant avec des qualificatifs différents.
Elle est alors exécutée n-fois.
En
cas
de
problèmes,
voir
Chapitre
7.7,
Page
7-36
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-23
Niveau de détail de l'éditeur de blocs d'actions
En complément, les actions contenues dans des blocs d'actions doivent
être remplies. (ne s'applique pas aux actions booléennes).
⇒ Positionner le curseur sur le bloc d'actions voulu.
⇒ Activer la combinaison de touches <Ctrl>+<Enter>.
Comme illustré dans la fenêtre suivante, on peut alors accéder à
l'éditeur correspondant.
Fig. 7-8: Accès à l'action CLEAR_ERR après <Ctrl>+<Enter>
Représentation ASCII de l'éditeur de blocs d'actions
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. Chaque éditeur y contribue. Pour l'affectation suivant Fig.
7-9: Exemple pour blocs d'actions on a alors la sortie suivante:
Fig. 7-9: Exemple pour blocs d’actions
Représentation ASCII
Remarques sur la représentation
ACTION BOOL bit_var1:
END_ACTION
Détail d'une action booléenne,
(Variable booléenne bit_var1)
ACTION BOOL NOT bit_var2:
END_ACTION
Détail d'une action booléenne négativée
(Variable booléenne bit_var2)
ACTION LD_01: (*<F6>-Commentaire*)
LD ON
OR relais
ANDN OFF
ST relais
END_ACTION
Détail d'une action archivée en IL
avec <F6>-Commentaire
............
bit_var1(N); (*Bit, vrai*)
Bloc d'actions pour appel d'une action booléenne,
avec commentaire,
Qualificatif d'action: N
NOT bit_var2(L,T#12s); (*Bit, faux*)
Bloc d'actions pour appel d'une action booléenne négativée, limitée dans le temps, avec commentaire,
Qualificatif d'action: L
Appel de bloc d'actions,
Qualificatif d'action: S
KOP_01(S); (*Minikontaktplan*)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-24 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
7.3 Aide à la mise en route au niveau blocs d'actions
Forçage d'actions assisté par le système
Le forçage d'actions s'effectue dans le temps indépendamment du traitement du SFC d'une POU. Le forçage d'actions est indépendant du
mode de fonctionnement.
Grâce au forçage d'actions, il est possible d'exécuter une action indépendamment de la sortie Q de son bloc fonctionnel ActionControl et, par conséquent, indépendamment des étapes de la' POU.
L'interpréteur de structures se comporte alors comme suit:
Dans la première étape de l'exécution d'une POU s'effectue le traitement
du forçage de l'action.
−
Les états des marqueurs de forçage d'action de toutes les actions
sont contrôlés.
Un flanc montant sur le marqueur de forçage d'action entraîne un forçage
et un flanc descendant entraîne la suppression du forçage d'une action.
−
Toutes les actions dont le forçage a été suspendu et dont la sortie
ActionControl Q présente la valeur FALSE sont alors retraitées dans
l'ordre spécifié par la liste d'actions.
−
Pour finir le traitement du forçage d'action, toutes les actions forcées
sont traitées dans l'ordre spécifié par la liste d'actions.
Ensuite, les structures programmées par l'utilisateur sont traitées.
Cycle d’alternance des variables
système pour
actions lors du forçage d'une
action via xxx.F
xxx.Q
xxx.A
xxx.F
Le tableau suivant comprend toutes les affectations permises pour les variables système de l'action ‘xxx’:
xxx.Q
xxx.A
xxx.X
FALSE
FALSE
FALSE
Aucun traitement de l’action
FALSE
TRUE
FALSE
Aucun retraitement de l’action
FALSE
TRUE
TRUE
Traitement de l'action (forcé)
TRUE
TRUE
FALSE
Traitement de l'action (activé)
TRUE
TRUE
TRUE
Traitement de l'action (forcé et activé)
Chaque action nommée peut réaliser une reconnaissance de retraitement
par évaluation de ces marqueurs.
Affichage d'état dans l'éditeur des blocs d'actions
Si un programme est en cours d'exécution sur la commande, il est possible d'obtenir les informations d'état suivantes dans l'éditeur de blocs d'actions:
• Barre de couleur sur le bord gauche, étape est active
• les variables binaires marquées en couleur sont logiques '1',
• les variables
logiques '0',
binaires
négativées
marquées
en couleur
sont
• les actions plus complexes marquées de couleurs vont être traitées,
• pour les actions définies dans le temps, le temps actuel écoulé est
affiché au-dessus du temps entré.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-25
Pour mieux illustrer les actions évaluées en fonction du temps, on a utilisé
un programme exemple.
Fig. 7-10: Affichage d'actions activées
A partir de la version 18, il est en outre possible de forcer des actions en
demandant l'assistance du système. Ce forçage entraîne une surcharge
du qualificatif d'action correspondant. Les actions forcées sont caractérisées par un 'F' au-dessus du qualificatif d'action.
Fig. 7-11: Action forcée, <Ctrl>+<F4> préparé pour arrêt
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-26 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Tableaux des actions, étapes et transitions
Un affichage des actions actives sous forme d’un tableau similaire aux tableaux des étapes et transitions est possible.
Ce tableau montre l'ordre concret de l'exécution des actions.
Le masquage et le démasquage de l'affichage s'effectue via 'Démarrage /
Tableaux'.
On peut passer de la fenêtre éditeur à la fenêtre affichage avec <F4>. On
quitte la fenêtre respectivement active avec <Esc>.
Fig. 7-12: Tableau d'actions dans l'éditeur des blocs d'actions
Les actions forcées sont exécutées avant les autres actions dans le cycle
SPS. Dans le tableau d'action, elles apparaissent avec un 'F' en début de
ligne.
Si en cours d'exécution, une action forcée est en outre activée suivant le
mode normal jusque là, elle apparaît alors deux fois dans la liste.
Fig. 7-13: Tableau d'actions avec actions forcées et activées normalement
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-27
7.4 Options dans l'éditeur de blocs d'actions
Les options énumérées ci-après influencent le travail dans l'éditeur de
blocs d'actions. Il est recommandé à l'utilisateur de les définir sous forme
préférentielle.
Option 'Paramètres généraux'
Fig. 7-14: Fenêtre d'options 'Paramètres généraux''
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'.
Cette option permet en commun avec 'Requête lors de la sauvegarde’ la
mémorisation automatique de l'état intermédiaire obtenu. (Le fichier BAK
est alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
<Shift>+<F2>
Affichage de variables
symbolique ou absolu
A l'intérieur du programme, il est possible de remplacer les noms (symboliques) attribués aux actions booléennes par l'adresse absolue et inversement.
Comme, dans la pratique, l'utilisation de cette option peut être fréquemment
nécessaire, elle a été prévue avec la combinaison de touches
<Shift>+<F2>.
Représentation de variables
absolues
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4
et inversement.
Commutation langage de détail
Sélection permet d'insérer une boîte de dialogue pour la sélection du langage de programmation lors de l'accès au niveau de détail.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-28 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Option ‘Paramètres de l'écran’
Fig. 7-15: Fenêtre d'option ‘Paramètres de l'écran’
Fonction
Zone de paramétrage
Autres éditeurs
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
• Paramètre de mise au point
Coupure de nom:
Stratégie permettant de .
couper un nom trop long
Coupure de nombres:
Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
• Bouton
Ok:
Appliquer
Standard:
Interruption:
Accepter les paramètres,
les appliquer dans les éditeurs actuels.
Appliquer paramètres dans les éditeurs
actuels. sans quitter la fenêtre
Restaurer les paramètres standard de la
zone de paramétrage sélectionnée.
Restaurer les paramètres avant
intervention dans la fenêtre et quitter la
fenêtre.
Option 'Paramètres du compilateur'
Nouveauté de la Version 18
Aucune influence, les actions complexes sont toujours retraitées après flanc
descendant.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-29
7.5 Aide dans l'éditeur de blocs d'actions
Conformément à la conception d'aide uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur dans la fenêtre éditeur ou
dans la fenêtre menu. Si des termes sont marqués en couleur, une nouvelle aide peut être sélectionnée (placer le curseur sur le terme voulu,
puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si des termes
sont marqués en couleur, une nouvelle aide peut être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section déclaration du nom marqué par le curseur.
Il est ainsi possible d'avoir une représentation de l'interface d'un bloc
fonctionnel, d'une fonction, d'une variable structurée ainsi que les caractéristiques d'une variable quelconque.
(Dans l'éditeur de blocs d'actions, cette possibilité n'est pas utilisée)
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 7-16: <F1> Aide sur l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-30 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Fig. 7-17: <Ctrl>+<F1> - Aide contextuelle
L’aide contextuelle donne une explication sur la position actuelle du curseur.
Dans l’exemple, le curseur se trouve dans la colonne ’Qualificatif d’action’.’
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1>, il est
possible après activation de la combinaison de touches <Alt>+<S> d'entrer
dans la fenêtre d'aide un terme de recherche ou une partie de ce terme.
Fig. 7-18: Cherche le terme TIME dans l’aide
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-31
7.6 Touches dans l'éditeur de blocs d'actions
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Colonne de la grille vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Colonne de la grille vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
Touche (s)
Touches d’effacement
<Ctrl>+<Y>
Effacement de blocs d'actions complets
Touche (s)
Accès
<Ctrl>+<Enter>
Passage à l'éditeur IL / LD / FBD
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-32 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Menu local dans l'éditeur de blocs d'actions
Dans chaque éditeur un menu local (combinaison de touches <Alt>+<F10>)
permet un accès rapide, regroupé, à des instructions importantes de l'éditeur.
Fig. 7-19: Menu local de l'éditeur de blocs d'actions
Test de syntaxe
Test sur les erreurs de syntaxe
<F6>
Commentaire édition
pour l’action actuelle
<Ctrl>+<F6>
Commentaire on/off
Commentaire, ligne complète on/off
<Shift>+<F2>
Symb. / Abs.
Commutation représentation symbolique/absolue de variables
<Alt>+<P>
Imprimer
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<U>
Passage à l'éditeur
Passage aux éditeurs 'voisins'
Instructions Quick
Offre d'instructions ^Q actuelle
Instructions bloc
Offre d'instructions ^K actuelle
Instructions bloc dans l'éditeur de blocs d'actions
Le but des Instructions bloc est de minimiser le travail lors de l’introduction de
nouvelles entrées. Un bloc à l'intérieur de l'éditeur de blocs d'actions se compose d'une ou de plusieurs lignes qui se suivent directement.
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Marquer Début du bloc
<Ctrl>+<K><K>
Marquer Fin de bloc
<Shift>+>CursorUp> ou
<Shift>+>CursorDown>
Marquer bloc
<Ctrl>+<K><H>
Masquer le bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><L>
Marquer ligne en tant que bloc
<Ctrl>+<K><W>
Ecrire le bloc
<Ctrl>+<K><R>
Lire le bloc
<Ctrl>+<K><3>
Bloc vers éditeur de texte
<Ctrl>+<K><4>
Bloc de l'éditeur de texte
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-33
Marquer le début du bloc
<Ctrl>+<K><B>
Placer le curseur sur le premier bloc d’actions voulu puis activer la combinaison de touches <Ctrl>+<K><B>.
Marquer la fin du bloc
<Ctrl>+<K><K>
Placer le curseur sur le dernier bloc d’actions voulu puis activer la combinaison de touches <Ctrl>+<K><K>.
Masquer le bloc
<Ctrl>+<K><H>
Le bloc marqué est rendu visible ou invisible par activation de la combinaison de touches <Ctrl>+<K><H> .
Effacer un bloc
<Ctrl>+<K><Y>
Déplacer le bloc
<Ctrl>+<K><V>
Marquer une ligne en tant que
bloc
Ecrire bloc
<Ctrl>+<K><W>
Lire bloc
<Ctrl>+<K><R>
Envoyer bloc dans éditeur de
texte <Ctrl>+<K><3>
Récupérer bloc de l' éditeur de
texte <Ctrl>+<K><4>
Tous les blocs d'actions marqués seront effacés sans avertissement.
Le bloc marqué va être déplacé directement à l'aval de la position marquée
par le curseur. Comme lors de l'introduction d'un nouveau bloc d'actions,
l'affectation du pied de page est ici importante.
La ligne actuelle va être marquée en tant que bloc.
Archivage du bloc marqué sur un support de données, au choix avec informations de détail.
Lecture du bloc marqué à partir du support de données. Si le bloc est déjà
utilisé, un avertissement aura lieu indiquant qu'il peut y avoir des différences
dans les détails. Si on ignore cet avertissement, l'ancien détail sera utilisé,
dans le cas contraire, le nouveau.
Archivage du bloc marqué (avec détail) dans l'éditeur de texte.
Récupérer le bloc marqué (avec détail) de l'éditeur de texte. Si le bloc est
déjà utilisé, un avertissement aura lieu indiquant qu'il peut y avoir des différences dans les détails. Si on ignore cet avertissement, l'ancien détail sera
utilisé, dans le cas contraire, le nouveau.
Instructions Quick dans l'éditeur de blocs d'actions
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début du bloc d'actions
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin du bloc d'actions
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début de la page
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin de la page
<Ctrl>+<Q><P>
vers la dernière position
Par ailleurs, on a implémenté:
Recherche d'une chaîne de
caractères <Ctrl>+<Q><F>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Cette fonction utilise la fenêtre ci-après (voirFig. 7-20: Recherche et remplacement d'un texte (chaîne de caractères)) avec les mêmes éléments
de sélection, seule la ligne ‘Nouveau texte’ a disparu.
7-34 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 7-20: Recherche et remplacement d'un texte (chaîne de caractères)
Cherche Texte
CLEAR_ERR
Le texte à rechercher est tout d'abord prédéfini par le terme sur lequel se
trouve le curseur.
On peut soit réécrire ce terme soit sélectionner un autre terme déjà utilisé
auparavant via la fenêtre history. Le texte de remplacement (Nouveau
Texte:) peut être entré manuellement ou être sélectionné via la fenêtre
history.
• Eléments:
[X]
Variables et constantes
[ ]
Repère
[ ]
Bloc fonctionnel
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments
peuvent être sélectionnés.
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas sélectionnables (grisés).
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
En options, on peut demander au système d'ignorer les majuscules et minuscules et de ne rechercher que des mots complets.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-35
Guide de programmation SPS - 18VRS
• Mode:
( )
à partir du curseur
( )
tout autour
(*)
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la direction
ou inversement sur toute la zone.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-36 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
7.7 Modifications de l'exécution des actions par rapport à la
version 17
Réserves lors de l'utilisation de
qualificatifs d'action limités
dans le temps (AQ)
L'affectation de l'entrée du bloc ActionControl est réglementée par la norme
EN 61131-3 en corrélation avec les qualificatifs d'action limités dans le
temps.
L'IEC définit dans ce contexte trois situations susceptible d'entraîner un
conflit AQ.
K1. Il existe plus d'une liaison active avec une ou plusieurs entrées du
bloc fonctionnel ActionControl qui est affecté d'un qualificatif d'action
limité dans le temps. Un tel cas se produit par exemple quand dans
un SFC deux étapes sont actives, l'une référençant une action A1
avec le AQ-D et l'autre la même action avec un AQ-DS. Le même
cas se produirait si la première étape référence l'action A1 avec l'AQD et l'autre étape la même action avec l'AQ-D, indépendamment des
délais respectifs. Le fait que plusieurs liaisons soient actives en
même temps constitue à lui seul un conflit.
K2. L'entrée SD du bloc fonctionnel ActionControl devient active alors que
la sortie Q du flip-flop SL est active.
K3. L'entrée SL du bloc fonctionnel ActionControl devient active alors que
la sortie Q du flip-flop SD est active.
Traitement de la durée
d'exécution en cas de conflits de
qualificatifs d'action
Les situations de conflit définies par l'IEC doivent être traitées de façon
telle qu'une interruption du programme SPS soit évitée et qu'un comportement défini puisse être réalisé.
Etant donné les situations de conflit qui peuvent apparaître correspondent
à des dysfonctionnements du programme utilisateur SPS, le déclenchement d'un avertissement de la durée d'exécution SPS est absolument
indispensable.
Il est recommandé de traiter les situations de conflit en suivant une méthode conformément aux règles suivantes:
1. Une liaison devenue active au cours de cycles précédents reste valide
pour le traitement de l'action. Toutes les autres liaisons impliquées
dans le conflit sont ignorées tant que le conflit existe.
2. Si le conflit ne peut pas être entièrement éliminé en appliquant la règle
1, ceci signifie qu'il existe une activation simultanée de plusieurs liaisons avec les entrées ActionControl dotées d'un qualificatif d'action
temporel. Le conflit sera éliminé en fixant l'ordre de priorité des AQ
La priorité est définie comme suit: L>D>SD>DS>SL (Ordre des entrées au bloc fonctionnel ActionControl). Les liaisons présentant le niveau de priorité supérieur sont déterminantes pour le traitement de
l'action. Toutes les autres liaisons impliquées dans le conflit sont ignorées tant que le conflit existe.
Si plusieurs liaisons actives à une entrée ActionControl présentent des
temps différents, le temps utilisé pour le traitement de l'action sera
celui défini par le bloc d'actions qui a été pris le plus tôt en compte
dans l'exécution graphique du SFC.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
SFC à quatre situations de
conflit AQ potentielles
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-37
VWHS
!
W W
VWHS VWHS
W W
! VWHS VWHS W W
VWHS VWHS W
...
STEP step4
' 7V D
' 7V D
/ 7V D
6' 7V D
6' 7V D
STEP step5
/ 7V D
STEP step7
' 7V D
/ 7V D
VWHS
STEP step8
W
6/ 7V D
V
step1
V
/ 7V D
La représentation ci-dessus montre un SFC convenant pour une illustration du traitement de la durée d'exécution réalisée par le système d'exploitation SPS en cas de conflits de qualificatifs d'action. Ci-après, on
trouvera une description des quatre situations de conflit potentiel avec
leur traitement respectif.
• Situation 1 – Conflit en relation avec l'action a1:
a. Si l'étape7 devient active 5s après l'activation de l'étape4, on est en
présence d'un conflit K1 Ce conflit peut être résolu avec la règle 1.
La nouvelle liaison active additionnelle de l'étape7 avec l'entrée D de
l'ActionControl de l'action a1 sera ignorée. La temporisation de 15 s qui
a déjà été lancée continue à s'écouler.
Si ensuite, l'étape4 devient inactive, la temporisation continue étant
donné que l'étape7 possède une liaison active à l'entrée D de l'ActionControl de l'action a1.
b. Si l'étape7 devient active 20s après l'activation de l'étape4, on est en
présence d'un conflit K1 Ce conflit peut être résolu avec la règle 1.
La nouvelle liaison active additionnelle de l'étape7 avec l'entrée D de
l'ActionControl de l'action a1 sera ignorée. L'action continue à être active (la temporisation n'est pas relancée).
Si ensuite, l'étape4 devient inactive, l'action continue à être active (la
temporisation n'est pas relancée) étant donné que l'étape7 possède
une liaison active à l'entrée D de l'ActionControl de l'action a1.
• Situation 2 – Conflit en relation avec l'action a2:
Si l'étape4 et l'étape5 deviennent actives en même temps, on est en présence d'un conflit K1. Ce conflit peut être résolu avec la règle 2. La
nouvelle liaison active de l'étape4 avec l'entrée D de l'ActionControl de
l'action a2 sera ignorée. L'action est activée avec temps limite de 15s.
Si l'étape5 devient active 10s après son activation, le temps limite est
stoppé, l'action désactivée et la temporisation de 5 s lancée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-38 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
• Situation 3 – Conflit en relation avec l'action a3:
a. Si l'étape7 devient active 5s après l'activation de l'étape4, on est en
présence d'un conflit K1 Ce conflit peut être résolu avec la règle 1.
La nouvelle liaison active additionnelle de l'étape7 avec l'entrée L
de l'ActionControl de l'action a3 sera ignorée. Le temps limite de 15
s qui a déjà été lancé continue à s'écouler.
Si ensuite, l'étape4 devient inactive, le temps limite continue à
s'écouler étant donné que l'étape7 possède une liaison active à
l'entrée L de l'ActionControl de l'action a3.
b. Si l'étape7 devient active 20s après l'activation de l'étape4, on est
en présence d'un conflit K1 Ce conflit peut être résolu avec la règle
1.
La nouvelle liaison active additionnelle de l'étape7 avec l'entrée L
de l'ActionControl de l'action a3 sera ignorée. L'action continue à
être inactive (le temps limite n'est pas relancé).
Si ensuite, l'étape4 devient inactive, l'action continue à être inactive
(le temps limite n'est pas relancé) étant donné que l'étape7 possède une liaison active à l'entrée L de l'ActionControl de l'action a3.
• Situation 4 – Conflit en relation avec l'action a4:
a. Si l'étape8 devient active après que l'étape4 soit devenue inactive,
on est en présence du conflit K2. Ce conflit peut être résolu avec la
règle 1.
La nouvelle liaison active additionnelle de l'étape8 avec l'entrée SL
de l'ActionControl de l'action a4 sera ignorée. La temporisation de
15 s qui a déjà été lancée continue à s'écouler.
N.B.
Avec l'action5, il n'y a jamais de conflit tant que l'étape4 et
l'étape8 ne sont pas actives en même temps!
Les situations de conflit représentées résultent de programmes SPS qui ne sont pas implémentés suivant les normes.
Ces erreurs doivent absolument être éliminées.
Une exploitation du traitement de la durée réalisée par le
système d'exploitation SPS doit absolument être évitée.
Coordination dans le temps du
retraitement des actions
Le retraitement de toutes les actions s'effectue dans le cycle d'alternance
des sorties ActionControl Q et A.
Comme le retraitement des actions n'est nécessaire qu'une seule fois, il
s'effectue indépendamment de la structure graphique du SFC. Les actions sont retraitées dans l'ordre qui découle de leur classement à l'intérieur de la liste d'actions.
Coordination dans le temps du
traitement des actions
Le traitement des actions est assujetti de façon figée à la structure graphique du SFC. Chaque étape du SFC modèle une fonctionnalité complexe se rapportant à une procédure réelle. Les actions doivent par conséquent être traitées comme spécifiées par les étapes. L'interpréteur de
structures réalise dans ce contexte la stratégie d'exécution suivante:
• Les étapes du SFC sont parcourues ligne par ligne de gauche à droite
et de bas en haut.
• Pour chaque étape considérée, les blocs d'actions sont parcourus de
haut en bas.
• Pour chaque bloc d'action considéré, un contrôle de la sortie Q du bloc
fonctionnel ActionControl correspondant à l'action référencée est effectué. S'il présente la valeur FALSE, la prise en considération du bloc
d'actions actuel peut être interrompue.
Dans le cas contraire, il faut vérifier si l'étape actuellement considérée
est active. Si l'étape est active, l'action peut être traitée et la prise en
considération du bloc d'actions actuel être interrompue.
Dans le cas contraire, il faut vérifier si l'un des quatre blocs S_FF,
SD_TMR, DS_FF, SL_& présente TRUE en sa sortie. Si aucune sortie
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Blocs d’actions (ACTION BLOCK) et actions (ACTION) 7-39
ne présente la valeur TRUE, la prise en considération du bloc d'actions actuel peut être interrompue.
Dans le cas contraire, l'action peut être traitée et la prise en considération du bloc d'actions actuel être interrompue.
Cette stratégie permet le traitement multiple d'une action dans un cycle
SPS.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
7-40 Blocs d’actions (ACTION BLOCK) et actions (ACTION)
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-1
8 Liste d’instructions, IL, INSTRUCTION LIST
Le langage de programmation "IL" peut, comme le montre la figure suivante, être utilisé en tant qu'éditeur autonome pour l'entrée de programmes,
de blocs fonctionnels et de fonctions. Il peut également, avec la même
étendue d'instructions, être utilisé pour le remplissage de transitions (voir
Chapitre 6, 'Organigramme séquentiel, SFC') et d'actions dans des blocs
d'actions (voir Chapitre 7 'Blocs d'actions et actions').
,27$%(//(
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
1
RECO III.QQQ............................ (seulement avec programmes!)
IMPORTATION
IMPORT FROM
Commentaire
FUNCTION (*Fonctions définies par utilisateur*) Importation de
NAND8
(*Fonction NAND avec 8 entrées*) Fonctions(FK), Blocs
NOR8
(*Fonction NOR avec 8 entrées *) fonctionnels (FB) et
de types de données (TY)util.
)8
'(./$5$7,21
avant leur utilisation
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON %E0.1.1
(* Introducteur
*) et blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) (FB et fb) avant leur
(1'B9$5 utilisation
EConvention de types
VAR_OUTPUT (* Déclaration des sorties
*) de données utilisateur
$:/
Marque Operation Operande
Entrée du corps de programme,
Commentaire
de bloc fonctionnel ou
de fonctions dans
validation du moteur à ventilateurs*)
LD
éditeur IL,
ON
(* Mode manuel ventilateur*)
ORN
LD ou
TEM
(* Surveilltemperature>>
ANDN
FBD
ALARM
(* arrêtAlarmab>>
ST
MOTEUR
(* Moteur de ventilateur*)
)%'
.23
21$/$50MOTEUR 7(0 Fig. 8-1:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Création d'un programme 'PR', bloc fonctionnel 'FB' ou d'une fonction
'FK' dans la liste d'instructions'
8-2 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
8.1 Eléments de base
Architecture de la liste d’instructions
La liste d'instruction est un langage de programmation où le programme utilisateur est noté en tant que suite d'instructions. Chaque instruction commence
par une nouvelle ligne.
Fig. 8-2: Liste d’instructions
1ère colonne
Une marque (étiquette, repère) peut y être enregistrée en tant que destination du
saut. Cette marque comporte au maximum 6 caractères et se termine par un ':'
Elle peut se trouver au début d'un nouveau réseau (trait blanc indique la zone de
réseau).
2ème colonne
Cette colonne est prévue pour l'opération de la ligne IL respective.
3ème colonne
L'opérande qui doit être modifié en fonction de l'opération, y est inscrit
dans la mesure où ceci est nécessaire pour l'opération correspondante.
4ème colonne
Dans cette colonne on inscrit le commentaire relatif à la ligne respective.
En supplément, il est également possible d'entrer un commentaire de
lignes sur les 4 colonnes.
Des lignes vierges et lignes de commentaires pures sont permises
L'exécution de cette liste s'effectue de façon standard de haut en bas.
Ce tracé rigoureux peut être interrompu par des sauts inconditionnels et
conditionnels.
En tant que forme particulière de la ligne d'instruction, une étiquette séparée sans opération et commentaire consécutifs est permis.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-3
Opérateurs et modificateurs
Les opérations sont les éléments les plus importants de la liste d'instructions; en tant que tel, elles se composent:
• de l'opérateur respectif et
• d'un ou de deux modificateursn – si besoin est.
N°
1
2
3
Opérateur
LD
ST
SET
RES
AND
OR
XOR
ADD
MUL
SUB
DIV
MOD
GT
GE
EQ
NE
LE
LT
JMP
CAL
RET
)
4
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Modificateur
N
N
C, N
C, N
N, (
N, (
N, (
(
(
(
(
(
(
(
(
(
(
(
C, N
C, N
C, N
Opérande
(1)
(1)
BOOL
BOOL
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
(1)
LABEL
(2)
NAME
(3)
(1)
Signification
égalise le résultat actuel avec l'opérande
mémorise le résultat actuel sur l'opérande
met les opérandes booléens sur '1'
met les opérandes booléens sur '0'
ET logique
OU logique
OU exclusif logique
Addition
Multiplication
Soustraction
Division
Modulo-Division
Comparaison: >
Comparaison: >=
Comparaison: =
Comparaison: <>
Comparaison: <=
Comparaison: <
Saut vers l'étiquette
Appel du bloc fonctionnel
Retour d'un FB ou d'une fonction
Fin d'une Opération
(1) Le résultat actuel et l'opérande doivent être du même type.
(2) Point de départ et point de destination du saut doivent se trouver dans la
même IL, c'est-à-dire par exemple dans la même action ou, si l'éditeur IL est
utilisé seul, sans structure SFC, à l'intérieur du même programme, bloc fonctionnel ou de la même fonction.
(3) A l'extrémité finale physique d'un bloc fonctionnel ou d'une fonction, l'instruction return peut être supprimée.
Le tableau doit ensuite être analysé et les différentes opérations possibles être
complétées avec les types de données autorisés dans leur cas particulier.
Instructions de chargement et de transport
(seulement pour opérandes de même type)
LD
LDN
ST
STN
charge la valeur de l'opérande
charge la valeur négative (bit par bit) de l'opérande
fixe la valeur actuelle sur celle de l'opérande
fixe la valeur actuelle négative, bit par bit, sur celle de l'opérande
1) et 2)
1)
1) et 2)
1)
admis pour les types de données:
1) BOOL, BYTE, WORD, DWORD
2) SINT,INT,DINT,USINT,UINT,UDINT,REAL
Instructions complexes de
chargement et de transport
LD
charge la valeur de l'opérande
ST
admis pour le type de données: STRUCT, ARRAY, STRING, CHAR,
Adresse de (P#), Pointeur.
fixe la valeur actuelle sur l'opérande
admis pour le type de données: STRUCT,ARRAY,STRING,CHAR, Pointer.
Instructions Mise à 1 et
Remise à zéro (Set et Reset)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-4 Liste d’instructions, IL, INSTRUCTION LIST
SET
SETC
SETCN
RES
RESC
RESCN
Guide de programmation SPS - 18VRS
Pose d'une opérande binaire (inconditionnel)
Pose d'une opérande binaire si condition (VALEUR ACT.=1) remplie
Pose d'une opérande binaire si condition (VALEUR ACT.=0) non remplie
Opérande binaire est remis à zéro (inconditionnel)
Opérande binaire est remis à zéro si condition (VALEUR ACT.=1) remplie
Opérande binaire est remis à zéro si condition (VALEUR ACT.=0) non remplie
admis pour le type de données: BOOL
Opérations logiques
(seulement pour opérandes de même type)
AND
ANDN
AND(
OR
ORN
OR(
XOR
XORN
XOR(
AKT. VALEUR ET Opérande (bit par bit), Valeur suivant VALEUR ACT.
VALEUR ACT. ET Opérande négativé (bit par bit), Valeur suivant VALEUR ACT
ET-Parenthèse ouverte
VALEUR ACT. OU Opérande (bit par bit), Valeur suivant VALEUR ACT
VALEUR ACT. OU Opérande négativé (bit par bit), Valeur suivant VALEUR ACT
OU-Parenthèse ouverte
VALEUR ACT. OU exclusif Opérande (bit par bit), Valeur suivant VALEUR ACT.
VALEUR ACT. OU exclusif Opérande négativé (bit par bit), Valeur suivant VALEUR ACT.
OU exclusif-Parenthèse ouverte
admis pour le type de données: BOOL, BYTE, WORD, DWORD
Opérations arithmétiques
(seulement pour opérandes de même type)
ADD
ADD(
SUB
SUB(
MUL
MUL(
DIV
DIV(
MOD
MOD(
Addition, VALEUR ACT.: = VALEUR ACT.+ Opérande
Addition de l'expression suivante sur la VALEUR ACT.
Soustraction, VALEUR ACT.: = VALEUR ACT. - Opérande
Soustraction de l'expression suivante sur la VALEUR ACT.
Multiplication, VALEUR ACT.: = VALEUR ACT. x Opérande
Multiplication VALEUR ACT. avec l'expression suivante
Division, VALEUR ACT.: = VALEUR ACT./Opérande
Division VALEUR ACT. par l'expression suivante
Modulo-D, VALEUR ACT.: = VALEUR ACT: /Opérande
Modulo-Division VALEUR ACT. par l'expression suivante
Non définie pour REAL!
Non définie pour REAL!
admis pour type de données: SINT,INT,DINT,USINT,UINT,UDINT;REAL
Opérations arithmétiques complexes
(seulement pour opérandes de même type)
ADD
ADD(
Addition de la seconde chaîne de caractères à la première
Addition de la seconde chaîne de caractères à la première
admis pour type de données: STRING
Sauts dans la liste d'instructions
JMP
LABEL
JMPC
LABEL
JMPCN LABEL
Saut à la marque LABEL (inconditionnel)
Saut à LABEL, si condition remplie (VALEUR ACT.=1)
Saut à LABEL, si condition non remplie (VALEUR ACT.=0)
Appel de bloc fonctionnel Appel dans l'IL
CAL
NAME
CALC
NAME
CALCN NAME
RET
RETC
RETCN
Appel FUNCTION_BLOCK (inconditionnel)
Appel FUNCTION_BLOCK, si condition (VALEUR ACT.=1) remplie
Appel FUNCTION_BLOCK, si condition (VALEUR ACT.=0) non remplie
Retour FUNCTION_BLOCK (inconditionnel)
Retour FUNCTION_BLOCK, si condition (VALEUR ACT.=1) remplie
Retour FUNCTION_BLOCK, si condition (VALEUR ACT.=0) non remplie
Des appels conditionnels de FUNCTION_BLOCK ne sont utilisés que dans la
liste IL! La liste IL ainsi entrée ne peut alors pas être représentée en LD ou FBD.
Comparaisons
(Egalité de type nécessaire!)
GT
GT(
GE
Comparaison: VALEUR ACT. > Opérande
Comparaison: VALEUR ACT. > Expression
Comparaison: VALEUR ACT. >= Opérande
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
GE(
EQ
EQ(
NE
NE(
LT
LT(
LE
LE(
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Comparaison:
Liste d’instructions, IL, INSTRUCTION LIST
VALEUR ACT. >= Expression
VALEUR ACT. = Opérande
VALEUR ACT. = Expression
VALEUR ACT. <> Opérande
VALEUR ACT. <> Expression
VALEUR ACT. < Opérande
VALEUR ACT. < Expression
VALEUR ACT. <= Opérande
VALEUR ACT. <= Expression
admis pour type de données:
8-5
SINT, INT, DINT; USINT, UINT, UDINT;
REAL, STRING, CHAR sont évalués
dans l'ordre alphabétique.
lors de comparaisons REAL!
+0 ≠ –0
ATTENTION
Comparaisons complexes
EQ
EQ(
NE
NE(
Comparaison:
Comparaison:
Comparaison:
Comparaison:
VALEUR ACT. = Opérande
VALEUR ACT. = Expression
VALEUR ACT. <> Opérande
VALEUR ACT. <> Expression
admis pour type de données:
BOOL, BYTE, WORD, DWORD,
ARRAY, STRUCT
8.2 Edition de listes d’instructions
Entrée d'une liste d'instructions simple
Conformément à l'évolution indiquée à la fig. 8-1 ., on trouvera ci-après
une représentation du travail avec l'éditeur de listes d'instructions. En tant
qu'exemple, on a choisi la fonction définie par utilisateur SELECT.
Travaux préliminaires
nécessaires
au niveau
'Programme'
au niveau 'bloc fonctionnel'
Au niveau
'Fonctions'
• Affectation I-O de la périphérie utilisée
• Importation des types de données, fonctions et blocs fonctionnels utilisés définis par utilisateur.
• Déclaration des variables et blocs fonctionnels utilisés
• Importation des types de données, fonctions et blocs fonctionnels utilisés définis par utilisateur.
• Déclaration des variables et blocs fonctionnels utilisés
• Importation des types de données et fonctions utilisés définis par utilisateur.
• Déclaration des variables utilisées.
Pour la fonction nommée, l'importation n'est pas nécessaire. La section
déclaration est représentée ci-après.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-6 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Fig. 8-3: Section déclaration pour la Fonction SELECT
Les commentaires de déclaration se rapportant aux variables sont inscrits
dans la figure.
Si l'utilisateur utilise l'option 'Paramètres généraux', ces commentaires
apparaissent automatiquement dans la ligne IL lors de l'utilisation des
variables. (Ils peuvent être réécrits.)
Si l'utilisateur refuse cette option, la colonne commentaire à l'aval des
variables reste vide.
Lors du premier appel, le curseur se trouve dans la seconde colonne –
Opérations, qui est la colonne la plus souvent utilisée.
Les opérations peuvent être soit entrées directement (automatiquement avec
majuscules) soit empruntées à la fenêtre de sélection après activation de la
touche <7>. (Sélection avec curseur, confirmation avec touche <Enter>)
Fig. 8-4: Editeur IL, Fenêtre de sélection pour opérations
Via la touche <6>, on peut faire apparaître la fenêtre de sélection des Fkmicrologicielles et des FK-utilisateur déclarées dans l'éditeur d'importation.
(Sélection avec curseur, confirmation avec <Enter>).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-7
Le remplissage d'une telle fonction est décrit au Chapitre ' Fonctions et
Blocs fonctionnels dans la liste d'instructions' Page 8-8.
A partir de la seconde colonne, on peut se déplacer avec le curseur vers la
gauche dans la colonne 'Marque / Commentaire de ligne'. Les instructions de
pied de page sont actualisées automatiquement. (8-Marque/ 0-(* correspond
à entrée de commentaire, si la ligne est vide le commentaire peut être entré
tout simplement.) Si une entrée existe déjà dans un des champs de la ligne
IL, on peut alors après sélection de la touche <0> réécrire cette ligne ou bien
la compléter, si un mouvement du curseur a été effectué auparavant.
N.B.
(NOUVEAUTE A PARTIR DE LA VERSION 16)
Insertion d'une ligne vide au moyen de la touche <Enter>
• Si le curseur se trouve en début de ligne (colonne 1 ou 2) une ligne
vide sera insérée en amont.
• Si le curseur se trouve à un autre emplacement dans une ligne (complète), la ligne vide sera insérée à l'aval.
Fig. 8-5: Editeur IL pour l'entrée de la fonction SELECT
Séquence d'entrée
LD<Enter>SEL<Enter>Requête de sélection<Enter>
JMPCN<Enter>L_1<Enter>
<Enter>
Pour le moment, l'étiquette 'L_1' n'existe pas en tant que destination du
saut Afin de permettre la poursuite du travail, un contrôle rigoureux de
syntaxe tel qu'habituellement appliqué dans les autres éditeurs n'est encore
pas effectué ici. Il n'est amorcé que lorsqu'on quitte l'éditeur IL au moment
de l'essai de traduction ou après activation de <Alt>+<F10>, Test de syntaxe.
Séquence d'entrée
LD<Enter>i1<Enter>Sélection Valeur i1<Enter>
ST<Enter>M_INT<Enter>Mémoriser résultat<Enter>
JMP<Enter>L_E<Enter>
<Enter>
L_1:<Enter>LD<Enter>i2<Enter>Sélection Valeur i2<Enter>
ST<Enter>M_INT<Enter>Mémoriser résultat<Enter>
<Enter>
L_E:<Enter>LD<Enter>M_INT<Enter>Récupérer résultat intermédiaire
<Enter>
ST<Enter>SELECT<Enter>Archiver en tant que résultat FK<Enter>
A l'intérieur d'une ligne, il est également possible d'utiliser la touche
<Space> au lieu de <Enter> pour commuter. (Si la ligne est complète,
une nouvelle ligne sera ouverte avec la touche <Enter>).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-8 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
A l'intérieur d'un mot à entrer ou d'une ligne, on utilise les instructions
habituelles de l'éditeur DOS ou de 'wordstar' . Voir Chapitre 8.6 'Touches
dans l'éditeur IL' Activer Page 8-18)
Si lors de l'introduction d'un nom de variable, le système détecte que ce
nom n'a pas encore été déclaré, la fenêtre erreur suivante permet le passage dans l'éditeur de déclaration. On a ainsi la possibilité de convenir
d'un nouveau nom et de retourner avec <Esc> à la place précédente
dans la liste IL. (Déclaration a posteriori de variables).
Fonctions et blocs fonctionnels dans la liste d’instructions
Fonctions dans la liste d’instructions
Pour appeler des fonctions, il faut inscrire leur nom dans le champ Opérateur. La VALEUR ACT. est utilisée en tant que première entrée, sans
nommage exprès. si une fonction a par exemple 'n'-entrées, il ne sera
demandé que 'n-1'- entrées. La VALEUR ACT. assume la place de la
première entrée.
Une succession de fonctions n'est possible que via la première entrée
respective.
L'entrée d'autres valeurs est forcée si besoin.
Var1
Marque
).7B( ).7B( (
( ).7B(
9DU (
(
9DU (
Var4 (
9DU
Opération
Opérande
LD
Var1
Commentaire
(*Récupérer premier opérande*)
FKT_E1
(*Fonction avec une entrée*)
Var2
(*Résultat = premier opérande*)
(*Fonction avec deux entrées*)
(*deuxième opérande*)
FKT_E3(
E2:=
E3:=
)
Var3
Var4
(*Résultat = premier opérande*)
(*Fonction avec trois entrées*)
(*deuxième opérande*)
(*troisième opérande*)
ST
Var5
(*Sortie du résultat*)
FKT_E2(
E2:=
)
En tant qu’exemples pour l’application de fonction, on peut utiliser les
réseaux 12 et 13 du bloc fonctionnel AOVR (voir au chapitre 2 'Exemple
de bloc fonctionnel utilisateur').
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
12
13
Liste d’instructions, IL, INSTRUCTION LIST
Utilisation de fonctions
(Extrait du FB ‘AOVR’,
(*Cadrer
OVERRIDE
*)
Représentation
en FBD)
(*DINT, da 129*255 > INT!!*)
O100:
%<7(B,17 ,17B',17 IOVR %<7(B
,17B
,17B',17 MAX ,17B
255
',17B,17 ,17B86,
',17B
,17B
8-9
4295
La déclaration des variables s'effectue ensuite dans la section déclaration. Une importation n'est pas nécessaire, des conversions de type peuvent être effectuées avec des fonctions standard.
Fig.8-6: Section déclaration de l'exemple
La liste d'instructions correspondante est illustrée ci-après:
12
13
(*Cadrer OVERRIDE *)
(*DINT, da 129*255 > INT!!*)
O100:.. LD........ IOVR..............
....... BYTE_INT.. ..................
....... INT_DINT.. ..................
....... MUL(...... ..................
....... LD........ MAX...............
....... INT_DINT.. ..................
....... )......... ..................
....... DIV....... 255...............
....... DINT_INT.. ..................
....... INT_USI... ..................
....... ST........ QOVR..............
(*OVERRIDE*)..................
..............................
..............................
..............................
(*Valeur max. Override*)......
..............................
..............................
..............................
..............................
..............................
(*OVERRIDE cadré*)............
L'application de la liste IL est particulièrement recommandée lors de conversions fréquentes de type étant donné que l'exactitude syntaxique de l'IL
n'est vérifiée qu'après entrée complète. Les langages LD et FBD sont en
mesure de représenter de telles conversions de type également graphiquement. (voir Chapitre 2 'Exemple – Bloc-fonctionnel utilisateur').
Dans l'exemple présenté, on a utilisé l'option 'Commentaire de déclaration dans l'implémentation', c'est-à-dire que les commentaires entrés
dans l'éditeur de déclarations sont disponibles dans l'implémentation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-10 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Si le curseur se trouve sur le nom d'une fonction définie par utilisateur, il est
possible d'accéder à cette fonction via la combinaison de touches
<Ctrl>+<Enter> ou <Ctrl>+<N>.
Blocs fonctionnels dans la liste d’instructions
Les principes fondamentaux de l'appel seront explicités ci-après à l'aide de
l'exemple RS-FlipFlop (standard). Ce FlipFlop (bascule bistable) doit, dans un
exemple de bloc fonctionnel, tout d'abord être appelé de façon inconditionnelle puis de façon conditionnelle.
A la différence des fonctions pour lesquelles la connexion de toutes les
entrées doit être forcée lors de l'entrée, avec les blocs fonctionnels certaines entrées peuvent rester sans affectation, c'est-à-dire qu'elles conservent
la valeur qu'elles avaient avant l'appel ou, si elles n'ont pas encore été utilisées, leur valeur initiale. Les sorties peuvent être utilisées, c'est-à-dire appelées aussi souvent que désiré.
Fig. 8-7:
Section déclaration pour exemple FB, importation du FB 'RS' n'est pas
nécessaire, vu qu'il s'agit d'un FB-micrologiciel.
Après la déclaration commune, le bloc fonctionnel 'ff75' est tout d'abord appelé de façon inconditionnelle.
REMARQUE: Cette IL peut être représentée dans les langages graphiques
LD et FBD.
FlipFlop, (Bascule bistable)
Appel inconditionnel d’un FB
ff75
56
6B
5B4B
MISE
RESET
Marque
Opération
LD
ST
LD
ST
CAL
LD
ST
RESULTAT
Opérande
MISE A 1
ff75.S_
REMISE A 0
ff75.R_1
ff75
ff75.Q_1
RESULTAT
Commentaire
(*MISE A 1 du ff75*)
(*REMISE A O du ff75*)
(*RS-FlipFlop "ff75"*)
(*Valeur du ff75*)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-11
Avant l'appel 'CAL ff75' , les entrées désirées ont tout d'abord été chargées. Une liste d'instruction complexe peut également remplacer
'LD ....'
Après appel, les sorties traitées sont à disposition pour appel. Si des sorties du 'ff75' sont lues avant l'appel, l'utilisateur reçoit l'ancienne valeur de
calcul, vraisemblablement la valeur initiale.
Si l'appel du 'ff75' est effectué avant une condition 'VALIDATION', il existe
alors deux possibilités:
Appel conditionnel d’un FB
avec ’CALC/CALCN’
Marque
Opération Opérande
LD
MISE A 1
ST
ff75.S_
LD
REMISE A 0
ST
ff75.R_1
Commentaire
(*MISE A 1 du ff75*)
(*REMISE A O du ff75*)
LD
CALC
VALIDATION
ff75
(*Validation–Entrée du ff75*)
(*RS-FlipFlop "ff75"*)
LD
ST
ff75.Q_1
RESULTAT
(*Valeur du ff75*)
Dans la figure ci-dessus, les entrées sont chargées indépendamment
d'un appel ou non des FB. L'appel est effectué en fonction de la condition
qui se trouve devant ‘CALC/CALCN’.
L'IL entrée ne peut pas être représentée graphiquement en LD/FBD.
La seconde possibilité d'un appel conditionnel est représentée dans la
figure suivante. En fonction de la condition VALIDATION, le système
saute le chargement des entrées, l'appel et l'alimentation des sorties. L'IL
entrée peut être représentée graphiquement en LD/FBD.
Appel conditionnel d’un FB par
saut
Marque
Opération Opérande
LD
VALIDATION
JMPCN
m_fin
LD
MISE A 1
ST
ff75.S_
LD
RUECKS
ST
ff75.R_1
CAL
ff75
LD
ff75.Q_1
ST
RESULTAT
m_fin:
Commentaire
(*Validation–Entrée du ff75*)
(*Saut du FB sans chargement des entrées*)
(*MISE A 1 du ff75*)
(*Remise à zéro du ff75*)
(*RS-FlipFlop "ff75"*)
(*Valeur du ff75*)
Si le curseur se trouve dans la ligne d’appel sur le nom d’un bloc fonctionnel
défini par utilisateur, il est possible d'accéder à ce bloc fonctionnel via la combinaison de touches <Ctrl>+<Enter> ou <Ctrl>+<N>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-12 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Représentation ASCII de l'éditeur de listes d'instructions
A partir de la version 17, il est possible d'écrire des UOP complètes en
fichiers ASCII. Chaque éditeur y contribue.
Fig. 8-8: Extrait de l'éditeur IL pour écriture ASCII.
Pour l’affectation suivant Fig. 8-8: Extrait de l'éditeur IL pour écriture ASCII. , on a alors la sortie suivante (sans indication des actions et des blocs
d'actions, abrégée).
LD
SEL
JMPCN L_1
LD
ST
JMP
L_1: LD
ST
(*Requête de la sélection*)
i1
(*Sélection Valeur 1*)
M_INT (*Archivage dans mémoire intermédiaire*)
L_E
i2
(*Sélection Valeur 2*)
M_INT (*Archivage dans mémoire intermédiaire*)
L_E: LD M_INT
ST SELECT
(*archivé en tant que résultat FK*)
Des segments de liste d'instructions peuvent apparaître pour:
• des fonctions et blocs fonctionnels dans la zone implémentation
• des programmes dans la zone implémentation, simulation IO, traitement des données de processus (Interbus G3) et implémentation 2
ms.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-13
8.3 Aide à la mise en route dans la liste d'instructions
Si un programme se trouve en cours d'exécution sur la commande, il est
possible d'obtenir dans l'éditeur IL les informations suivantes sur l'état du
programme ou d'un bloc fonctionnel utilisé.
• Barre de couleur sur le bord gauche, IL est en cours de traitement.
• les variables binaires marquées en couleur sont logiques '1',
• les autres variables sont affichées dans le champ commentaire avec
leur valeur. via l'instruction de pied 2, le commentaire sur l'affichage
peut être ouvert.
Dans les fonctions, cet affichage n'est pas possible étant donné que les
valeurs n'existent qu'au moment des calculs et qu'elles ne sont pas mémorisées.
On se doit ici de souligner une autre particularité:
L'afficheur d'état indique la valeur des variables. Si des 'Sauts' se trouvent
dans l'IL, ces valeurs ne fournissent aucun renseignement sur le traitement effectif des lignes.
Fig. 8-9: Liste d'instructions, informations d'état
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-14 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
8.4 Options dans l'éditeur de listes d'instructions
Les options énumérées ci-après influencent le travail dans l'éditeur de
listes d'instructions. Il est recommandé à l'utilisateur de les définir sous
forme préférentielle. Cette définition est mémorisée lorsqu'on quitte le
système de programmation pour revenir au menu principal.
Option 'Paramètres généraux'
Fig. 8-10: Fenêtre d'options 'Paramètres généraux'
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'.
Cette option permet en commun avec 'Requête lors de la sauvegarde’ la
mémorisation automatique de l'état intermédiaire obtenu. (Le fichier BAK
est alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Commentaire de déclaration
dans l'implémentation
Dans toutes les lignes IL sans commentaire propre, c’est le commentaire
de déclaration qui apparaît.
<Shift>+<F2>
Affichage de variables
symbolique ou absolu
Représentation de variables
absolues
Cette option permet de commuter au niveau 'Programme' entre l'adresse
absolue (si existante) et le nom symbolique des variables.
Commutation langage de détail
Sélection permet d'insérer une boîte de dialogue pour la sélection du langage de programmation lors de l'accès au niveau de détail.
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4
et inversement.
Cette option est également valide dans la documentation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-15
Option ‘Paramètres de l'écran’
Fig. 8-11: Fenêtre d'options ‘Paramètres de l'écran’
Fonction
Zone de paramétrage
Autres éditeurs
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
• Paramètre de mise au point
Coupure de nom:
Stratégie permettant de
couper un nom trop long
Coupure de nombres:
Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
• Bouton
Ok:
Appliquer
Standard:
Interruption:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
les appliquer dans les éditeurs actuels.
Appliquer les paramètres dans les
éditeurs actuels, sans quitter la fenêtre.
Restaurer les paramètres standard de la
zone de paramétrage sélectionnée.
Restaurer les paramètres avant
intervention dans la fenêtre et quitter la
fenêtre.
8-16 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
8.5 Aide dans l'éditeur de listes d'instructions
Conformément à la conception d'aide uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur (dans la fenêtre éditeur ou
dans la fenêtre menu). Si dans une aide contextuelle des termes sont
marqués en couleur, une aide peut alors être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si dans une
aide contextuelle des termes sont marqués en couleur, une aide peut
alors être sélectionnée (placer le curseur sur le terme voulu, puis appuyer
<Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section déclaration du nom marqué par le curseur.
Il est possible de représenter l'interface d'un bloc fonctionnel, d'une fonction, d'une variable structurée ainsi que les caractéristiques d'une variable
quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 8-12: <F1> Aide sur l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-17
Fig. 8-13: <Ctrl>+<F1> - Aide contextuelle
L’aide contextuelle donne une explication sur la position actuelle du curseur. Dans l'exemple, le curseur se trouve dans la colonne 'Opération' sur
LD, colonne 2, ligne 1.
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1>, il
est possible après activation de la combinaison de touches <Alt>+<S>
d'entrer dans la fenêtre d'aide un terme de recherche ou une partie de ce
terme.
Fig. 8-14: Aide sur le terme INT
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-18 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Fig. 8-15: <Shift>+<F1>, Aide déclaration sur l'opérande QOVR
Si le curseur se trouve sur une variable, l’information de la ligne de sa
déclaration apparaît alors.
Fig. 8-16: <Shift>+<F1>, Aide déclaration sur la fonction utilisateur BYTE_INT
⇒ Placer le curseur sur la position d’appel de BYTE_INT.
⇒ Activer la combinaison de touches <Shift>+<F1>
Le symbole (interface) avec les types des entrées et sorties et le
commentaire à la déclaration au moment de l'importation de la fonction ou du bloc fonctionnel est alors affiché.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8.6 Touches dans l'éditeur IL
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent .
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Colonne de la grille vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Colonne de la grille vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
<Shift>
<CursorUp>
Marquer bloc
<Shift>
<CursorDown>
<Shift>
<PageUp>
<Shift>
<PageDown>
Touche (s)
Touches d’effacement
<Ctrl>+<G>
<Delete>
Effacement d'un caractère
<Ctrl>+<H>
<CursorLeft>
Effacement d'un caractère en aval
Effacer une ligne complète
<Ctrl>+<Y>
<Ctrl>+<V>
<Insert>
Commutation Réécrire/Remplacer
<Ctrl>+<M>
<Enter>
Fin d'une ligne
Touche (s)
Accès
<Ctrl>+<Enter> <Ctrl>+<N>
Passage au FB/FK
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-19
8-20 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Menu local dans l'éditeur IL
Dans chaque éditeur il existe un menu local (combinaison de touches
<Alt>+<F10>) qui permet de regrouper des instructions importantes de
l'éditeur de façon à ce qu'elles soient rapidement accessibles.
Fig. 8-17: Menu local de l'éditeur IL
Test de syntaxe
contrôle s'il existe des erreurs de syntaxe dans la liste d'instructions
<Ctrl>+<F6>
Commentaire on/off
Ligne complète du commentaire
<Ctrl>+<U>
Passage à l'éditeur
Passage à l'éditeur LD /FBD
<Alt>+<P>
Imprimer
Sortie sur imprimante du contenu de l'éditeur
Instructions Quick
Offre d'instructions ^Q actuelles
Instructions bloc
Offre d'instructions ^K actuelles
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
8-21
Instructions bloc dans la liste d’instructions
Le but des Instructions bloc est de minimiser le travail par rapport à une
introduction de nouvelles entrées.
Un bloc à l'intérieur de l'éditeur IL se compose d'une ou de plusieurs lignes
qui se suivent directement.
Pour l'éditeur IL, les opérations bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Marquer Début du bloc
<Ctrl>+<K><K>
Marquer Fin de bloc
<Shift>+>CursorUp> ou
<Shift>+>CursorDown>
Marquer bloc
<Ctrl>+<K><L>
Marquer ligne en tant que bloc
<Ctrl>+<K><H>
Masquer le bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><C>
Copier bloc
<Ctrl>+<K><W>
Ecrire des blocs sur disquette
<Ctrl>+<K><R>
Lire bloc d'une disquette
<Ctrl>+<K><3>
Bloc → Editeur de texte
<Ctrl>+<K><4>
Bloc de l'éditeur de texte → IL
Marquer le début du bloc
<Ctrl>+<K><B>
Placer le curseur sur la première ligne voulue puis activer la combinaison
de touches <Ctrl>+<K><B>.
Marquer la fin du bloc
<Ctrl>+<K><K>
Positionner le curseur sur la dernière ligne voulue et activer la combinaison de touches <Ctrl>+<K><K>.
Marquer le bloc
<Shift>+<CursorUp>
<Shift>+<CursorDown>
Marquer une ligne en tant que
bloc
Masquer le bloc
<Ctrl>+<K><H>
Effacer un bloc
<Ctrl>+<K><Y>
Avec la combinaison de touches Shift>+<CursorUp> /
<Shift>+<CursorDown> , il est également possible de marquer un bloc.
La ligne actuelle va être marquée en tant que bloc.
Le bloc marqué est rendu visible ou invisible par activation de la combinaison de touches <Ctrl>+<K><H> .
Toutes les lignes marquées seront effacées sans avertissement.
Déplacer le bloc
<Ctrl>+<K><V>
Le bloc marqué va être déplacé directement à l'aval de la position marquée
par le curseur.
Copier bloc
<Ctrl>+<K><C>
Le bloc marqué va être copié directement à l'aval de la position marquée
par le curseur.
Ecrire bloc sur disquette
<Ctrl>+<K><W>
Le bloc marqué est écrit sur le support de données indiqué dans la fenêtre de sélection sous le nom indiqué. Le bloc est ensuite archivé en tant
que fichier ASCII standard.
Lire bloc d'une disquette
<Ctrl>+<K><R>
Insère un bloc archivé auparavant avec Ecrire bloc derrière la position
actuelle du curseur.
Attention:
Contrôle de syntaxe en cours de lecture.
Des corrections sont possibles dans la fenêtre.
Envoyer bloc dans éditeur de
texte
<Ctrl>+<K><3>
Bloc de l'éditeur de texte → IL
<Ctrl>+<K><4>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Copie le bloc marqué dans l'éditeur de texte.
Extrait le bloc marqué dans l'éditeur de texte et l'envoie dans l'éditeur IL
(Contrôle de la syntaxe effectué).
8-22 Liste d’instructions, IL, INSTRUCTION LIST
Guide de programmation SPS - 18VRS
Instructions Quick dans la liste d’instructions
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début de la liste d'instructions
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin de la liste d'instructions
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début de l'écran
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin de l'écran
<Ctrl>+<Q><P>
vers la dernière position
<Ctrl>+<Q><G>
vers le réseau indiqué
Par ailleurs, on a implémenté:
Restaurer ligne <Ctrl>+<Q><L>
Si une ligne IL a été effacée par mégarde, elle peut être restaurée immédiatement après en activant cette instruction.
Chercher et Remplacer
Recherche d'une chaîne de
caractères <Ctrl>+<Q><F>
Cette fonction utilise la fenêtre ci-après (voir fig. 8-18) Fig. 8-18: Recherche et remplacement d'un texte (chaîne de caractères) avec les mêmes
éléments de sélection, seule la ligne 'Nouveau texte' a disparu.
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 8-18: Recherche et remplacement d'un texte (chaîne de caractères)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Liste d’instructions, IL, INSTRUCTION LIST
Cherche Texte
8-23
OE
Le texte à rechercher est tout d'abord prédéfini par le terme sur lequel se
trouve le curseur. On peut soit réécrire ce terme soit sélectionner un autre
terme déjà utilisé auparavant via la fenêtre history.
Nouveau Texte
Texte qui doit remplacer le texte recherché. Un contrôle de convenance
est effectué afin que le nouveau texte puisse assumer la tâche du texte
précédent
• Eléments:
[X]
Variable et constante
[X]
Mot clé
[ ]
Repère
[ ]
Commentaire
[ ]
Bloc fonctionnel
[ ]
Fonction
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments peuvent être sélectionnés. Sous un mot clé, on doit comprendre
des termes qui ont une signification particulière pour le système de programmation, comme par exemple: VAR, PROGRAM:::
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas sélectionnables (grisés).
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
[ ]
avec demande
En options, on peut demander au système d'ignorer les majuscules et minuscules et de ne rechercher que des mots complets. Par ailleurs, il est
également possible de demander qu'une confirmation soit effectuée avant
chaque remplacement.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
( )
(*)
à partir du curseur
tout autour
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la direction ou inversement sur toute la zone.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
8-24
Guide de programmation SPS - 18VRS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-1
9 Diagramme à contacts, LD, LADDER DIAGRAM
Le langage graphique "Diagramme à contacts" peut, comme le montre la
figure suivante, être utilisé en tant qu'éditeur autonome de programmes, de
blocs fonctionnels et de fonctions. Il peut également, avec la même étendue
d'instructions, être utilisé pour le remplissage de transitions (voir Chapitre 6,
'Organigramme séquentiel, SFC') et d'actions dans des blocs d'actions (voir
Chapitre 7 'Blocs d'actions et actions').
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
1
RECO III.QQQ............................ seulement avec programmes!)
MPORTATION
IMPORT FROM
Commentaire
FUNCTION (*Fonctions définies par utilisateur*) Importation de
NAND8
Fonctions(FK), Blocs fonctionnels
(*Fonction NAND avec 8 entrées*)
NOR8
(FB) et types de données(TY) util.
(*Fonction NOR avec 8 entrées *)
avant leur utilisation
)8
DECLARATION
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& ON %E0.1.1
(* Introducteur
*) et de blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) (FB et fb) avant leur
(1'B9$5 utilisation
ENouvelle création de
VAR_OUTPUT (* Déclaration des sorties
*) de types de données utilisateur
LD
Entrée du corps de programme,
validation du moteur à ventilateurs*)
de bloc fonctionnel ou
ON
ALARME
MOTEUR de fonction dans l'éditeur
LD, IL ou FBD
7(0 )%'
,/
(*valid.du moteur à ventil.*) LD
ON (* Mode man. vent>> ORN
TEM
* Temperatu>> ANDN ALARM (* Arrêtalarm>> ST
MOTEUR (* Mot.d.vent.
Fig. 9-1:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Création d'un programme 'PR', bloc fonctionnel 'FB' ou d'une fonction
'FK' '
9-2 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
9.1 Architecture d'un diagramme à contacts
Le réseau est la plus petite unité autonome du diagramme à contacts. Il
peut se composer d'éléments LD, comme des relais, de contacts de travail
et de repos Par ailleurs, il peut comprendre des instructions de mise à 1
(set) et de remise à zéro (reset) ainsi que des sauts.
Un réseau peut recevoir un bloc fonctionnel et/ou des fonctions.
Un réseau peut en outre se composer d'un commentaire d'une ou plusieurs
lignes.
Fig. 9-2: Diagramme à contacts
Chaque réseau est limité à gauche et à droite par des rails de contact.
Lignes de liaison horizontales
elles transmettent l'état l'élément directement à gauche vers l'élément
voisin directement à droite.
Lignes de liaison verticales
Elles peuvent être atteintes à partir de l'une ou de plusieurs lignes de
liaison arrivant de la gauche ou de la droite. Une ligne de liaison est
logique '1', si l'une des lignes arrivant de la gauche est '1'. Si toutes les
lignes arrivant de la gauche sont '0', la ligne verticale est également '0'.
• Off:
• On:
toutes les lignes arrivant de la gauche sont en état Off
au moins l'une des lignes arrivant de la gauche est 'On'
L'état de la 'ligne verticale' est transmis vers la droite.'
Chaque réseau peut être pourvu d'une marque ou repère (de réseaux)
Cette marque (au max. 6 caractères avec une lettre en tant que premier
caractère) est limitée à droite par un '.'.
N.B.
Des contacts à pont ne sont pas réalisables.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-3
9.2 Edition de diagrammes à contacts
Le diagramme à contacts est grossièrement scindé de la façon suivante:
Curseur bloc dans le réseau
Travail dans le réseau actuel
Curseur bloc dans la colonne
externe droite
Création de réseaux
(nouveau à partir de la version
16)
• Edition du réseau
•
Entrée de contacts, FB, fonctions, variables, étiquettes intermédiaires
• Entrée de relais, sauts etc.
⇒ Pour la création d'un nouveau réseau, activer la touche <Enter>:
Activation de la touche dans la première colonne – Réseau est placé à
l'amont
Activation de la touche dans une autre colonne – Réseau est placé à
l'aval.
Le nouveau réseau est tout d'abord vide et peut être modifié avec les
instructions de pied de page ci-après.
Entrée d'éléments de
diagramme à contacts, curseur
sur une position quelconque
1
2
3
4
5
6
7
8
9
0
-| |-|/|Branche
NOT
FB
Fonction
OP
Marque
-( )en amont
Edit.
(*
Insérer 'Contact de travail' (1)
Insérer 'Contact de reposl' (1)
Insérer en dessous branche connectée en parallèle (OR)
Négativer contact/variable
Insérer bloc fonctionnel (1)
Insérer fonction (1)
Insérer opérateur (1)
Insérer ou éditer marque
Insérer marqueur intermédiaire (1)
Placer en amont (2)
Editer identificateur de contact/variable
Editer ligne de commentaire
(1) Sous le mode de fonctionnement "Insertion", l'élément graphique sélectionné
est inséré à droite de la position actuelle, tandis que sous le mode
"réécriture", l'élément graphique actuel est remplacé par l'élément
sélectionné.
(2) L'élément graphique à sélectionner est inséré à gauche de la position
actuelle.
Modification de réseaux,
Curseur sur le rail de
contact droit
1
2
4
5
6
7
8
9
0
-( )-(/)NOT
-(S)-(R)>>
-<RET>
en amont
Edit
Insérer relais (1)
Insérer relais négativé (1)
Négativer relais/saut
Insérer fonction set (1)
Insérer fonction reset (1)
Insérer saut (1)
Insérer fonction retour (1)
Placer en amont (2)
Editer relais/destination du saut
(1) Sous le mode de fonctionnement "Insertion", l'élément graphique sélectionné
est inséré sous la position actuelle, tandis que sous le mode "réécriture",
l'élément graphique actuel est remplacé par l'élément sélectionné.
(2) L'élément graphique à sélectionner est inséré en amont de la position
actuelle.
Curseur sur variable de sortie
au droit du bloc fonctionnel/de
la fonction/de l'opérateur
3
4
9
0
VAR
NOT
en amont
Edit
Insérer variable commutée en parallèle en dessous
Négativer la variable
Insérer variable commutée en parallèle au dessus
Editer identificateur de variable (3)
A l'aide de différents exemples, on entend à présent illustrer le travail
avec l'éditeur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-4 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Entrée d'un diagramme à contacts simple
A titre d’exemple, on a tout d'abord sélectionné un réseau LD simple; une
section déclaration correspondante contenant les variables nécessaires
étant présupposée. Un extrait de représentation est illustré dans la figure ciaprès.
Fig. 9-3: Section déclaration de l'exemple (extrait)
La figure Fig. 9-4:
Exemple de diagramme à contact avec affichage
du commentaire de déclaration (<Ctrl>+<F6>) pour 'Aimant1' a été
réalisée avec la séquence d'entrée suivante (Mode "Insertion").
Séquence d'entrée
1On<Enter>Aimant1<Enter>
3Aimant1<Enter>
<CursorUp><CursorRight>2Off<Enter>
8Z_Marqueur<Enter>
1Normal<Enter>
2Aimant2<Enter>
<CursorLeft>3General<Enter>
<CursorRight><Enter>
Curseur sur contact 'On'
8Début<Enter>
En analogie aux listes d'instructions, le commentaire de déclaration des
variables peut être rendu visible en liaison avec les éléments du
diagramme à contacts. Si une telle possibilité est voulue, le
commentaire(de déclaration) peut être ouvert pour le contact actuel au
moyen de la combinaison de touches <Ctrl>+<F6> dans la ligne avant
l'avant dernière ligne de l'écran.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Fig. 9-4:
Diagramme à contacts, LD, LADDER DIAGRAM
9-5
Exemple de diagramme à contact avec affichage du commentaire de
déclaration (<Ctrl>+<F6>) pour 'Aimant1'
Comme on l'a déjà vu dans la liste d'instructions, le commentaire peut être
utilisé sans modification ou bien réécrit pour l'emplacement concret. Pour
ce faire, il faut activer la touche <F6>. (Après effacement de ce nouveau
commentaire, le commentaire de déclaration initial est à nouveau visible).
Séquence d'entrée
⇒ Curseur sur relais Aimant1,
<F6>Aimant1 verrouillé avec Aimant2<Enter>
Fig. 9-5:
Exemple Diagramme à contacts, Commentaire de déclaration avec
Aimant1 réécrit après activation de la touche <F6>.
En bas, on peut encore voir l'ancien commentaire de déclaration tandis
qu'en haut, dans la fenêtre d'entrée, le nouveau commentaire apparaît.
L'affichage de commentaires dans l'éditeur LD est en outre également
possible au moyen de l'option "Paramètres de l'écran'.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-6 Diagramme à contacts, LD, LADDER DIAGRAM
Modifications et extensions
possibles a posteriori
Contacts (Sélection)
Guide de programmation SPS 18VRS
En commutant 'Insertion/Réécriture', il est possible d'effectuer les
échanges suivants:
1-¦ +- 2-¦/+-
4-NOT
sont interchangeables
⇒ Curseur sur l'élément désiré,
⇒ Activer la touche de pied
(Mode: Réécriture)
- ou ⇒ Touche '4-NOT',
(Mode: Insertion)
Eléments de sortie (Sélection)
1-( )- 2-(/)-
4-NOT 5-(S)- 6-(R)- 7->>
sont interchangeables
⇒ Curseur sur l'élément désiré,
⇒ Activer l'instruction de pied
(Mode Réécriture)
Touche '4-NOT' modifie l'élément actuel.
En cas d'introduction d'un saut '7>>' , le nom actuel est effacé avec
l'ancien symbole.
Complément d'éléments de
clôture supplémentaires
⇒ Positionner le curseur sur le premier élément existant.
⇒ Sélectionner le nouvel élément désiré dans la ligne de pied.
Mode 'Réécriture':
Le nouvel élément est inscrit à la place de
l'ancien
Mode 'Insertion':
Le nouvel élément est placé parallèlement à
l'ancien
Mode 'Insertion':
9-en amont'. Le nouvel élément est placé
parallèlement à l'ancien, toutefois en amont
de ce dernier.
Utilisation d'étiquettes
intermédiaires (ZMarqueur)
Les étiquettes intermédiaires permettre d'extraire des résultats
intermédiaires de réseaux de diagrammes à contacts. Le résultat de la
branche qui se trouve en amont du marqueur intermédiaire est alors
repris.
L'activation de l'instruction bloc <Ctrl>+<K><T> permet en cas de doute
l'affichage de la branche.
Exemple:
N$kB
rA
kC ZMarqueur N.B.
L'étiquette intermédiaire 'Zmarqueur' reprend la valeur du
contact 'kC'.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-7
Entrée d'un diagramme à contacts avec symboles supplémentaires
La répétition de l'entrée de la fonction SELECT dans le diagramme à
contacts permet un affichage avec les éléments additionnels, tels que
sauts, affectations non-booléennes entre autres. Un réseau commentaire
est placé en amont.
Pour cette fonction, une importation n'est pas nécessaire. La section
déclaration est représentée ci-après.
Fig. 9-6: Section déclaration pour la Fonction SELECT
Séquence d'entrée
47L_1<Enter>1SEL<Enter>
4<Enter>
3i1<Enter>M_INT<Enter><CursorRight><Enter>
47L_E<Enter><CursorRight><Enter>
3i2<Enter>M_INT<Enter><Enter>
8L_1<Enter>
3M_INT<Enter>SELECT<Enter>
8L_1<Enter>
Curseur sur le saut,
Le réseau avec le saut négativé est complet!!
Affectation de 'i1' sur 'M_INT'!!
Saut inconditionnel dans le segment!!
Affectation de 'i2' sur 'M_INT'!!
Entrée de la marque’ L_1’!!
Affectation de ‘M_INT’ à la sortie FK!!
Entrée de la marque’ L_E’!!
Ensuite, un commentaire doit être entré avant le premier réseau.
⇒ Curseur sur ligne 1, colonne 1 (<Ctrl>+<Q><R> ou déplacer
directement le curseur).
<Enter>90Exemple d'entrée pour la fonction 'SELECT' dans l'éditeur LD,
spécial<Enter>Sauts<Enter><ESC>
On doit toujours activer la touche <Enter> pour terminer l'entrée d'une ligne
de commentaire. La ligne de commentaire suivante est alors ouverte. Dans
l'exemple, toute nouvelle entrée de commentaire est interrompue avec
<Esc> et l'on quitte alors le réseau commentaire.
N.B.
Ne pas oublier d'activer la touche <Enter> à la fin de chaque
ligne! <Esc> entraîne sinon l'effacement de l'entrée.
L'instruction de pied de page '1-Séparer' dans la fenêtre permet la
séparation éventuelle (si nécessaire) d'un commentaire de plusieurs lignes
et l'entrée d'un réseau entre les lignes.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-8 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Fig. 9-7: Diagramme à contacts pour la Fonction SELECT
Opérateurs de diagramme à contacts
Au Chapitre ‘Représentation dans le diagramme à contacts’, Page 9-25)
sont présentés les opérateurs de diagrammes à contacts équivalents à
ceux des listes d'instructions.
Des réseaux de diagrammes à contacts peuvent être ouverts et complétés
avec ces opérateurs Le choix d'un opérateur approprié (correspondant au
type des variables d'entrées et sorties) doit s'effectuer au moyen de
l'instruction de pied de page 7-OP'.
⇒ Positionner le curseur dans la fenêtre de sélection sur l'opérateur
voulu.
⇒ Confirmer avec <Enter>
Exemple:
Une comparaison des sommes des 'Nombres Integer' 'INT1' et 'INT2' d'une
part, et 'INT3' et 'INT4' d'autre part doit être effectuée. Si elles sont égales,
la sortie doit être mise sur '1', dans le cas contraire sur '0'. L'exemple est ici
effectué sous la forme d'une fonction. On commence par la section
déclaration.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Fig. 9-8:
Diagramme à contacts, LD, LADDER DIAGRAM
9-9
Déclaration pour la fonction BSP_OP
Une fois la déclaration terminée, on passe à l'éditeur LD.
Séquence d'entrée
0Comparaison de deux sommes de nombres INT<Enter><ESC> ↓
7
⇒ Positionner le curseur dans la fenêtre de sélection sur l'opérateur ‘=‘ .
⇒ Confirmer avec <Enter>
Fig. 9-9:
Fonction BSP_OP, Fenêtre de sélection 'Operateurs'
Le nom des variables peut être entré directement ou bien une fenêtre de
sélection de variables être appelé dans le champ vide au moyen de
<Enter>.
⇒ Sélection des variables en déplaçant le curseur
⇒ Confirmer avec la touche <Enter>
Pour continuer en entrée directe:
Séquence d'entrée
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
INT1<Enter>
INT3<Enter>BSP_OP<Enter>
9-10 Diagramme à contacts, LD, LADDER DIAGRAM
Curseur sur INT1.
7
INT2<Enter>
Curseur sur INT3.
7
INT4<Enter><Enter>
Guide de programmation SPS 18VRS
Sélection du signe d'addition '+'<Enter>!!
Sélection du signe d'addition '+'<Enter>!!
Fig. 9-10: Fonction BSP_OP, complétée
Pour finir, il faut commenter l'ordre d'entrée des opérateurs.
On a commencé avec un opérateur dont le type des variables d'entrée et de
sortie était différent.
A partir de cet opérateur, il est possible d'élargir le réseau dans les deux
directions.
Les opérateurs qui effectuent l'addition présentent le même type côté
entrée et côté sortie. Ils peuvent donc être insérés et être à nouveau
effacés.
Si on doit utiliser d'autres opérateurs dont le type des variables d'entrée et
de sortie est différent, il faut alors amorcer un nouveau réseau.
Si des variables doivent éventuellement être déclarées a posteriori, il faut
alors procéder comme expliqué au prochain chapitre.
Fonctions et blocs fonctionnels dans un diagramme à contacts
Fonctions dans un diagramme à contacts
Comme pour les opérateurs, il est possible dans un réseau d'insérer
plusieurs fonctions l'une après l'autre si la série part respectivement de la
sortie de la fonction placée à gauche vers la première entrée de la fonction
suivante et si la compatibilité de type est donnée. Si à l'intérieur d'une série
de fonctions, comme dans l'exemple suivant, les types de données aux
entrées et sorties divergent, il est recommandé de commencer avec une
fonction avec des types différents à la première entrée et à la sortie puis de
poursuivre par extension. Si une extension n'est plus possible, il faut alors
amorcer un nouveau réseau.
(soit:
BCD_INT puis extension vers la droite,
FENETRE en tant que nouveau réseau ou
FENETRE Extension vers la gauche
BCD_INT en tant que réseau autonome.)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-11
Exemple:
La fonction FENETRE contrôle si la VALEUR se trouve entre MIN et
MAX. Si tel est le cas, le résultat est '1', sinon '0'.
La VALEUR est le résultat des opérandes de la somme TERME1 et
TERME2.
Comme TERME1 existe déjà en tant que nombre à 4 chiffres codé BCD, il
faut encore le convertir en un nombre INTEGER.
Exemple d’application pour
fonctions et opérations
WORD (BCD)
INT
INT
BOOL
|
|
|
|
9
9V
V
%&'B,17 ´ TERME1
$
FENETRE
TERME2 VALEUR
LIINF 0,1 EXEMPLE
LISUP 0$;
TERME1 - BCD-cod., à 4 chiffres
TERME2 - INT
LIINF, LISUP – INT
Les fonctions définies par utilisateur doivent être importées avant de
pouvoir être utilisées. (Pour les fonctions standard, une importation n'est
pas nécessaire.)
Importation de la fonction
FENETRE définie par utilisateur
IMPORT
TYPE
FONCTION
FENETRE
Commentaire
(*Fonct. Util., Test de valeur limite*)
La figure ci-après illustre la section déclaration. Elle comprend les
variables nécessaires. Comme pour toutes les autres fonctions, la
déclaration des fonctions utilisateur n'est pas nécessaire
Section déclaration
de l'exemple
Identificateur AT
TYPE
:=
Commentaire
FONCTION
EXEMPLE:
BOOL
(contrôle si la somme d'un nombre BCD et d'un nombre INT est entre MIN et *)
(*MAX , si oui, on a alors 1, sinon 0.*)
(*créé le: 24.01.95, par N.N.*)
VAR_INPUT
TERME1
WORD
(* à 4 chiffres, codé BCD*)
TERME2
INT
(*Nombre INT*)
END_VAR
VAR
LIINF
INT
(*limite inférieure*)
LISUP
INT
(*limite supérieure*)
END_VAR
On commence par entrer la fonction BCD_INT
Séquence d'entrée
6BCD_INT<Enter>
TERME1<Enter>
Nombreauxil<Enter>
La variable ’Nombreauxil' n'a pas encore été déclarée. Son entrée
entraîne un message d'erreur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-12 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Fig. 9-11: Déclaration a posteriori d'une variable
La déclaration a posteriori tient compte d'éventuelles erreurs d'écriture
dans le nom, mais également d'une déclaration encore non effectuée.
une nouvelle déclaration du nom, comme dans l'exemple, ou bien une
reprise d'un nom existant compatible avec le type est alors effectuée.
Séquence d'entrée dans
l'éditeur de déclaration
⇒ Curseur sur une ligne vide dans la zone VAR...END_VAR
1- Reprise, 1- Reprise, 1- Reprise
Fig. 9-12: La variable manquante est inscrite a posteriori
Séquence d'entrée
ensuite dans l'éditeur LD
<Enter>
6FENETRE<Enter>
Nombreauxil<Enter>
LIINF<Enter>
LISUP<Enter>
1EXEMP_FK<Enter>
7’+’<Enter>
TERME2<Enter>
Continuer avec deuxième réseau!!
Curseur est sur 'Nombreauxil'
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-13
Fig. 9-13: Fonction complète dans éditeur LD
Seule la liste d’instructions permet alors une simplification encore plus
poussée du segment. En appuyant deux fois sur la touche <Tab>, il est
possible de commuter l'éditeur vers la liste d'instructions.
Après effacement des instructions:
ST
LD
Nombreauxil
Nombreauxil
la fenêtre suivante est affichée.
Fig. 9-14: Fonction complète dans éditeur LD après simplification
Si le curseur se trouve sur le nom d'une fonction définie par utilisateur, il
est possible d'accéder à cette fonction via la combinaison de touches
<Ctrl>+<Enter> ou <Ctrl>+<N>.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-14 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Blocs fonctionnels dans un diagramme à contacts
Le niveau actuel de l'éditeur LD permet respectivement un bloc
fonctionnel par réseau. (Fonctions ou opérateurs peuvent être complétés
avec les réserves connues.)
L'entrée commence toujours avec ce bloc fonctionnel
Les principes fondamentaux de l'appel seront explicités ci-après à l'aide
d'un exemple RS-FlipFlop. Ce flipFlop (bascule bistable) doit tout d'abord
est appel inconditionnellement puis conditionnellement.
FlipFlop,
Appel inconditionnel
¦
Set
Reset
ff75
56
6B4B
5B
Résultat
A la différence des fonctions pour lesquelles la connexion de toutes les
entrées doit être forcée lors de l'entrée, avec les blocs fonctionnels
certaines entrées peuvent rester sans affectation, c'est-à-dire qu'elles
conservent la valeur qu'elles avaient avant l'appel ou, si elles n'ont pas
encore été utilisées, leur valeur initiale. Les sorties peuvent être utilisées,
c'est-à-dire appelées aussi souvent que désiré.
Fig. 9-15: Section déclaration pour exemple FB, importation du FB RS n'est pas
nécessaire, vu qu'il s'agit d'un FB-micrologiciel.
Après la déclaration commune, le bloc fonctionnel 'ff75' est tout d'abord
appelé de façon inconditionnelle dans la figure ci-après.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-15
Fig. 9-16: Entrée du FB 'ff75' au moyen de fenêtres de sélection
L'entrée est affichée en utilisant des fenêtres de sélection. Les noms
peuvent également être entrés directement.
Séquence d'entrée
5<Enter>
<Enter>
<Enter>
Fenêtre pour nom d'utilisation!!
Fenêtre de sélection pour tous les FB déclarés!!
accepte 'ff75'!!
Fig. 9-17: Sélection des entrées et sorties du FB à connecter.
Séquence d'entrée
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
<Enter>
supérieure!!
1<Enter>
<Enter>
<Enter>
La première entrée acceptée est l'entrée
Relais off Sortie!!
Ouverture de la fenêtre de sélection des variables!
Confirmation de 'Résultat'!!
9-16 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Fig. 9-18: Sélection du nom de variable pour le relais
Séquence d'entrée
⇒ Curseur sur branchement en amont de l'entrée set
Contact de travail, "Set" via fenêtre de sélection, <Enter>!!
1<Enter>
<Down>
Curseur sur branchement en amont de l'entrée Reset
1<Enter>
Contact de travail, "Reset" via fenêtre de sélection, <Enter>!!
Fig. 9-19: Fin du réseau – Appel inconditionnel
Si un appel conditionnel est requis, il est possible de poursuivre comme
suit
(CONDITION: Validation)
Séquence d'entrée
8mFIN<Enter>
<Ctrl>+<Q><R>
<Enter> ↑
47mFIN<Enter>
2Validation<Enter>
Entrée de la destination du saut!!
Va au début de l'image!!
Placer nouveau segment en amont!!
Tout d'abord saut inconditionnel ver la marque 'mFIN'!!
à présent préparer saut conditionnel vers le FB!!
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-17
Fig. 9-20: Fin du réseau – Appel conditionnel
Le saut permet de conserver le jeu de données du FB sans modification étant
donné que ce jeu est sauté et qu'un calcul du FB n'est pas effectué. Si le
curseur se trouve sur un bloc fonctionnel défini par utilisateur, il est possible
d'accéder à ce bloc fonctionnel via la combinaison de touches <Ctrl>+<Enter>
ou <Ctrl>+<N>.
Représentation ASCII de l'éditeur LD
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. L'éditeur LD y contribue sous la forme d'une liste
d'instructions qui peut être reconvertie fidèlement dans le diagramme à
contacts.
Pour l'affectation suivant Fig. 9-20: Fin du réseau – Appel conditionnel, on
a alors la sortie suivante:
LDN Validation
JMPC mFIN
LD Set
ST ff75.S_
LD Reset
ST ff75.R_1
CAL ff75
LD ff75.Q_1
ST Résultat
mFIN:
Des sections de diagramme à contacts peuvent apparaître pour:
• des fonctions et blocs fonctionnels dans la zone implémentation
• des programmes dans la zone implémentation, simulation IO,
traitement des données de processus (Interbus G3) et implémentation
2 ms.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-18 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
9.3 Aide à la mise en route dans le diagramme à contacts
Si un programme est en cours d'exécution sur la commande, il est
possible d'obtenir dans l'éditeur LD les informations suivantes sur l'état du
programme ou d'un bloc fonctionnel utilisé.
• Barre de couleur sur le bord gauche, LD est en cours de traitement.
• les variables binaires marquées en couleur sont logiques '1' (contact
de travail) /logique '0' (contact de repos),
• Les autres variables sont affichées avec leur valeur.
Le nom peut être affiché via l'instruction de pied '2'.
Dans les fonctions, cet affichage n'est pas possible étant donné que les
valeurs n'existent qu'au moment des calculs et qu'elles ne sont pas
mémorisées.
Fig. 9-21: Diagramme à contacts d'un programme, informations d'état
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-19
9.4 Options dans l'éditeur LD
Les options énumérées ci-après influencent le travail dans l'éditeur LD. Il
est recommandé à l'utilisateur de les définir sous forme préférentielle.
Cette définition est mémorisée lorsqu'on
programmation pour revenir au menu principal.
quitte
le
système
de
Option 'Paramètres généraux'
Fig. 9-22: Fenêtre d'options ‘Paramètres généraux’
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'.
Cette option permet en commun avec 'Requête lors de la sauvegarde’
la mémorisation automatique de l'état intermédiaire obtenu. (Le fichier
BAK est alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Commentaire de déclaration
dans l'implémentation
Dans toutes les lignes IL sans commentaire propre, c’est le commentaire
de déclaration des variables qui apparaît. (Editeur LD par analogie sur les
variables, voir options "Paramètre de l'écran’, Page 9-19 et/ou dans
fenêtre<Ctrl>+<F6>....)
<Shift>+<F2> Affichage de
variables symbolique ou absolu
Cette option permet de commuter au niveau 'Programme' entre l'adresse
absolue (si existante) et le nom symbolique des variables.
Représentation de variables
absolues
Cette option de menu permet une commutation à l'intérieur de
programmes entre:
%I et %E ou %Q et %A. et inversement.
Exemple:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4
Cette option est également valide dans la documentation.
Sélection du langage de
programmation
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Lorsque l'utilisateur a porté son choix sur l'un des langages de
programmation (IL ou LD ou FBD), il peut entrer ce choix directement.
Pour la 'Sélection', une fenêtre sélection de langage est affichée.
9-20 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Option ‘Paramètres de l'écran’
Fig. 9-23: Fenêtre d'option ‘Paramètres de l'écran’
Fonction
Zone de paramétrage
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
Diagramme à contacts standard // Diagramme à contacts comprimés
Paramètres de mise au point
Colonnes d'éditeur:
Largeur de grille:
Lignes pour nom:
Lignes pour commentaire:
Couper nom:
Coupure de nombres:
Documentation
Boutons
Nombre des colonnes curseur
Nbre de caractères dans 1 colonne
Nombre de lignes d'un identificateur
Nombre de lignes pour commentaire
d'un identificateur
7
11
1
19
4
1
0
0
Stratégie permettant de
couper un nom trop long
Stratégie permettant de couper une/un valeur/nombre
d'état affiché(e).
La documentation utilise les jeux de paramètres standard.
Ok:
Appliquer
Standard:
Interruption:
<Ctrl>+<F2>
Appliquer les paramètres dans les éditeurs actuels.
Appliquer les paramètres dans les éditeurs.
actuels, sans quitter la fenêtre.
Restaurer les paramètres standard de la zone de
paramétrage sélectionnée.
Restaurer les paramètres avant intervention dans
la fenêtre et quitter la fenêtre.
Alternance entre les jeux de données (LD↔ LD
comprimé).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-21
9.5 Aide dans l'éditeur LD
Conformément à la conception d'aide uniforme du système de
programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu
actuelle, en fonction de la position du curseur (dans la fenêtre éditeur ou
dans la fenêtre menu). Si des termes sont marqués en couleur, une
nouvelle aide peut être sélectionnée (placer le curseur sur le terme voulu,
puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si des termes
sont marqués en couleur, une nouvelle aide peut être sélectionnée
(placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section
déclaration du nom marqué par le curseur.
Il est possible de représenter l'interface d'un bloc fonctionnel, d'une
fonction, d'une variable structurée ainsi que les caractéristiques d'une
variable quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 9-24: <F1> Aide sur l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-22 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Fig. 9-25: <Ctrl>+<F1> - Aide contextuelle
L’aide contextuelle donne une explication sur la position actuelle du
curseur. Dans l’exemple, le curseur se trouve sur un contact.
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1>, il
est possible après activation de la combinaison de touches <Alt>+<S>
d'entrer dans la fenêtre d'aide un terme de recherche ou une partie de ce
terme.
Fig. 9-26: Aide sur le terme ’Fonction utilisateur’’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-23
Fig. 9-27: <Shift>+<F1>, Aide déclaration sur opérande 'Set' avec indication du
type
Si le curseur se trouve sur une variable, l’information de la ligne de sa
déclaration apparaît alors.
Fig. 9-28: <Shift>+<F1>, Aide déclaration pour bloc fonctionnel 'ff75: RS'
Si le curseur est placé sur le symbole de 'ff75: RS' avec activation de la
combinaison de touches <Shift>+<F1> , l'aide déclaration au bloc
fonctionnel apparaît. Le symbole (interface) avec les types des entrées et
sorties et le commentaire à la déclaration au moment de l'importation de
la fonction ou du bloc fonctionnel peut en outre être affiché en tant
qu'information sur le type.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-24 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
9.6 Eléments du diagramme à contacts
Eléments de base dans le diagramme à contacts
Le diagramme à contacts met à disposition les éléments les plus utilisés
en technique de relais et de contacts et permet ainsi l'établissement de
réseaux analogues à ceux d'un schéma électrique.
Symboles LD
Equivalent IL
Contacts
a
Contact de travail
a
Contact de repos
LDN a, ANDN a, ORN a, en fonction de la position dans le
réseau
Relais
ST a
Affectation de la valeur du réseau
Négativer+
Relais
STN a
Affectation de la valeur négativée du réseau
S)
Set
SETC a
SET a
Set si réseau présente '1' en résultat
Set inconditionnel
Relais:
a
a
LD a, AND a, OR a, en fonction de la position dans le réseau
a
a
2 S) Set
SETCN a Set si réseau présente '0' en résultat
a
RESC a
RES a
R)
Reset
a
2 R) Reset
Saut:
->>m
Reset si réseau présente '1' en résultat
Reset inconditionnel
RESCN a Reset si réseau présente '0' en résultat
JMPC m
JMP m
Saut vers 'm' si réseau présente '1' en résultat
Saut inconditionnel ver 'm'
JMPCN m Saut vers 'm' si réseau présente '0' en résultat
-O>m
Retour du bloc fonctionnel:
-<RET>
RETC
RET
Retour de FB/FK
si réseau présente '1' en résultat
Retour inconditionnel de FB/FK
-O<RET>
RETCN
Etiquette intermédiaire:
a
v)
Retour de FB/FK
si réseau présente '0' en résultat
reprend le résultat du réseau placé à gauche
ST a
(valeurs booléennes)
ST v
(valeurs non-booléennes)
Vaut pour les types de données suivants:
a:
v:
BOOL;
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD;
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-25
Représentation des opérateurs dans le diagramme à contacts
A partir des opérateurs IL, les réseaux suivants sont aménagés dans le
diagramme à contacts.
Réseaux LD
DDD
DD
D D
D
N
D D
D
D D
D
!
D Z Z
E
E
E E ! E
E E
N E
E \ \
\ Y Y
Y Y
Y
Y Y Y
Y Y 02' Y
Y Opérateurs IL
Å
/'D
$1'D
67D
/'D
25D
67D
/'D
;25D
67D
/'D
(4D
67D
/'D
1(D
67D
/'ZAffectation non valide pour
67Zvariables/ constantes booléennes
/'Ebit par bit logique ET
$1'E
67E
/'Ebit par bit logique OU
25E
67E
/'Ebit par bit logique XOR
;25E
67E
/'\
$''\
67\
/'Y
68%Y
67Y
/'Y
08/Y
67Y
/'Y
',9Y
67Y
/'Y
02'YNon applicable aux nombres REAL!
67Y
Vaut pour les types de données suivants:
a1,a2,a3:
b1,b2,b3:
y1,y2,y3:
v1,v2,v3:
v4,v5,v6:
v7,v8,v9:
BOOL;
BYTE|WORD|DWORD|LWORD;
tous les nombres|TIME|STRING;
tous les nombres|TIME;
tous les nombres;
tous les nombres, non REAL
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-26 Diagramme à contacts, LD, LADDER DIAGRAM
w3:
Guide de programmation SPS 18VRS
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD|ARRAY|STRING|STRUCT|CHAR;
Adresse von (P#...), POINTEUR
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD|ARRAY|STRING|STRUCT|CHAR;
POINTER
w4:
Réseaux LD
Opérateurs IL
Å
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
Z
D
!
D
D
! D
D
D
!
/'Z
*7Z
67D
/'Z
/7Z
67D
/'Z
*(Z
67D
/'Z
/(Z
67D
/'Z
(4Z
67D
/'Z
1(Z
67D
Vaut pour les types de données suivants:
a1,a2,a3:
w1,w2:
w3,w4:
BOOL;
tous les nombres|TIME|DWORD|LWORD|CHAR|STRING;
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD|CHAR|STRING;
lors de comparaisons REAL!
+0 ≠ –0
ATTENTION
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-27
Représentation de fonctions dans le diagramme à contacts
Les entrées et sorties d'une fonction dans un diagramme à contacts ont
les équivalents IL suivants:
Réseaux LD
Représentation IL
Å
/'Seule la première entrée peut être
FName(
connectée avec un réseau!
( D
( D
( Y
( 671D
FName D (
D ( D ( Y ( ( FUNCTION FName:
VAR_INPUT
E1,E2,E3:
E4,E5:
END_VAR
BOOL (* Section déclaration de la fonction *)
BOOL;
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD;
Réseaux LD
Représentation IL
Å
FName (
\ D ( D ( Y ( ( FUNCTION FName:
VAR_INPUT
E1,E2,E3:
E4,E5:
END_VAR
/'Seule la première entrée peut être
FName(
connectée avec un réseau!
( D
( D
( Y
( 67\
Jusqu'à présent, structures ou tableaux ne sont pas
permis dans les fonctions
xxxx (* Tous les types standard et micrologiciels, non BOOL*)
BOOL;
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD;
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-28 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Représentation de blocs fonctionnels dans le diagramme à contacts
Les entrées et sorties d'un bloc fonctionnel dans un diagramme à
contacts ont les équivalents IL suivants:
Réseaux LD
FBName
FBTyp
D ($
D ($
D !($
D !($
D ($
D (
Y (
E (
E 2(
Représentation IL
D
D
Y
E
E
Å
/'D
67)%1DPH(
/'1D
67)%1DPH(
/'D
67)%1DPH(
/'1D
67)%1DPH(
/'D
67)%1DPH(
/'1D
67)%1DPH(
/'Y
67)%1DPH(
/'E
67)%1DPH(
/'1E
67)%1DPH(
&$/FBName
/')%1DPH$
67D
/')%1DPH$
671D
/')%1DPH$
67Y
/')%1DPH$
67E
/')%1DPH$
671E
FUNCTION_BLOCK FBTyp (* Déclaration du bloc fonctionnel *)
VAR_INPUT
E1,E2:
BOOL;
E3,E4:
BOOL R_EDGE; seulement avec FB micrologiciel
E5,E6:
BOOL F_EDGE; seulement avec FB micrologiciel
E7:
tous les nombres|TIME|STRUCT|ARRAY|STRING|CHAR; POINTER
E8,E9:
BYTE|WORD|DWORD|LWORD;
END_VAR
VAR_OUTPUT
A1,A2:
BOOL;
A3:
alle Zahlen|TIME|STRUCT|ARRAY|STRING|CHAR;
A4,A5:
BYTE|WORD|DWORD|LWORD;
END_VAR
...
END_FUNCTION_BLOCK
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-29
Etiquettes intermédiaires
La représentation d'étiquettes intermédiaires dans un LD constitue une
extension du langage fondamental. Il n'est pas possible de représenter
les les constellation IL dans un LD.
Réseaux LD
Représentation IL
Å
D]D
D] /'D
67]
25
/'1D
67]
67D
Y Y
Y
/'YClassement non booléen!
67Y
$''Y
67Y
z1,z2:
v1,v2,v3,v4:
Y
a1,a2,a3:
BOOL;
BOOL;
tous les nombres|TIME|STRING
Eléments de clôture couplés en parallèle
Le diagramme à contacts permet le couplage en parallèle de plusieurs
éléments de clôture, même différents, en fin de segment.
Réseaux LD
Représentation IL
Å
DD
D
!!P
DD
5(7!
/'D
671D
5(7&
E E
E
E
a1,a2,a3:
b1,b2,b3,b4:
/'D
67D
671D
-03&P
/'E
67E
671E
671E
BOOL;
BYTE|WORD|DWORD|LWORD;
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-30 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
9.7 Touches dans l'éditeur LD
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent .
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Elément vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Elément vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
<Shift>+<PageUp>
<Shift>+<CursorUp>
Marquer bloc
<Shift>+<PageDown>
<Shift>+<CursorDown>
Touche (s)
<Ctrl>+<G>
Touches d’effacement
<Ctrl>+<H>
Effacer un élément
<Delete><CursorLeft> <Delete>
<Ctrl>+<T>
Effacer un segment
<Ctrl>+<Y>
<Ctrl>+<M>
<Enter>
Fin d'une ligne
Touche (s)
Accès
<Ctrl>+<Enter> <Ctrl>+<N>
Passage au FB / FK
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-31
Menu local dans l'éditeur LD
Dans chaque éditeur il existe un menu local (combinaison de touches
<Alt>+<F10>) qui permet de regrouper des instructions importantes de
l'éditeur de façon à ce qu'elles soient rapidement accessibles.
Fig. 9-29: Menu local de l'éditeur LD
contrôle s'il existe des erreurs de syntaxe dans la liste d'instructions
Test de syntaxe
<F6>
Commentaire édition
Entrée du commentaire (d'implémentation) pour une variable
<Ctrl>+<F2>
Alternative
Commutation en représentation standard/comprimée
<Ctrl>+<F6>
Commentaire on/off
Ligne complète du commentaire
<Shift>+<F2>
Symb./Abs.
Commutation en adressage symbolique/absolu
<Alt>+<P>
Imprimer
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<U>
Passage à l'éditeur
Passage à l'éditeur FBD/IL
<Ctrl>+<Q>
Instructions Quick
Offre d'instructions ^Q actuelle
<Ctrl>+<K>
Instructions bloc
Offre d'instructions ^K actuelle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-32 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Instructions bloc dans le diagramme à contacts
Le but des Instructions bloc est de minimiser le travail par rapport à une
introduction de nouvelles entrées.
Un bloc à l'intérieur de l'éditeur IL se compose d'une ou de plusieurs
lignes qui se suivent directement.
Pour l'éditeur LD, les opérations en bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Marquer Début du bloc
<Ctrl>+<K><K>
Marquer Fin de bloc
<Ctrl>+<K><L>
Définir un réseau en tant que bloc
<Ctrl>+<K><T>
Définir une branche en tant que bloc
<Ctrl>+<K><H>
Masquer le bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><C>
Copier le bloc
<Ctrl>+<K><W>
Ecrire bloc sur disquette
<Ctrl>+<K><R>
Lire bloc d'une disquette
<Ctrl>+<K><3>
Bloc → Editeur de texte
<Ctrl>+<K><4>
Bloc de l'éditeur de texte → LD
Marquer le début du bloc
<Ctrl>+<K><B>
Placer le curseur sur le premier réseau voulu puis activer la combinaison
de touches <Ctrl>+<K><B>.
Marquer la fin du bloc
<Ctrl>+<K><K>
Placer le curseur sur le dernier réseau voulu puis activer la combinaison
de touches <Ctrl>+<K><K>.
Définir un réseau en tant que
bloc <Ctrl>+<K><L>
Définir une branche pour
effacement <Ctrl>+<K><T>
Masquer le bloc
<Ctrl>+<K><H>
Effacer un bloc
<Ctrl>+<K><Y>
Le réseau actuel va être marqué en tant que bloc.
La branche actuelle va être marquée en tant que bloc. Ensuite, elle peut
être effacée.
Le bloc marqué est rendu visible ou invisible par activation de la
combinaison de touches <Ctrl>+<K><H> .
Toutes les lignes marquées seront effacées sans avertissement.
Déplacer le bloc
<Ctrl>+<K><V>
Le bloc marqué va être déplacé directement à l'aval de la position
marquée par le curseur.
Copier bloc
<Ctrl>+<K><C>
Le bloc marqué va être copié directement à l'aval de la position marquée
par le curseur.
Ecrire bloc sur disquette
<Ctrl>+<K><W>
Le bloc marqué est écrit sur le support de données indiqué dans la
fenêtre de sélection sous le nom à indiquer. Le bloc est ensuite archivé
en tant que fichier ASCII standard.
Lire bloc d'une disquette
<Ctrl>+<K><R>
Insère derrière la position actuelle du curseur un bloc archivé auparavant
avec Ecrire bloc.
Lors de la lecture, l'exactitude de la syntaxe du bloc est
ATTENTION:
contrôlée. Des corrections sont possibles dans la fenêtre.
Envoyer bloc dans éditeur de
texte <Ctrl>+<K><3>
Bloc de l'éditeur de texte → LD
<Ctrl>+<K><4>
Envoie le bloc marqué dans l'éditeur de texte.
Envoie le bloc marqué dans l'éditeur de texte vers l'éditeur LD,
(Contrôle des erreurs de syntaxe effectué.)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Diagramme à contacts, LD, LADDER DIAGRAM
9-33
Instructions Quick dans le diagramme à contacts
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début du diagramme à contacts
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin du diagramme à contacts
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début du réseau
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin du réseau
<Ctrl>+<Q><P>
vers la dernière position
<Ctrl>+<Q><G>
vers le réseau indiqué
Par ailleurs, on a implémenté:
Restaurer ligne <Ctrl>+<Q><L>
Si un réseau LD a été effacé par mégarde, il peut être restauré
immédiatement après en activant cette instruction.
Chercher et Remplacer
Recherche d'une chaîne de
caractères <Ctrl>+<Q><F>
Cette fonction utilise la fenêtre ci-après (Fig. 8-30) avec les mêmes
éléments de sélection, seule la ligne ‘Nouveau texte’ a disparu.
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 9-30: Recherche et remplacement d'un texte (Chaîne de caractères)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
9-34 Diagramme à contacts, LD, LADDER DIAGRAM
Guide de programmation SPS 18VRS
Cherche Texte....Définir
Le texte à rechercher est tout d'abord défini par le terme sur lequel se
trouve le curseur.
On peut soit réécrire ce terme soit sélectionner un autre terme déjà utilisé
auparavant via la fenêtre history.
Nouveau Texte
Texte qui doit remplacer le texte recherché. Un contrôle de convenance
est effectué afin que le nouveau texte puisse assumer la tâche du texte
précédent
• Eléments:
[X]
Variables et constantes
[X]
Mot clé
[ ]
Repère
[ ]
Commentaire
[ ]
Bloc fonctionnel
[ ]
Fonction
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les
éléments peuvent être sélectionnés. Sous un mot clé, on doit comprendre
des termes qui ont une signification particulière pour le système de
programmation, comme par exemple: VAR, PROGRAM:::
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas
sélectionnables (grisés).
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
[ ]
avec demande
En options, on peut demander au système d'ignorer les majuscules et
minuscules et de ne rechercher que des mots complets. Par ailleurs, il est
également possible de demander qu'une confirmation soit effectuée avant
chaque remplacement.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
à partir du curseur
( )
tout autour
(*)
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction
susmentionnée.
La troisième possibilité est: du début jusqu'à la fin en fonction de la
direction ou inversement sur toute la zone.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-1
10 Langage en diagramme de blocs fonctionnels, FBDFUNCTION BLOCK DIAGRAM
Le langage de programmation "FBD" peut, comme le montre la figure
suivante, être utilisé en tant qu'éditeur autonome pour l'entrée de programmes, de blocs fonctionnels et de fonctions.
Il peut également, avec la même étendue d'instructions, être utilisé pour
le remplissage de transitions (voir Chapitre 6, 'Organigramme séquentiel,
SFC') et d'actions dans des blocs d'actions (voir Chapitre 7 'Blocs d'actions et actions').
TABLEAU IO
Tableau IO
N° LWL- I/O Canal
Définition de la con1
2
Boucle Type 0123456789.0123456789.01234567890.. figuration.
1
RECO III.QQQ............................ seulement avec programmes!)
IMPORTATION
IMPORT
FROM
Commentaire
FUNCTION (*Fonctions définies par utilisateur*) Importation de
NAND8
(*Fonction NAND avec 8 entrées *) fonctions(FK), blocs
NOR8
(*Fonction NOR avec 8 entrées *) fonctionnels (FB) et
de types de données
)8
DECLARATION
(TY)util.
$ Nom
AT
TYPE
:=
Commentaire
% VAR_INPUT (* Déclaration des entrées
*) DDéclaration de variables
& INTRO
%E0.1.1
(* Introducteur
*) et de blocs fonctionnels
ALARME %E2.5.2
(* Capteur
*) (FB et fb) avant leur
(1'B9$5 utilisation
EConvention de types de
VAR_OUTPUT (* Déclaration des sorties
*) données utilisateur
)%'
Entrée du corps de
validation du moteur à ventilateurs*)
programme, de bloc
! fonctionnel ou de fonction
ON
dans éditeur FBD, éditeur IL
7(0 2 ou dans éditeur LD
$/$50 2 MOTEUR
)%'
,/
valid.d.moteur à ventila.*) /'ON
(* Mode man.vent>> 251TEM
(* Temperatu>> ANDN
ALARM (* Arrêtalarm>> 67MOTEUR (* Mot. de vent.
Fig. 10-1: Création d'un programme 'PR', bloc fonctionnel 'FB' ou d'une fonction
'FK' '
10.1 Architecture d'un réseau en langage FBD
Le réseau est la plus petite unité autonome du diagramme à blocs fonctionnels (FBD).
Il peut comporter des portes logiques et peut comprendre des instructions
set et reset ainsi que des sauts.
Un réseau peut recevoir des blocs fonctionnels ou des fonctions. Un réseau
peut en outre se composer d'un commentaire d'une ou plusieurs lignes.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-2 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Fig. 10-2: Réseau en langage FBD
Chaque réseau peut être pourvu d'une marque ou repère (de réseaux)
Cette marque (au max. 6 caractères avec une lettre en tant que premier
caractère) est limitée à droite par un '.'. begrenzt.
10.2 Edition de réseaux en langage FBD
Création de réseaux
⇒ Zum Erzeugen eines neuen Netzwerks ist die <Enter>-Taste zu
betätigen:
Activation de la touche dans la première colonne – Réseau est placé à
l'amont
Activation de la touche dans une autre colonne – Réseau est placé à
l'aval.
Le nouveau réseau est tout d'abord vide et peut être modifié avec les
instructions de pied de page ci-après.
Les symboles dans la ligne de pied de page ont la signification suivante
en fonction de la position du curseur:
Travail dans segment
1-"&"
2-">=1"
3-":="
5-FB
6-Fonction
7-OP
8-Marque
0-(*
ET-Porte
OU-Porte
Classement
Bloc fonctionnel, déclaré auparavant,
pour bloc fonctionnel utilisateur importer et déclarer.
Fonction, pour fonctions utilisateur importer auparavant.
Opération
Marque
Entrée de commentaire, si le commentaire commence
avec une lettre, on peut amorcer l'écriture
dans le cas contraire, activer '0'
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Curseur à la sortie d'une
porte/d'un FB/d'une fonction,
aucune entrée de variable,
d'élément de clôture
a
b
Lettres
Entrée d'un nom de variable, si on active la
touche <Enter> - Ouverture de la fenêtre de sélection.
Variable SET, si valeur à la sortie de la porte est '1'.
Variable RESET, si valeur à la sortie de la porte est '1'.
Saut, si valeur à la sortie de la porte est '1'.
Entrée/Modification d'un nom de variable
5-SET()
6-RES()
7 ->>
0-Edit
Curseur à la sortie d'une
porte/d'un FB/d'une fonction,
variable, élément de clôture
entrés
10-3
a
b
3-VAR
4-NOT
5-SET()
6-RES()
7 ->>
9-en amont'.
0-Edit
F
Couplage en parallèle d'une seconde variable à l'aval de
la première.
Negation de la variable actuelle
lors de SET/RESET/Saut, si valeur à la
sortie de la porte est '0'.
Couplage en parallèle de la variable SET à l'aval de la
première variable.
Couplage en parallèle de la variable RESET à l'aval de la
première variable.
Couplage en parallèle d'un saut à l'aval de la première
variable.
Préparation de '3-VAR', '5-SET', '6-RES', toutefois en
amont de la première variable.
Modification du nom de la variable/de l'élément de
clôture.
Curseur sur une variable
a
E
1-"&"
2-">=1"
4-NOT
5-FB
6-Fonction
7-OP
0-Edit
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
!!GG
Insertion d'une ET-porte entre la variable et
la porte/Addition d'une autre entrée pour la même
Opération
Insertion d'une OU-porte entre la variable et
la porte/Addition d'une autre entrée pour la
même opération, prolongement de la même opération
Négation de la variable
Insertion d'un FB entre la variable et la
porte, déclarer FB auparavant, avec FB utilisateur
importer et déclarer (contrôle du type!).
Insertion d'une fonction entre la variable et
la porte, avec fonction utilisateur importer
auparavant (contrôle du type!).
Insertion d'une opération entre la variable et
la porte (contrôle du type!).
Modification du nom de la variable
10-4 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Curseur sur une porte
a
b
1-"&"
2-">=1"
5-FB
6-Fonction
7-OP
9-en amont.
!!GG
Prolongement de la même opération/
Insertion d'une ET-porte entre porte et
élément de clôture.
Insertion d'une OU-porte entre porte et
élément de clôture/ Prolongement de la même opération.
Insertion d'un bloc fonctionnel entre porte et élément de
clôture, déclarer FB auparavant, avec FB utilisateur
importer et déclarer (contrôle du type!).
Insertion d'une fonction entre porte et élément de
clôture, pour fonctions utilisateur importer auparavant.
auparavant (contrôle du type!).
Insertion d'une opération entre porte et élément de
clôture.
Les entrées suivantes se rapportent à la place en amont
de la porte.
Entrée d'un réseau simple en langage FBD
On a pour exemple, tout d'abord sélectionné un réseau FBD simple.
Dans ce contexte, on présuppose une section déclaration correspondante
contenant les variables nécessaires (représentée sous forme d'extrait dans
la fig. ci-après).
Fig. 10-3: Section déclaration pour l'exemple
La figure Fig. 10-4:
Exemple FBD avec affichage du commentaire de
déclaration (<Ctrl>+<F6>) pour 'Aimant1' a été réalisée avec la séquence
d'entrée suivante (Mode "Insertion").
Séquence d'entrée
8Début<Enter><Enter>
2ON<Enter>Aimant1<Enter>
Aimant1<Enter>
91Normal<Enter>
2General<Enter><CursorUp>
1Aimant2<Enter>4<3xCursorRight><5xCursorUp>
98Z_Marqueur<Enter>
91Off<Enter>4
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-5
En analogie aux listes d'instructions, le commentaire de déclaration des
variables peut être rendu visible en liaison avec les éléments FBD.
Si une telle possibilité est voulue, le commentaire(de déclaration) peut
être ouvert pour la variable actuelle au moyen de la combinaison de touches <Ctrl>+<F6> dans la ligne avant l'avant dernière ligne de l'écran.
Fig. 10-4: Exemple FBD avec affichage du commentaire de déclaration
(<Ctrl>+<F6>) pour 'Aimant1'
Comme on l'a déjà vu dans la liste d'instructions, le commentaire peut être
utilisé sans modification ou bien réécrit pour l'emplacement concret. Pour
ce faire, il faut activer la touche <F6>. Après effacement de ce nouveau
commentaire, le commentaire de déclaration initial est à nouveau visible.
Séquence d'entrée
⇒ Curseur sur variable de clôture Aimant1,
<F6>Aimant1 verrouillé avec Aimant2<Enter>
Fig. 10-6: Exemple FBD, Commentaire de déclaration avec Aimant1 réécrit
après activation de la touche <F6>.
L'affichage de commentaires dans l'éditeur FBD est en outre également possible au moyen de l'option "Paramètres de l'écran' (voir Page 10-18) .
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-6 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Entrée de réseaux en langage FBD avec symboles supplémentaires
La répétition de l'entrée de la fonction SELECT avec le FBD permet un de
travailler avec des éléments additionnels, tels que sauts, affectations nonbooléennes entre autres.
Pour cette fonction, une importation n'est pas nécessaire. La section déclaration est représentée ci-après.
Fig. 10-7: Section déclaration pour la Fonction SELECT
Séquence d'entrée
3SEL<Enter>7L_1<Enter>4<Enter>
3i1<Enter>M_INT<Enter><Enter>
32#1<Enter>7L_E<Enter><Enter>
3i2<Enter>M_INT<Enter> ← ← ↑
8L_1<Enter> → <Enter>
3M_INT<Enter>SELECT<Enter> ← ← ↑
8L_1<Enter>
Ensuite, un commentaire doit être entré avant le premier réseau.
Poursuite de la séquence
d'entrée
⇒ Curseur sur ligne 1, colonne O
(<Ctrl>+<Q><R> ou déplacer directement le curseur)
<Enter> ↑ Exemple d'entrée pour fonction SELECT dans l'éditeur
FBD, <Enter>
Sauts spéciaux<Enter><ESC>
On doit toujours activer la touche <Enter> pour terminer l'entrée d'une ligne
de commentaire. La ligne de commentaire suivante est alors ouverte. Dans
l'exemple, toute nouvelle entrée de commentaire est interrompue avec
<Esc> et l'on quitte alors le réseau commentaire.
N.B.
Ne pas oublier d'activer la touche <Enter> à la fin d'une ligne,
étant donné que la touche <Esc> entraîne sinon l'effacement
de l'entrée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-7
Fig. 10-8: Commentaire dans la fonction SELECT
⇒ Si un réseau doit être inséré entre les lignes d'un commentaire de
plusieurs lignes, il faut placer le curseur au début de la ligne de commentaire et ensuite activer <Enter>.
Opérateurs en langage FBD
Au Chapitre 'Représentation des opérateurs du langage FBD' , on a présenté
les équivalent FBD des opérateurs IL (voir page 10-24).
Des réseaux FBD peuvent être ouverts et complétés avec ces opérateurs
⇒ Le choix d'un opérateur approprié (correspondant au type des variables d'entrées et sorties) doit s'effectuer au moyen de l'instruction de
pied de page 7-OP'.
⇒ Dans la fenêtre de sélection qui s'ouvre alors, il faut ensuite placer le
curseur sur l'opérateur voulu, puis
⇒ confirmer avec la touche <Enter>.
Exemple:
Une comparaison des sommes des 'Nombres Integer' 'INT1' et 'INT2'
d'une part, et 'INT3' et 'INT4' d'autre part doit être effectuée. Si elles sont
égales, la sortie doit être mise sur '1', dans le cas contraire sur '0'.
L'exemple est ici effectué sous la forme d'une fonction. On commence
par la section déclaration.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-8 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Fig. 10-9: Déclaration pour la fonction BSP_OP
Une fois la déclaration terminée, on passe à l'éditeur FBD.
Séquence d'entrée
0Comparaison de deux sommes de nombres INT<Enter><ESC> ↓
7
⇒ Positionner le curseur dans la fenêtre de sélection sur l'opérateur
voulu.
⇒ Confirmer avec <Enter>
Fig. 10-10: Fonction BSP_OP, Fenêtre de sélection 'Opérateurs'
⇒ Entrer directement le nom des variables
- ou ⇒ Appeler une fenêtre de sélection de variable dans le champ vide en
utilisant la touche <Enter>. (La sélection des variables s'effectue en
déplaçant le curseur, confirmation avec <Enter>.)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Séquence d'entrée
10-9
INT1<Enter>INT3<Enter>BSP_OP<Enter>
Curseur sur INT1.
7
Sélection de l'opération '+' dans la fenêtre de sélection!!
INT2<Enter>
Curseur sur INT3.
7
Sélection de l'opération '+' dans la fenêtre de sélection!!
INT4<Enter><Enter>
Fig. 10-11: Fonction BSP_OP, complétée
Pour finir, il faut commenter l'ordre d'entrée des opérateurs.
On a commencé avec un opérateur dont le type des variables d'entrée et
de sortie était différent. A partir de cet opérateur, il est possible d'élargir le
réseau dans les deux directions. Les opérateurs qui effectuent l'addition
présentent le même type côté entrée et côté sortie. Ils peuvent donc être
insérés. (Ils peuvent également être à nouveau effacés.)
Si on doit utiliser d'autres opérateurs dont le type des variables d'entrée et
de sortie est différent, il faut alors amorcer un nouveau réseau.
Si des variables doivent éventuellement être déclarées a posteriori, il faut
alors procéder comme expliqué au prochain chapitre.
Fonctions et blocs fonctionnels en langage FBD
Fonctions en langage FBD
Comme pour les opérateurs, il est possible dans un réseau d'insérer plusieurs fonctions l'une après l'autre si la série part respectivement de la
sortie de la fonction placée à gauche vers la première entrée de la fonction suivante et si la compatibilité de type est donnée. Si à l'intérieur
d'une série de fonctions, comme dans l'exemple suivant, les types de
données aux entrées et sorties divergent, il est recommandé de commencer avec une fonction avec des types différents à la première entrée
et à la sortie puis de poursuivre par extension. Si une extension n'est pas
possible, il faut alors amorcer un nouveau réseau.
(soit: BCD_INT extension vers la droite,
FENETRE en tant que nouveau réseau ou
FENETRE Extension vers la gauche
BCD_INT en tant que réseau autonome.)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-10 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Exemple:
La fonction FENETRE contrôle si la VALEUR se trouve entre MIN et MAX.
Si tel est le cas, le résultat est '1', sinon '0'.
La VALEUR est le résultat des opérandes de la somme TERME1 et
TERME2.
Comme TERME1 existe déjà en tant que nombre à 4 chiffres codé BCD, il
faut encore le convertir en un nombre INTEGER.
Exemple d'application pour fonctions et opérations:
WORD (BCD)
|
V
TERME1
INT
|
INT
|
BOOL
|
9V
9
%&'B,17 $
FENETRE
TERME2
VALEUR
LIINF
0,1
LISUP
0$;
EXEMPLE
TERME1 – cod. BCD, à 4 chiffres
TERME2 - INT
LIINF, LISUP - INT
Les fonctions définies par utilisateur doivent être importées avant de pouvoir être utilisées. (Pour les fonctions standard, une importation n'est pas
nécessaire.)
Importation de la fonction FENETRE définie par utilisateur
IMPORT
TYPE
FONCTION
FENETRE
Commentaire
(*Fonct. Util., Test de valeur limite*)
La figure ci-après illustre la section déclaration de l'exemple. Elle comprend les variables nécessaires. Comme pour toutes les autres fonctions,
la déclaration des fonctions utilisateur n'est pas nécessaire
Section déclaration de l'exemple
Identificateur AT
TYPE
:= Commentaire
FONCTION
EXEMPLE:
BOOL
(contrôle si la somme d'un nombre BCD et d'un nombre INT est entre MIN
et *)
(*MAX , si oui, on a alors 1, sinon 0.*)
(*créé le: 24.01.95, par N.N.*)
VAR_INPUT
TERME1
WORD
(* à 4 chiffres, codé BCD*)
TERME2
INT
(*Nombre INT*)
END_VAR
VAR
LIINF
INT
(*limite inférieure*)
LISUP
INT
(*limite supérieure*)
END_VAR
On commence par entrer la fonction ’BCD_INT’.
Séquence d'entrée
6BCD_INT<Enter>
TERME1<Enter>
Nombreauxil<Enter>
La variable ’Nombreauxil' n'a pas encore été déclarée. Son entrée entraîne donc un message d'erreur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-11
Fig. 10-12: Déclaration a posteriori d'une variable omise
La déclaration a posteriori tient compte d'éventuelles erreurs d'écriture dans
le nom, mais également d'une déclaration encore non effectuée. une nouvelle déclaration du nom , comme dans l'exemple, ou bien une reprise d'un
nom existant compatible avec le type est alors effectuée.
Séquence d'entrée dans l'éditeur
de déclaration
⇒ Curseur sur une ligne vide dans la zone VAR...END_VAR
1- Reprise, 1- Reprise, 1- Reprise
Fig. 10-13: La variable manquante est inscrite a posteriori
Séquence d'entrée
ensuite dans l'éditeur FBD
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
<Enter>
6FENETRE<Enter>
Nombreauxil<Enter>
LIINF<Enter>
LISUP<Enter>
EXEMP_FK<Enter>
7’+’<Enter>
TERME2<Enter>
Continuer avec deuxième réseau!!
Curseur est sur 'Nombreauxil'
10-12 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Fig. 10-14: Fonction complète dans éditeur FBD
Seule la liste d’instructions permet alors une simplification encore plus poussée du segment. En appuyant deux fois sur la touche Tab, il est possible de
commuter l'éditeur vers la liste d'instructions.
Après effacement des instructions:
ST
LD
Nombreauxil
Nombreauxil
on obtient l'image suivante (largeur de grille: 11 dans les options 'paramètres de l'écran').
Fig.10-15: Fonction complète dans éditeur FBD après simplification
Si le curseur se trouve sur le nom d'une fonction définie par utilisateur, on
accède à la fonction
⇒ via <Ctrl>+<Enter>
- ou ⇒ <Ctrl>+<N>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-13
Blocs fonctionnels en langage FBD
L'éditeur FBD admet plusieurs blocs fonctionnels par réseau.
(Fonctions comme opérateurs peuvent être complétés conformément au
chapitre)
‘Si commentaire et ensuite activer <Enter>.
Page 10-7
Il est recommandé de commencer l'entrée avec un élément dont le type
de données en entrée diverge de celui en sortie, qu'il s'agisse d'un bloc
fonctionnel ou d'une fonction.
Les principes fondamentaux de l'appel seront explicités ci-après à l'aide de
l'exemple RS-FlipFlop (standard). Ce FlipFlop (bascule bistable) doit, dans
un exemple de bloc fonctionnel, tout d'abord être appelé de façon inconditionnelle puis de façon conditionnelle.
FlipFlop,
Appel inconditionnel
ff75
MISE
RESET
56
6B
5B4B
RESULTAT
A la différence des fonctions pour lesquelles la connexion de toutes les
entrées doit être forcée lors de l'entrée, avec les blocs fonctionnels certaines entrées peuvent rester sans affectation, c'est-à-dire qu'elles conservent la valeur qu'elles avaient avant l'appel ou, si elles n'ont pas encore été utilisées, leur valeur initiale. Les sorties peuvent être utilisées,
c'est-à-dire appelées aussi souvent que désiré.
Fig. 10-16: Section déclaration pour exemple FB, importation du FB RS n'est pas
nécessaire, vu qu'il s'agit d'un FB-micrologiciel.
Après la déclaration commune, le bloc fonctionnel 'ff75' est tout d'abord appelé de façon inconditionnelle dans la figure ci-après.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-14 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Fig. 10-17: Entrée du FB 'ff75' au moyen de fenêtres de sélection
L'entrée est affichée en utilisant des fenêtres de sélection. Les noms peuvent également être entrés directement.
Séquence d'entrée
5<Enter>
<Enter>
<Enter>
Fenêtre pour nom d'utilisation!!
Fenêtre de sélection pour tous les FB déclarés!!
accepte 'ff75'!!
Fig. 10-18: Sélection des entrées et sorties du FB à connecter
Séquence d'entrée
<Enter>
rieure!!
<Enter>
bles!
<Enter>
La première entrée acceptée est l'entrée supéOuverture de la fenêtre de sélection des variaCurseur sur 'Set'!!
Confirmation de 'Set'!!
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-15
Fig. 10-19: Sélection du nom pour l'entrée de la bascule bistable (FlipFlop)
Séquence d'entrée
<Enter>
Curseur sur 'Résultat'!!
<Enter>
Confirmation du nom de sortie!!
Curseur sur entrée reset!!
9<Enter>
Sélectionner "Reset" via fenêtre de sélection!!
<Enter>
Confirmation!!
Fig. 10-20: Fin de la connexion du FlipFlop
L'entrée du FB 'ff75' 'appel inconditionnel est ainsi terminée
Si un appel conditionnel est requis, il est possible de poursuivre comme
suit
(CONDITION: Validation)
Séquence d'entrée
<Enter>8mFIN<Enter>
<Ctrl>QR<Enter> ↑
93<Enter><Enter>
7mFIN<Enter> ← ← 4
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Entrée de la destination du saut!!
Curseur au début du réseau!!
Curseur sur 'Validation'
Confirmation de 'Validation'!!
Saut vers la marque 'mFIN', négativé,
conditionnel!!
10-16 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Le saut permet de conserver le jeu de données du FB sans modification
étant donné que ce jeu est sauté et qu'un calcul du FB n'est pas effectué.
Fig. 10-21: Fin du réseau – Appel conditionnel
Si le curseur se trouve sur un bloc fonctionnel défini par utilisateur, on
accède à ce bloc
⇒ via <Ctrl>+<Enter>
- ou ⇒ <Ctrl>+<N>
Représentation ASCII de l'éditeur FBD
A partir de la version 17, il est possible d'écrire des POU complètes en
fichiers ASCII. L'éditeur FBD y contribue sous la forme d'une liste d'instructions qui peut être reconvertie fidèlement en langage FBD.
Pour l'affectation suivant Fig. 10-21: Fin du réseau – Appel conditionnel,
on a alors la sortie suivante:
LDN Validation
JMPC mFIN
LD Set
ST ff75.S_
LD Reset
ST ff75.R_1
CAL ff75
LD ff75.Q_1
ST Résultat
mFIN:
Des sections FBD peuvent apparaître pour:
• des fonctions et blocs fonctionnels dans la zone implémentation
• des programmes dans la zone implémentation, simulation IO, traitement des données de process (Interbus G3) et implémentation 2 ms.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-17
10.3 Aide à la mise en route dans le langage FBD
Si un programme se trouve en cours d'exécution sur la commande, il est possible d'obtenir dans l'éditeur FBD les informations suivantes sur l'état du programme ou d'un bloc fonctionnel utilisé.
• Barre de couleur sur le bord gauche, FBD est en cours de traitement.
• les variables binaires marquées en couleur sont logiques '1',
• les autres variables sont affichées avec leur valeur.
via l'instruction de pied 2, le nom peut être affiché.
Dans les fonctions, un affichage d'état n'est pas possible étant donné que
les valeurs n'existent qu'au moment des calculs et qu'elles ne sont pas
mémorisées.
Fig. 10-22: Programme en FBD, informations d'état
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-18 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10.4 Options dans l'éditeur FBD
Les options énumérées ci-après influencent le travail dans l'éditeur FBD. Il
est recommandé à l'utilisateur de les définir sous forme préférentielle.
Cette définition est mémorisée lorsqu'on quitte le système de programmation pour revenir au menu principal.
Option 'Paramètres généraux'
Fig. 10-23: Fenêtre d'options ‘Paramètres généraux’
Sortie acoustique
Sauvegarde automatique
Cette option permet l'activation et la désactivation du 'Bip'
Cette option permet en commun avec 'Requête lors de la sauvegarde’
la mémorisation automatique de l'état intermédiaire obtenu.
(Le fichier BAK est alors réécrit!)
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Commentaire de déclaration
dans l'implémentation
Dans toutes les lignes IL sans commentaire propre, c’est le commentaire
de déclaration des variables qui apparaît. (Editeur FBD par analogie sur
les variables, voir options "Paramètre de l'écran’, Page 10-18 et/ou dans
fenêtre<Ctrl>+<F6>....)
<Shift>+<F2> Affichage de
variables symbolique ou absolu
Cette option permet de commuter au niveau 'Programme' entre l'adresse
absolue (si existante) et le nom symbolique des variables.
Représentation de variables
absolues
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I et %E ou %Q et %A. et inversement.
Exemple:
%I1.2.3 et %E1.2.3 ou %Q2.3.4 et %A2.3.4
Cette option est également valide dans la documentation.
Sélection du langage de
programmation
Lorsque l'utilisateur a porté son choix sur l'un des langages de programmation (IL ou LD ou FBD), il peut entrer ce choix directement. Pour la
'Sélection', une fenêtre sélection de langage est affichée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-19
Option ‘Paramètres de l'écran’
Fig. 10-24: Fenêtre d'option 'Paramètres de l'écran'
Fonction
Zone de paramétrage
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
FBD Standard // FBD comprimé
Paramètres de mise au point
Colonnes d'éditeur:
8
17
Largeur de grille:
Nbre de caractères dans 1 colonne 12
Lignes pour nom:
Nombre de lignes d'un identificateur
1
Lignes pour commentaire: Nombre de lignes pour commentaire
d'un identificateur
0
5
1
Couper nom:
Coupure de nombres:
Documentation
Nombre des colonnes curseur
0
Stratégie permettant de.
couper un nom trop long
Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
La documentation utilise les jeux de paramètres standard.
Boutons
Ok:
Appliquer
Standard:
Interruption:
<Ctrl>+<F2>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Accepter les paramètres,
les appliquer dans les éditeurs actuels.
les appliquer dans les éditeurs actuels.
sans quitter la fenêtre
Restaurer les paramètres standard de la zone de
paramétrage sélectionnée.
Restaure les paramètres avant intervention dans la
fenêtre et quitter la fenêtre.
Sauter entre jeux de données
(FBD ↔ FBD comprimé)
10-20 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10.5 Aide dans l'éditeur FBD
Conformément à la conception d'aide uniforme du système de programmation, les possibilités de guidage suivantes sont accessibles:
<F1>
permet une aide en relation avec l'éditeur actuel ou l'option de menu actuelle, en fonction de la position du curseur (dans la fenêtre éditeur ou
dans la fenêtre menu). Si dans une aide contextuelle des termes sont
marqués en couleur, une aide peut alors être sélectionnée (placer le curseur sur le terme voulu, puis appuyer <Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Ctrl>+<F1>
permet une aide sur le terme actuel (position du curseur). Si dans une
aide contextuelle des termes sont marqués en couleur, une aide peut
alors être sélectionnée (placer le curseur sur le terme voulu, puis appuyer
<Enter>).
Après <Alt>+<F1> une fenêtre aide est recherchée dans la pile.
<Shift>+<F1>
A l'aide de cette combinaison de touches on accède à la section déclaration du nom marqué par le curseur.
Il est ainsi possible d'avoir une représentation de l'interface d'un bloc
fonctionnel, d'une fonction, d'une variable structurée ainsi que les caractéristiques d'une variable quelconque.
<Esc>
On quitte à nouveau la fenêtre d'aide en appuyant sur <Esc>.
Fig. 10-25: <F1> Aide sur l'éditeur actuel
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-21
Fig. 10-26: <Ctrl>+<F1> - Aide contextuelle
L’aide contextuelle donne une explication sur la position actuelle du curseur.
Dans l’exemple, le curseur se trouve sur une fonction utilisateur (SELECT).
Si l'aide a été appelée avec la combinaison de touches <Ctrl>+<F1>, il est
possible après activation de la combinaison de touches <Alt>+<S> d'entrer
dans la fenêtre d'aide un terme de recherche ou une partie de ce terme.
Fig. 10-27: Cherche Aide sur le terme INT
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-22 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Fig. 10-28: <Shift>+<F1>, Aide déclaration sur l'opérande 'rayon'
Si le curseur se trouve sur une variable, l’information de la ligne de sa
déclaration apparaît alors.
Fig. 10-29: <Shift>+<F1>, Aide déclaration sur la fonction SELECT
⇒ Placer le curseur sur le symbole de SELECT
⇒ Confirmer avec <Shift>+<F1>
Le symbole (interface) avec les types des entrées et sorties et le
commentaire à la déclaration au moment de l'importation de la fonction ou du bloc fonctionnel est alors affiché.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-23
10.6 Eléments du langage FBD
Afin d'éviter des malentendus à l'intérieur des diagrammes FBD, on a
indiqué ci-après les équivalents IL réalisés pour le langage FBD.
Eléments de base du langage FBD
Le langage FBD met à disposition les éléments les plus utilisés dans les
schémas de connexions électroniques et permet ainsi l'établissement de
réseaux analogues à ceux d'un schéma logique.
Symbole FBD
a
a
Equivalent IL
/'D$1'D25D
2 /'1D$1'1D251D
D
O D
6 D
O 6 D
5 D
O 5 D
67D
671D
6(7&D6(7D
6(7&1D
5(6&D5(6D
5(6&1D
Saut:
!!P -03&P-03P
O !!P -03&1P
Retour de FB:
5(7!
O 5(7!
Etiquette intermédiaire
D Y Variable:
b
E
c 2
O F
5(7&5(7
5(7&1
67D
67Y
/'E
67E
/'1F
671F
Vaut pour les types de données suivants:
VAR
a:
BOOL;
b:
BYTE|WORD|DWORD|LWORD|ARRAY|STRUCT|STRING
c:
BYTE|WORD|DWORD|LWORD;
v:
tous les nombres|TIME|BYTE|WORD|DWORD|LWORD;
END_VAR
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-24 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Représentation des opérateurs du langage FBD
A partir des opérateurs IL, les réseaux suivants sont aménagés en langage FBD.
Réseaux FBD
a1
a2
a1
a2
a1
a2
a1
a2
a1
a2
b1
b2
b1
b2
b1
b2
w1
w2
w1
w2
w1
w2
w1
w2
w3
w4
w3
w4
y1
a1,a2,a3:
b1,b2,b3:
w1,w2:
w3,w4:
y1:
y2:
Opérateurs IL
(*veiller à la correspondance
des types*)
/'D
$1'D
D 67D
/'D
! 25D
D 67D
/'D
N ;25D
D 67D
/'D
(4D
D 67D
/'D
! 1(D
D 67D
/'E
$1'E
E 67E
/'E
! 25E
E 67E
/'E
N ;25E
E 67E
/'Z
! *7Z
D 67D
/'Z
/7Z
D 67D
/'Z
! *(Z
D 67D
/'Z
/(Z
D 67D
/'Z
(4Z
D 67D
/'Z
! 1(Z
D 67D
/'\
\ 67\
BOOL;
BYTE|WORD|DWORD|LWORD;
tous les nombres|TIME|STRING
tous les nombres |TIME|BYTE|WORD|DWORD|LWORD|STRING;
tous les types de données, également Adresse de (P#...) et POINTER
tous les types de données, également POINTER
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Réseaux FBD
y1
y2
y4
y5
v1
v2
v1
v2
w4
w5
y1,y2,y3:
y4,y5,y6:
v1,v2,v3:
w4,w5,w6:
10-25
Opérateurs IL
(*veiller à la correspondance
des types*)
/'\
$''\
\ 67\
/'\
68%\
\ 67\
/'Y
08/Y
Y 67Y
/'Y
',9Y
Y 67Y
/'Z
02' 02'Z
Z 67Z
tous les nombres|TIME|STRING|CHAR
tous les nombres|TIME
tous les nombres
tous les nombres, non REAL
Représentation de fonctions en langage FBD
Les entrées et sorties d'une fonction dans un diagramme FBD ont les
équivalents IL suivants:
Réseaux FBD
x1
a1
x1
a1
Représentation IL
/'[
FName FName(
( ( D
( D 67D
/'[
FName FName(
( ( D
(2 D 671D
tous les types de don.,exceptés ARRAY, STRUCT*)
tous les types de don.,exceptés ARRAY, STRUCT*)
tous les types de don.,exceptés ARRAY, STRUCT*)
tous les types de don.,exceptés ARRAY, STRUCT*)
tous les types de don.,exceptés ARRAY, STRUCT*)
%22/%<7(:25'':25'
Seule la première entrée peut être connectée avec un réseau!
Représentation de blocs fonctionnels en langage FBD
Les entrées et sorties d'un bloc fonctionnel en langage FBD ont les équivalents IL suivants:
Réseaux FBD
FBName
Représentation IL
LD a1
ST FBName.E1
LDN a2
ST FBName.E2
a1
CAL FBName
a2
LD FBName.A1
ST b1
LD FBName.A2
STN b2
(nouveauté à partir de la Version 17) E1 peut
FBTyp ($ E
2($2 E
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
(*tous les types de données*)
(*BOOL, BYTE, WORD, DWORD*)
(*tous les types de données*)
(*BOOL, BYTE, WORD, DWORD*)
également être de type POINTER.
10-26 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Etiquettes intermédiaires en langage FBD
La représentation d'étiquettes intermédiaires en langage FBD constitue une
extension du langage fondamental. Toutes les constellations des listes
d'instructions ne peuvent cependant pas être représentées en FBD.
Réseaux FBD
a2
a3
b1
b2
Opérateurs IL (*veiller à la correspondance des types*)
/'D
! D
$1'
]
/'D
D D 25D
67]
$1'D
67D
E
]
E
%22/%<7(:25'':25'
%22/%<7(:25'':25'
%22/%<7(:25'':25'
%22/%<7(:25'':25'
%22/%<7(:25'':25'
%22/%<7(:25'':25'
/'E tous les nombres|TIME|STRING*)
$''E
67]
(4E
67E %22/
Eléments de clôture couplés en parallèle
Le langage FBD permet le couplage en parallèle de plusieurs éléments
de clôture, même différents, en fin de segment.
Réseaux FBD
a1
a1
b1
Représentation IL
D
2 D
!!P
/'D
67D
671D
-03&P
/'D
2 D 671D
5(7&
5(7!
E
2 E
2 E
VAR
a1,a2,a3:
b1,b2,b3,b4:
END_VAR
/'E
67E
671E
671E
BOOL;
BYTE|WORD|DWORD|LWORD;
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10.7 Touches dans l'éditeur FBD
⇒ Activation de la combinaison de touches <Alt>+<H>
Les touches disponibles actuellement apparaissent .
Touche (s)
Instructions curseur
<Ctrl>+<S>
<Ctrl>+<A>
<CursorLeft>
<Ctrl>+<CursorLeft>
Elément vers la gauche
<Ctrl>+<D>
<Ctrl>+<F>
<CursorRight>
<Ctrl>+<CursorRight>
Elément vers la droite
<Ctrl>+<E>
<CursorUp>
Ligne de grille vers le haut
<Ctrl>+<X>
<CursorDown>
Ligne de grille vers le bas
<Ctrl>+<W>
Dérouler image une ligne vers le haut
<Ctrl>+<Z>
Dérouler image une ligne vers le bas
<Ctrl>+<R>
<PageUp>
Déplacer image vers le haut
<Ctrl>+<C>
<PageDown>
Déplacer image vers le bas
Marquer bloc
<Shift>+<PageUp>
<Shift>+<CursorUp>
<Shift>+<PageDown>
<Shift>+<CursorDown>
Touche (s)
<Ctrl>+<G>
Touches d’effacement
<Delete>
<Ctrl>+<H>
Effacer un élément
<Delete><CursorLeft> <Ctrl>+<T>
Effacer un segment complet
<Ctrl>+<Y>
<Ctrl>+<M>
<Enter>
Fin d'une entrée
Touche (s)
Accès
<Ctrl>+<Enter> <Ctrl>+<N>
Passage au FB / FK
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-27
10-28 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Menu local dans l'éditeur FBD
Dans chaque éditeur il existe un menu local (combinaison de touches
<Alt>+<F10>) qui permet de regrouper des instructions importantes de
l'éditeur de façon à ce qu'elles soient rapidement accessibles.
Fig. 10-30: Menu local de l'éditeur FBD
Test de syntaxe
contrôle l'exactitude des réseaux FBD du point de vue syntaxe
<F6>
Commentaire édition
Entrée du commentaire (d'implémentation) pour une variable
<Ctrl>+<F2>
Alternative
Commutation en représentation standard/comprimée
<Ctrl>+<F6>
Commentaire on/off
Ligne complète du commentaire
<Shift>+<F2>
Symb./Abs.
Commutation en adressage symbolique/absolu
<Alt>+<P>
Imprimer
Sortie sur imprimante du contenu de l'éditeur
<Ctrl>+<U>
Passage à l'éditeur
Passage à l'éditeur LD/IL
<Ctrl>+<Q>
Instructions Quick
Offre d'instructions ^Q actuelle
<Ctrl>+<K>
Instructions bloc
Offre d'instructions ^K actuelle
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
10-29
Instructions bloc en langage FBD
Le but des Instructions bloc est de minimiser le travail par rapport à une
introduction de nouvelles entrées. Un bloc à l'intérieur de l'éditeur FBD se
compose d'un ou de plusieurs réseaux qui se suivent directement.
Pour l'éditeur SFC, les opérations bloc suivantes sont possibles:
Touche (s)
Instructions bloc
<Ctrl>+<K><B>
Marquer Début du bloc
<Ctrl>+<K><K>
Marquer Fin de bloc
<Shift>+<CursorUp>
<Shift>+<CursorDown>
Marquer bloc
<Ctrl>+<K><L>
Définir un réseau en tant que bloc
<Ctrl>+<K><H>
Masquer le bloc
<Ctrl>+<K><Y>
Effacer bloc
<Ctrl>+<K><V>
Déplacer bloc
<Ctrl>+<K><C>
Copier le bloc
<Ctrl>+<K><W>
Ecrire bloc sur disquette
<Ctrl>+<K><R>
Lire bloc d'une disquette
<Ctrl>+<K><3>
Bloc → Editeur de texte
<Ctrl>+<K><4>
Bloc de l'éditeur de texte → FBD
Marquer le début du bloc
<Ctrl>+<K><B>
Placer le curseur sur le premier réseau voulu puis activer la combinaison
de touches <Ctrl>+<K><B>.
Marquer la fin du bloc
<Ctrl>+<K><K>
Placer le curseur sur le dernier réseau voulu puis activer la combinaison
de touches <Ctrl>+<K><K>.
Marquer bloc
<Shift>+<CursorUp>
<Shift>+<CursorDown>
Définir un réseau en tant que
bloc <Ctrl>+<K><L>
Masquer le bloc
<Ctrl>+<K><H>
Effacer un bloc
<Ctrl>+<K><Y>
Avec la combinaison de touches Shift>+<CursorUp> /
<Shift>+<CursorDown> , il est également possible de marquer un bloc.
Le réseau actuel va être marqué en tant que bloc.
Le bloc marqué est rendu visible ou invisible par activation de la combinaison de touches <Ctrl>+<K><H> .
Toutes les lignes marquées seront effacées sans avertissement.
Déplacer le bloc
<Ctrl>+<K><V>
Le bloc marqué va être déplacé directement à l'aval de la position marquée par le curseur.
Copier bloc
<Ctrl>+<K><C>
Le bloc marqué va être copié directement à l'aval de la position marquée
par le curseur.
Ecrire bloc sur disquette
<Ctrl>+<K><W>
Le bloc marqué est écrit sur le support de données indiqué dans la fenêtre de sélection sous le nom à indiquer. Le bloc est ensuite archivé en
tant que fichier ASCII standard.
Lire bloc d'une disquette
<Ctrl>+<K><R>
Insère derrière la position actuelle du curseur un bloc archivé auparavant
avec Ecrire bloc.
Lors de sa lecture, l'exactitude de la syntaxe du bloc est
ATTENTION:
contrôlée. Des corrections sont possibles dans la fenêtre.
Bloc → Editeur de texte
Ctrl>+<K><3>
Bloc éditeur de texte → FBD
<Ctrl>+<K><4>
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Envoie le bloc marqué dans l'éditeur de texte.
Envoie le bloc marqué dans l'éditeur de texte vers l'éditeur FBD,
(Contrôle des erreurs de syntaxe effectué.)
10-30 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Instructions Quick dans l'éditeur FBD
Les instructions Quick ci-après servent à accélérer les mouvements du
curseur:
Touche (s)
Instructions Quick
<Ctrl>+<Q><S>
<Home>
vers le bord gauche
<Ctrl>+<Q><D>
<End>
vers le bord droit
<Ctrl>+<Q><R>
<Ctrl><PageUp>
vers le début du diagramme de blocs fonctionnels
<Ctrl>+<Q><C>
<Ctrl><PageDown>
vers la fin du diagramme de blocs fonctionnels
<Ctrl>+<Q><B>
vers le début du bloc
<Ctrl>+<Q><K>
vers la fin du bloc
<Ctrl>+<Q><E>
<Ctrl><Home>
vers le début du réseau
<Ctrl>+<Q><X>
<Ctrl><End>
vers la fin du réseau
<Ctrl>+<Q><P>
vers la dernière position
<Ctrl>+<Q><G>
vers le réseau indiqué
Par ailleurs, on a implémenté:
Restaurer ligne <Ctrl>+<Q><L>
Si un réseau FBD a été effacé par mégarde, il peut être restauré immédiatement après en activant cette instruction.
Chercher et Remplacer
Recherche d'une chaîne de
caractères <Ctrl>+<Q><F>
Cette fonction utilise la fenêtre ci-après (voir Fig. 10-31: Recherche et
remplacement d'un texte (chaîne de caractères)) avec les mêmes éléments de sélection, seule la ligne ‘Nouveau texte’ a disparu.
Rechercher et Remplacer une
chaîne de caractères
<Ctrl>+<Q><A>
Fig. 10-31: Recherche et remplacement d'un texte (chaîne de caractères)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
Cherche Texte
10-31
Validation
Le texte à rechercher est tout d'abord défini par le terme sur lequel se
trouve le curseur.
On peut soit réécrire ce terme soit sélectionner un autre terme déjà utilisé
auparavant via la fenêtre history.
Nouveau Texte
Texte qui doit remplacer le texte recherché. Un contrôle de convenance
est effectué afin que le nouveau texte puisse assumer la tâche du texte
précédent
• Eléments:
[X]
Variables et constantes
[X]
Mot clé
[ ]
Repère
[ ]
Commentaire
[ ]
Bloc fonctionnel
[ ]
Fonction
[ ]
Types de données
Zone de recherche à sélectionner (éléments à rechercher):
Au moins un élément doit être sélectionné, au maximum tous les éléments peuvent être sélectionnés. Sous un mot clé, on doit comprendre
des termes qui ont une signification particulière pour le système de programmation, comme par exemple: VAR, PROGRAM:::
Les éléments que l'éditeur actuel ne connaît pas, ne sont pas sélectionnables (grisés)
• Zone:
(*)
Editeur
( )
Bloc marqué
( )
Réseau actuel
La zone à sélectionner peut être limitée à partir de tout l'éditeur jusqu'au
bloc marqué.
• Options:
[ ]
Ignor. Majusc. Majusc.
[ ]
mots complets seulement
[ ]
avec demande
En options, on peut demander au système d'ignorer les majuscules et
minuscules et de ne rechercher que des mots complets. Par ailleurs, il est
également possible de demander qu'une confirmation soit effectuée avant
chaque remplacement.
• Direction:
(*)
en avant
( )
en arrière
La direction de la recherche est définie à partir du curseur.
• Mode:
( )
à partir du curseur
( )
tout autour
(*)
ensemble de la zone
Le mode de la recherche est défini de façon standard à partir du curseur.
La recherche peut être effectuée tout autour à partir du curseur, et au
maximum jusqu'au curseur, en tenant compte de la direction susmentionnée. La troisième possibilité est: du début jusqu'à la fin en fonction de la
direction ou inversement sur toute la zone
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
10-32 Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK DIAGRAM
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-1
11 Système global
11.1 Généralités
En fonction du type de la commande utilisée, l'utilisateur dispose de différentes voies pour accéder du menu central à l'interface de programmation de la
SPS.
Menu central
Différentes possibilités sont offertes pour
• sélection du langage,
• réglage des paramètres de couplage,
• commande et
• droits d'accès dans le cadre de la gestion d'un mot de passe.
L'utilisateur de l'interface de programmation SPS doit régler les droits
d'accès suivants dans le cadre de la gestion de son mot de passe:
• Autorisation pour entrées dans le programme SPS ou modification du
programme SPS
• Autorisation pour transfert du programme SPS à la commande.
Avant de passer à l'interface de programmation SPS, ces droits d'accès
peuvent déjà être validés au moyen de la combinaison de <Alt>+<K>, par
l'introduction d'un nom utilisateur et d'un mot de passe correspondant . L'introduction du nom utilisateur et du mot de passe (combinaison de touches
<Alt>+<K> ou option de menu 'mot de passe... altK') est également possible dans l'interface de programmation SPS.
La validité du mot de passe peut également être annulée.
Généralités sur l'interface de programmation SPS
Après avoir quitté le menu central, on passe au menu principal SPS.
Fig. 11-1: Menu principal SPS
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-2 Système global
Guide de programmation SPS - 18VRS
Menu principal SPS
Ligne 1:
• Date
• Type du couplage entre commande et PC,
Offline, absence de couplage,
Aucun affichage signifie ’Online’
• Messages d’erreur de la CNC,
Aucun affichage signifie absence d’erreur
• Mode de fonctionnement de l’interface de programmation
Affichage: Restitution du programme SPS,
Edition non permise,
Aucune information de mise en service
Edit:
Edition du programme SPS permise,
mais sans information de mise en service
Etat:
Programme SPS avec informations de mise en service,
Edition non permise
Online:
Edition et Transfert du programme SPS
sans RESET-SPS
• Heure
Ligne 2:
• Ligne menu principal
par
Les différentes options du menu principal peuvent être appelées
chaque éditeur au moyen de <Alt>+'lettre soulignée'.
Ligne 4:
• Nom de la société, type de la commande
Ligne 21:
• Adresse et désignation de la commande
Ligne 23:
• réservée pour type et nom du fichier chargé
Ligne 25:
• Touches et combinaisons de touches (raccourcis clavier) importantes
Le système de programmation et de mise en service SPS comprend un
système guide avec les possibilités d'aide explicitées ci-après:
<F1>
Apporte une aide en relation avec l'éditeur actuel lorsque le curseur se
trouve dans une fenêtre éditeur.
Apporte une aide en relation avec l'option de menu lorsque le curseur se
trouve dans une fenêtre menu.
<Ctrl>+<F1>
<Enter>
<Alt>+<F1>
<Esc>
permet une aide sur le terme actuel (position du curseur).
Aide contextuelle plus poussée en relation avec le terme marqué.
Retour à la fenêtre d'aide précédente
Quitter l'aide
Les deux premières possibilités comportent également la possibilité de sélectionner d'autres termes associés et par conséquent une aide plus poussée. L'activation de la combinaison de touches (raccourci clavier)
<Alt>+<S> permet d'amorcer la recherche d'un terme (concept).
En supplément, on a intégré dans le menu principal l'option Aide qui est
accessible via les combinaisons de touches<Alt>+<?> ou <F10> puis <?>
<F10>
<Alt>+<F10>
<Esc>
<Enter>
Les touches et combinaisons de touches suivantes sont importantes après
terminaison d'une entrée.
Passage au menu principal
Menu local de l'éditeur respectif
Quitter l'éditeur respectif
Clôture de l'entrée
Pour autres touches et combinaisons de touches, voir Chapitre
‘Touches dans le système global’, Page 11-62.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-3
Guide de programmation SPS - 18VRS
Technique des fenêtres
Le travail dans le système de programmation et de mise en service de la
SPS s'effectue dans des fenêtres qui peuvent être ouvertes, déplacées,
fermées ou masquées par d'autres fenêtres, après ouverture de ces dernières. La fenêtre respectivement active est reconnaissable à son cadre
double.
Parmi les fenêtres, on distingue entre:
• fenêtre menu pour sélection des instructions
• fenêtre d'option pour paramétrage
• fenêtre de sélection
• fenêtre d'éditeur
• fenêtre de chargement et de mémorisation avec possibilité d'exportation
Fenêtre menu pour sélection des
instructions
Fig.11-2: Fenêtre menu pour sélection des instructions
La sélection de l'option de menu désirée peut s'effectuer via:
• les touches de direction et <Enter>,
• Le caractère marqué en couleur (lettre ou chiffre) ou
• les touches spéciales ou combinaisons de touches spéciales énumérées.
Fenêtre d'option pour
paramétrage
La fenêtre ci-après indique les possibilités fondamentales pour paramétrage.
[]
Si plusieurs possibilités sont données, l'une d'entre elles au
moins doit être sélectionnée;
une, plusieurs ou toutes les possibilités peuvent être choisies.
(voir Fig. 11-3: Fenêtre d'option pour paramétrage,
Composants:)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
[]
Si le champ ne comprend qu'une possibilité, cette possibilité
peut être activée et désactivée.
()
On ne peut choisir qu'une seule et unique possibilité .
(voir Fig. 11-3: Fenêtre d'option pour paramétrage,
Documentation dans:)
11-4 Système global
Guide de programmation SPS - 18VRS
Affichage de listes avec l'ascenseur sur la barre de défilement: (voir Fig.
11-3: Fenêtre d'option pour paramétrage, pilotes imprimante)
⇒ Sélectionner un élément de liste avec le curseur
⇒ activer avec <Enter>
La sélection est également utilisée pour les valeurs prédéfinies.
Les possibilités inutilisables pour le moment sont représentées en police grisée.
Fenêtre d'entrée: (voir Fig. 11-3: Fenêtre d'option pour paramétrage, nom
de fichier)
⇒ Entrée d'un nom via le clavier,
nombre de caractères limité,
⇒ dans la fenêtre vide <Enter>,
Ouverture de la fenêtre de sélection
⇒ Sélection de l'élément avec le curseur,
⇒ activer avec <Enter>
⇒ Ouverture de la fenêtre History avec <CursorDown>,
Liste d'enregistrements déjà utilisés,
⇒ <Enter>
La commutation entre les champs s'effectue en avant avec la touche
<Tab> et, en arrière avec la combinaison de touches <Shift>+<Tab> .
Certaines positions sont accessibles au moyen de la lettre soulignée
(<Alt>+ Lettre).
Fig. 11-3: Fenêtre d'option pour paramétrage
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-5
Fenêtre de sélection
Fig. 11-4: Fenêtre de sélection
Si des noms déjà connus du système doivent être inscrits lors de l'introduction de noms, de variables, de types de FB ou d'entrées d'une façon
générale, le champ nom vide peut être validé avec <Enter>. L'offre possible est dans un tel cas affichée pour sélection.
⇒ Sélection avec le curseur
- ou ⇒ par inscription du nom
⇒ activer la touche <Enter> pour exécution de l'opération.
Fenêtre d'éditeur
La création du programme SPS s'effectue dans différents éditeurs dont
les fenêtres présentent l'architecture décrite ci-après:
Fig. 11-5: Fenêtre d'éditeur avec menu local
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-6 Système global
Guide de programmation SPS - 18VRS
En-tête
Pied
• Date, éventuels messages d'erreur du système,
mode de fonctionnement du système de programmation, avertissements SPS éventuels,
heure
• Commentaire sur l'élément actuel, affichage peut
être activé ou désactivé avec combinaison de
touches <Ctrl>+<F6> <Ctrl>+<F6>
• Ligne du menu principal
accessible via la touche <F10>
• Type et nom du fichier de travail, Insertion/Réécriture
Représentation symbolique/absolue de variables
Information sur la position du curseur, réseau, ligne, colonne..
en cas d'accès à des éditeurs sous-jacents, le
cas échéant présence multiple
−
• Instructions d'entrée permises spécifiques de
l'éditeur
• Touches et combinaisons de touches principales
(<Alt>+<H>
Touches actuelles,
<Alt>+<F10>
Menu local,
<F10>
Menu principal SPS, entre
autres)
Cadre double, fenêtre de l'éditeur actif
Fenêtre de chargement et de
mémorisation avec possibilité
d'exportation
Si des blocs doivent être archivés sous forme de fichiers, un archivage
interne au système suffit dans la plupart des cas, sans que l'opérateur ait
besoin de s'occuper de la place où sont stockés ces fichiers.
Dans certains cas, il est cependant judicieux de pouvoir sélectionner le
nom, l'extension, le lecteur et le chemin d'un fichier (Exportation du fichier
en écriture ou importation du fichier en lecture)
Fig. 11-6: Fenêtre de mémorisation, interne
Si la fenêtre présente un bouton exportation, il est alors possible de choisir
librement un chemin, lecteur etc..
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-7
Fig. 11-7: Fenêtre de mémorisation, externe
Contrôle syntaxique intégré en cours d'entrées
Le système de programmation et de mise en service travaille en appliquant le principe de l'exactitude syntaxique de chaque source, ceci signifie que, dès le départ, c'est-à-dire à partir de la déclaration de chaque
unité d'organisation de programme, l'exactitude de la syntaxe de chaque
entrée ou correction est soumise à un contrôle.
Si des éléments SFC sont utilisés pour l'introduction de séquences
d'évolution, l'utilisateur peut partir du principe que toutes les structures
introduisibles sont libres et sûres (free choise nets)
Ceci signifie que la mémorisation d'une source sera refusée;
• en cours de déclaration si la ligne n'est pas fermée,
• dans l'éditeur IL, si la ligne n'est pas fermée,
• dans l'éditeur LD/FBD, tant que l'entrée d'un élément concret n'est pas
terminée (par exemple nom du contact entre autres)
• dans l'éditeur SFC, si la structure n'est pas encore fermée et
• dans l'éditeur de blocs d'actions si le bloc d'actions n'est pas complet.
Source syntaxiquement correcte
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Le système peut offrir à l'utilisateur un aperçu préliminaire des prochaines
entrées possibles (ligne d'opérations consécutives possibles dans la fenêtre éditeur) en simplifiant ainsi considérablement les opérations d'entrée.
11-8 Système global
Guide de programmation SPS - 18VRS
Consignes d'installation pour le système de programmation
Le système de programmation et de mise en service fonctionne à partir de
la version 16 en version DPMI.
Une limitation de la mémoire DPMI en dessous de 8 Mo peut porter considérablement préjudice aux propriétés du système.
Limitation de la mémoire DPMI
Une limitation n'est pas judicieuse avec un ordinateur PC présentant une
mémoire RAM de 8 Mo.
Si absolument nécessaire, la limitation dans le cas de PC avec une RAM
de 16 ou 32 Mo, doit être plafonnée à 8 Mo.
SET DPMIMEM= MAXMEM 8192
Dans le cas des PC avec 64 Mo ou plus, l'inscription est nécessaire
(Gestion DOS).
Consignes générales pour
utilisation des pilotes
Dans le cadre de l'installation, il est nécessaire d'ajouter certaines remarques relatives à l'utilisation des différents pilotes (XMS/EMM) sur PC-AT.
On part de DOS 5.0 (ou plus) et de ses pilotes standard.
• himem.sys
(ou windows\himem.sys)
• windows\smartdrv.exe,
(dos\smartdrv.sys n'est pas utilisé pour
des raisons de compatibilité avec le
système global)
Pour l'utilisation XMS, il faut conserver le numéro d'accès standard h= 64.
Ordinateur standard PC-AT, RAM 8 Mo
Milieu de mémorisation XMS/Cache disque
config.sys
DEVICE=C:\DOS\HIMEM.SYS
DOS=HIGH,UMB
DEVICE=C:\DOS\EMM386.EXE NOEMS
FILES=20
BUFFERS=20
autoexec.bat
lh C:\WINDOWS\SMARTDRV.EXE 2048
La séparation de la mémoire présuppose l'installation sur
'automatique' ou mémoire conventionnelle sous l'option de
menu 'options'
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-9
11.2 Menu Fichier <Alt>+<A>
Avec le menu fichier, l’utilisateur peut charger des programmes, blocs
fonctionnels, fonctions et types de données créés puis les mémoriser
après traitement. Les options de menu Renommage, Effacement et Archivage qui existaient jusqu'à présent ont été regroupées dans un gestionnaire de fichiers et compléter par d'autres composants, comme test,
restaurer fichiers effacés etc..
Fig. 11-8: Option de menu Travail avec fichier
Charger <F3>
Cette option de menu qui est accessible via la touche <F3> permet le chargement d'un fichier de travail déjà existant.
On peut respectivement choisir entre Programme (PR), Bloc fonctionnel
(FB), Fonction (FK) et Type de données (TY). Le bouton 'Afficher' permet
de passer à l'aide déclaration pour FB/FK/TY.
Via le bouton 'Nouveau', on peut créer un nouveau fichier vide
PR/FB/FK/TY (Passage à la fenêtre 'Nouveau'.)
La fenêtre chargement apparaît déjà alors qu'aucun fichier n'a encore été
chargé mais lorsque les opérations préliminaires à ce chargement ont été
sélectionnées.
Nouveau
Cette option de menu permet la création d'un nouveau fichier (PR/FB/FK/ TY)
par introduction d'un nom. Mais il est également possible de sélectionner un
fichier parmi ceux existants dans la liste (Reprise dans la fenêtre Nom avec
<Espace>, confirmation avec <Enter>) et de le reprendre.
Retour <Alt>+<F3>
Cette option de menu ou la combinaison de touches <Alt>+<F3> permet
de retourner dans la fonction supérieure, le bloc fonctionnel supérieur ou
le programme supérieur.
Alternativement, la structure de l'ensemble du programme peut être affichée au moyen de la combinaison de touches <Alt>+<F4> et l'unité où la
poursuite des opérations doit s'effectuer, peut alors être sélectionnée.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-10 Système global
Guide de programmation SPS - 18VRS
Sauvegarder <F2>
Cette option de menu ou alternativement la touche fonction <F2> permet la
mémorisation du fichier de travail sans quitter l'interface de programmation
SPS.
Avant exécution, la validité du mot de passe est soumise à un contrôle.
(Sauvegarde automatique, voir option 'Paramètres généraux', Page11-55).
Mémoriser sous...
Le fichier de travail est sauvegardé sous un nouveau nom à entrer.
Avant exécution, la validité du mot de passe est soumise à un contrôle.
Cette option de menu offre la possibilité de procéder ensuite à une protection du fichier par un mot de passe.
Charger en format ASCII
Cette option de menu permet le chargement de tout un fichier (PR/FB/FK/
TY) en format ASCII.
Le fichier à charger doit se trouver sous la forme d'un bloc marqué dans
l'éditeur de texte (voir Chapitre 2 'Représentation de programmes, blocs
fonctionnels et types de données en format ASCII).
L'écriture ASCII suivie d'un chargement ASCII permet souvent de restaurer un fichier incorrect. Par ailleurs cette possibilité a été prévue pour les
versions futures (> Version 17) en tant que moyen permettant la traduction compatible de fichiers créés sous des versions inférieures.
Mémoriser en format ASCII
Cette option de menu permet la mémorisation de tout un fichier
(PR/FB/FK/ TY) en format ASCII.
Le fichier mémorisé se trouve sous la forme d'un bloc marqué dans l'éditeur de texte (voir Chapitre 2 'Représentation de programmes, blocs
fonctionnels et types de données en format ASCII, page 2-27).
L'écriture ASCII suivie d'un chargement ASCII permet souvent de restaurer un fichier incorrect. Par ailleurs cette possibilité a été prévue pour les
versions futures (> Version 17) en tant que moyen permettant la traduction compatible de fichiers créés sous des versions inférieures.
Impression (de fichiers)
L'interface de programmation permet la documentation des programmes
SPS à trois niveaux:
1. Documentation dans l'éditeur séparé actuel - <Alt>+<P>
2. Documentation du fichier de travail qui doit être chargé actuellement.
3. Documentation de l'ensemble du programme avec FB/FK/TY utilisés
(voir Chapitre ‘Documentation’, Page 11-46)
Les options de menu suivantes permettent en outre d'influencer le contenu de la documentation:
• Option 'Paramètres généraux':
Représentation des adresses de variables absolues avec I/Q ou E/S,
soit
%E1.1.3 au lieu de %I1.1.3 et inversement. En remplacement, reprise
du commentaire de déclaration dans l'implémentation, pour le cas où il
n'existe pas de commentaire d'implémentation.
• Option ‘Paramètres de l'écran’:
Dimensions des éléments de LD et FBD
Type de la représentation des commentaires
La mise au point est effectuée dans la fenêtre suivante:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-11
Fig. 11-9: Fenêtre de sélection pour documentation 'Fichier de travail'
Sous les différentes options de sélection, il est possible de choisir les
paramètres préliminaires suivants:
Composants
Sommaire
Affectation E/S
Liste importation
Arbre importation
Déclaration
Renvoi
Organigramme séquentiel
Transitions
Etapes
Implémentation/Actions
Données de process
Tableau IO du poste connecté,
seulement PR)
(Editeur importation)
(Structure de PR/FB/FK/TY)
(Editeur de déclaration, prédéfinissable!)
(Liste de renvoi, prédéfinissable!)
}
} si existantes dans fichier
}
}
Alternativement, il est possible de définir les langages de la documentation
Documentation en
( ) Langage initial
(*) LD
( ) FBD
( ) IL
(langage des entrées)
Si la conversion d'un réseau dans un langage désiré n'est pas possible, il
est possible en remplacement d'utiliser les langages suivants:
Langage de substitution
( ) Langage initial
( ) IL
(langage des entrées)
La sortie directe sur des types d'imprimantes voisines ou la sortie sur un
fichier présentant le nom indiqué ci-après est possible. Le fichier comprend les caractères de contrôle nécessaires pour le type d'imprimante
sélectionnée. Il ne s'agit donc pas d'un fichier ASCII pur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-12 Système global
Guide de programmation SPS - 18VRS
Unité de sortie
(*) Fichier
( ) LPT1...LPT3
Nom de fichier
Caractères ASCII et caractères de contrôle
imprimante,120 caractères par ligne
Sortie directe sur imprimante via
interface sélectionnée
Nom du fichier impression, dérivé de façon standard du nom du fichier actuel, définissable via entrée directe ou fenêtre history.
Fenêtre sélection pour pilote imprimante
Type d'imprimante
LASER90
DRUCK60
MT910
MT440 ....
Installer
mémorise les paramètres prédéfinis pour d'autres opérations
Protection
⇒ Activer touche <F3>
Charger fichier pour attribution et/ou modification d'attributs de fichier.
Si le fichier à charger est ouvert, l'opération de chargement s'effectue
sans problème.
Si le fichier à charger est caractérisé par lecture_seulement ou verrouillé, le mot de passe est requis.
Après chargement, le fichier peut être modifié et archivé via l'option de
menu 'Sauvegarder sous/Protection ou bien via cette option de menu:
Fig. 11-10: Protection de fichiers, attributs de fichiers, mot de passe
créé par:
40 caractères
Propriétaire du fichier (Société)
archivé
sans
codage
dans
fichier
Groupe :
utilisateur
20 caractères
Groupe de fichiers
archivé
sans
codage
dans
fichier
Mot de passe:
10 caractères
Mot de passe
du groupe
utilisateur
archivé codé
dans
fichier
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-13
Guide de programmation SPS - 18VRS
Pour l'utilisateur de PCL , les modifications sont limitées à un minimum. Il
ne connaît ni les mots de passe des fichiers verrouillés ni ceux des fichiers
caractérisés par lecture_seulement Il continuera à travailler comme jusqu'à présent avec les fichiers spéciaux INDRAMAT:
•
Avec les fichiers verrouillés, aucun accès, seulement comparaison de
la documentation <Shift>+<F1>.
•
Dans le cas des fichiers caractérisés par lecture_seulement, un aspect, une lecture des informations d'état, écritures de bloc, lecture,
analyse logique, forçage etc.. sont permis, comparaison de documentation <Shift>+<F1>.
Si le fichier est mémorisé avec la caractéristique ouvert, mot de
passe/groupe utilisateur sont déconnectés (en grisé) ou refusés.
Les attributs qui sont conférés de cette façon caractérisent chaque forme
mémorisée du fichier (sur disquette, disque dur, après modification online
etc…)
N.B.
En cas de nouvelle attribution, le mot de passe doit être à nouveau entré pour comparaison.
N.B.
Il est recommandé au propriétaire du fichier de conserver un
original non codé.
Actualiser
Grâce à cette option de menu, il est possible d'adapter des projets réalisés sous des versions antérieures. En cours d'actualisation, un contrôle
des fichiers est alors effectué afin de détecter et, le cas échéant, de réparer des erreurs éventuelles. En cas de nécessité reconnue, l'actualisation
est déclenchée automatiquement.
Gestionnaire de fichiers
Fig. 11-11: Gestionnaire de fichiers
Fonction
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Tous les fichiers d'un projet sont affichés dans une liste suivant une classification par type ou nom. Des fichiers peuvent être marqués/démarqués
au moyen d'un caractère espace. Différentes opérations peuvent être
appliquées sur les fichiers actifs ou le groupe de fichiers marqués. Les
fichiers dans la SPS sont caractérisés; les fichiers modifiés par rapport à
la SPS étant caractérisés différemment.
11-14 Système global
Champ de boutons Type/nom
Bouton Effacer
Bouton Renommer
Bouton Copier
Guide de programmation SPS - 18VRS
Influence l’affichage de la liste des fichiers Avec Type, tous les fichiers
sont classés dans la liste en fonction de leur type (tout d'abord PR, puis
FB, FK, TY, BAK etc.), comme représenté dans la fig. ci-dessus. Dans le
cas contraire, ils sont classés par nom.
pour effacement des fichiers actuels ou marqués
Renommage du fichier actuel.
Le renommage de fichiers marqués n'est pas possible.
Le fichier actuel est reproduit.
Le copiage de fichiers marqués n'est pas possible.
Bouton Test
Le fichier actuel ou les fichiers marqués sont contrôlés et les erreurs
constatées sont réparées
Bouton Restaurer
Les fichiers de sauvegarde (de sécurité) sont restaurés Les fichiers source
(PR, FB, FK, TY) sont alors recréés à partir des fichiers de sauvegarde (BAK,
BA1, NEW) . D'éventuels fichiers source existants et devant donc être réécrits
sont archivés en tant que copie de sauvegarde de sécurité.
Bouton Archiver
Le fichier actuel ou les fichiers marqués sont archivés sur un support de
stockage avec les fichiers qui ont été importés par le fichier actuel ou les
fichiers marqués.
Bouton Récupérer
Des fichiers sont extraits d'un support de stockage et transmis dans le
projet affiché.
Bouton Afficher
L'interface (<Shift>+<F1>-Aide) du fichier actuel (FB, FK, TY) est affichée
(même en présence de fichiers marqués).
Bouton Interruption
Clôture du gestionnaire de fichiers.
EXIT <Alt>+<X>
Alternativement à la combinaison de touches <Alt>+<X>, cette option de
menu permet de quitter l'interface de programmation SPS en retournant
au menu central.
L'utilisateur est alors invité à mémoriser le fichier de travail dans la mesure où celui-ci a été modifié.
11.3 Menu Edition
Les entrées et les modifications de:
• Fonctions utilisateur
• Blocs fonctionnels utilisateur
• Programmes utilisateur et de
• Types de données utilisateur
doivent être effectuées via le menu édition.
L'utilisateur peut, pour ce faire, charger un fichier déjà existant ou créer
un nouveau fichier.
Les étapes importation, déclaration, implémentation doivent ce faisant
être effectuées, comme illustré dans la figure ci-dessous.
Ce menu permet en outre le passage aux ‘EXTRAS’:
• Liaison de données de process
seulement pour les commandes fonctionnant avec Interbus-S,
Version logiciel G3.
• Simulation IO
Au niveau programme, il est possible dans cette zone de décrire des
entrées.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-15
Guide de programmation SPS - 18VRS
• Implémentation 2ms
Réaction rapide à des modifications d'entrées.
Pour plus de clarté, les options de menu 'Chercher' et 'Chercher et Remplacer' ´….ont été regroupées. Elles découlent du menu local des différents éditeurs et contiennent les mêmes possibilités fonctionnelles.
Un éditeur de texte exempt de syntaxe, en tant que mémoire tampon,
vient compléter le menu Edition.
Fig. 11-12: Fenêtre de sélection 'Edition''
Implémentation, Sélection de langage
Lors de la création d'un nouveau programme ou bloc fonctionnel, il faut
définir si le fichier doit être traité avec une structure d'éléments SFC ou
sans un tel niveau de structuration. (Pour les fonctions, seul un traitement
sans éléments SFC est possible.)
• Eléments SFC avec IL ou LD ou FBD en tant que langage de programmation.
• Liste d'instructions (IL), en tant que langage de programmation
• Diagramme à contacts (LD), en tant que langage de programmation
• Diagramme de blocs fonctionnels (FBD), en tant que langage de programmation
On peut permuter à discrétion entre la représentation en IL, LD et FBD.
Lors de la permutation, le système tente de représenter dans le langage
désiré les parties de programme entrées jusqu'à présent.
Lors du passage de LD ou FBD au langage IL (liste d'instructions) ceci est
toujours possible, lors du passage aux ou entre les langages graphiques
ceci est possible en général.
N.B.
Si l'utilisateur décide de refuser l'utilisation d'éléments de structure SFC, cette décision est irréversible.
Ensuite, il a le choix entre l’un des trois langages de programmation.
Sa décision n'a aucun effet sur les possibilités de passage entre les langages de programmation.
Un programme défini avec utilisation d'éléments de structure SFC peut
utiliser des blocs fonctionnels définis sans ces éléments et inversement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-16 Système global
Guide de programmation SPS - 18VRS
Les différents éditeurs des langages de programmation sont accessibles à
partir de cette option de menu. Ces éditeurs sont décrits en détail aux
chapitres ci-après:
Editeur de Structure SFC
→
Chapitre 6
Editeur des blocs d'actions
→
Chapitre 7
Editeur de listes d'instructions IL
→
Chapitre 8
Editeur de diagrammes à contact LD
Editeur de diagrammes de blocs
→
Chapitre 9
fonctionnels FBD
→
Chapitre 10
EXTRAS
Liaison de données de process
Un Interbus-S, Version logicielle G3, permet en supplément aux composants ordinaires de programme, la réalisation technique de sorties rapides en fonction d'entrées IBS et de registres de données IBS La version
logicielle G4 ne supporte plus ces composants.
L'adaptation des boucles IO s'effectue automatiquement (voir Chapitre 2,
Editeurs IO), l'utilisateur doit veiller lui-même au remplacement de la liaison des données de process (voir chapitre<0}‘Si la simulation est
connectée, un Avertissement IO est sorti (option de menu 'Diagnostic').
’, Page 11-18).
Le système supporte les instructions suivantes dont la réalisation sur le
plan technologie de programmation en langages IL, LD et FBD est expliquée:
Reset
inconditionnel/conditionnel
d’une sortie de process
Lors d'un changement d'état de l'entrée de process Interbus-S, la sortie de
process est remise à zéro.
Flanc positif (>/P):
0 → 1 Passage
Flanc négatif (</N):
1 → 0 Passage
Reset2-Out-In01:
Reset de la sortie de process avec flanc
positif de l'entrée de process
(Code d'instruction $07).
LD>
xx1
RESC zz1
[[]] 3
5
[[ ! 5 ]]
Reset2-Out-In10:
LD<
xx2
RESC zz2
Reset de la sortie de process avec flanc
négatif de l'entrée de process
(Code d'instruction $08).
[[]] 1
5
[[ 5 ]]
Dans le cas d'un reset conditionnel d'une sortie de process, en dehors du
flanc de l'entrée de process, le système évalue l'état d'une condition de
validation dans le registre de manipulation bit de l'interbus-S.
Reset-Out-In01-Switch: Reset de la sortie de process avec flanc positif
de l'entrée de process (Code d'instruction $09).
LD>
xx3
AND
yy1
RESC zz3
[[\\]] [[ ! 3
5
\\ 5 ]]
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-17
Guide de programmation SPS - 18VRS
Reset-Out-In10-Switch: Reset de la sortie de process avec flanc négatif
de l'entrée de process (Code d'instruction $0A).
LD<
xx4
AND
yy2
RESC zz4
Copie d'un état d'entrée sur une
sortie de process
[[\\]] [[ 1
5
\\ 5 ]]
Bit-Copy:
Le bit d'entrée est copié à chaque cycle interbusS sur le bit de sortie. (Code d'instruction
$0D).
Copie d'un mot d'entrée sur un
mot de sortie de process
LD
xx5
ST
zz5
[[]] [[ ]]
Word-Copy-Bit-Mask:
Le mot d'entrée sélectionné, associé bit par bit
au
masque
bit
ET
indiqué,.
est copié à chaque cycle Interbus S .
sur le mot de sortie.(Code d'instruction $0E).
LD
xw1
AND
cw1
xw1
ST
zw1
cw1
CAS PARTICULIER:
LD
xw2
ST
zw2
Explications:
xx1...xx5
xw1...xw2
yy1...yy2
zz1...zz5
zw1...zw2
cw1
]Z
Si tous les bits du mot d'entrée doivent
être copiés sur le mot de sortie, le masque peut
être supprimé.
xw2
]Z
Variable d'entrée Interbus-S (BOOL)
Mot d'entrée Interbus-S (WORD)
Sorties bit du registre de manipulation
(BOOL)de l'Interbus-S
Variable de sortie rapide Interbus-S
(BOOL)
Mot de sortie Interbus-S (WORD)
constante masque bit (WORD)
Simulation IO
Dans cette zone de l'implémentation, il est permis de simuler des messages réponses, c'est-à-dire de décrire des entrées.
La zone est traitée avant l'implémentation proprement dite, si bien que
l'on a dans chaque cycle d'exécution le comportement d'entrée suivant:
Phase 1
Lecture des valeurs d'entrée via les systèmes bus de la commande,
stockage dans la mémoire de représentation des entrées de la commande, COMME JUSQU'A PRESENT.
Phase 2
Réécriture des entrées désirées par la simulation
Implémentation et liaison de données de process comme jusqu'à présent.
Phase 3
Sortie des valeurs de sortie via les systèmes bus de la commande.
Dans le cadre de la simulation, il est possible de travailler en IL, LD, FBD.
Des blocs fonctionnels, fonctions et variables de tout type de données
peuvent être utilisés.
Le mécanisme de l'importation et de la déclaration ne subit aucune modification.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-18 Système global
Guide de programmation SPS - 18VRS
Dans le cadre de la simulation IO, des modifications online sont possibles.
La simulation peut être connectée ou déconnectée via l'option de menu
'Démarrage/Simulation IO On/Off'
Si la simulation est connectée, un Avertissement IO est sorti (option de
menu 'Diagnostic').
Implémentation 2ms
Le programme SPS est ici divisé en deux zones différentes à déroulement rapide.
Une zone est consacrée au programme SPS comme jusqu'à présent.
Le temps de cycle varie entre 10 et 200 ms.
La seconde zone, c'est-à-dire le programme SPS rapide, est appelée toutes
les 2 ms, comme validé par FastEnabl= True.
Le programme SPS rapide peut présenter une longueur maximale de 200
µs (durée).
Une fois ce temps écoulé, l'erreur de système suivante est émise:
'Temps dépassé Implémentation 2ms'
En raison du temps d'exécution limité, le nombre de réseaux programmables est faible. La compilation et le transfert de la section rapide du programme SPS peuvent donc s'effectuer sans gestion de segment.
Dans la section rapide du programme, tous les OP/TY/FK/FB sont permis,
mais aucune modification online n'est possible.
Dans la section rapide du programme SPS, on peut accéder à toutes les variables définies dans la déclaration (ATTENTION DANGER: En cours d'exécution
du programme SPS lent, il est possible que des variables se modifient; c'est
le programmateur SPS qui assume ici la responsabilité correspondante)
L'appel de la section rapide du programme SPS peut être piloté à partir du
programme SPS. La pose du bit de validation FastEnabl permet le traitement
de la section rapide du programme SPS. L'effacement du bit de validation
FastEnabl entraîne le blocage du traitement de la section rapide du programme SPS.
Prolongation du temps de cycle
par implémentation rapide
FastEnabl= FALSE,
Implémentation rapide OFF
$ ,PSOHPHQWDWLRQ %
)DVW(QDEO 758( )DVW(QDEO )$/6(
Implémentation rapide ON
Impl. rapide OFF
$ %
A– Lecture entrées
B- Ecriture sorties
Editeur de déclaration <Alt>+<D>
L'éditeur sert à la déclaration de variables et de blocs fonctionnels avant
leur utilisation.
En cas d'attribution d'adresses absolues, ces adresses sont comparées
avec le tableau IO au niveau du programme.
La déclaration d'un bloc fonctionnel utilisateur présuppose que ce bloc a
été importé.
Si des types de données utilisateur doivent être utilisés, il faut également
les importer.
Pour une représentation plus détaillée, voir:
Editeur de déclaration →
Chapitre 5
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-19
Editeur d’importation <Alt>+<M>
L'éditeur permet l'importation de fonctions, blocs fonctionnels et types de
donnés définis par utilisateur dans le fichier de travail actuel. La section
déclaration de ces FK, FB ou TY doit être entièrement complète.
L'importation d'un FB ou TY doit être effectuée avant son utilisation dans
la déclaration, celle d'une FK avant son utilisation dans l'implémentation.
L'effacement d'une ligne d'importation n'est alors possible que si une utilisation de l'importation n'a pas encore été annoncée dans la section déclaration ou effectuée dans la section implémentation dans le cas des
fonctions. Si le curseur se trouve sur le nom d'un FB importé (Nom du
type), le passage à l'éditeur interface est possible avec 1-S-Edit.
Pour une représentation plus détaillée, voir:
Editeur d'importation
→
Chapitre 4
Actions <Alt>+<N>
Cette option de menu ouvre pour tous les programmes structurés SFC ou
blocs fonctionnels, la liste de toutes les actions appartenant au fichier chargé
(voir Chapitre7 'Blocs d'actions (ACTION BLOCK) et actions (ACTION)') Le
nom de l'action, son commentaire et le langage dans lequel elle est mémorisée sont affichés.
Transitions
Cette option de menu ouvre pour tous les programmes structurés SFC ou
blocs fonctionnels, la liste de toutes les transitions appartenant au fichier
chargé. Le nom de la transition, son commentaire et le langage dans lequel elle est mémorisée sont affichés.
Option de menu ’Chercher’
Cette nouvelle option de menu regroupe toutes les instructions, dispersées jusqu'à présent dans les différents éditeurs, pour recherche et remplacement, liste des renvois et aide aux renvois y compris passage au
renvoi précédent ou suivant dans la liste des renvois.
Du point de vue fonctionnel, les instructions connues jusqu'à présent
n'ont toutefois pas subi de modifications.
Fig. 11-13: Option de menu ’Chercher’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-20 Système global
Guide de programmation SPS - 18VRS
Chercher
Correspond à l'instruction Quick <Ctrl>+<Q><F> de l'éditeur respectivement actuel.
Chercher & Remplacer
Correspond à l'instruction Quick <Ctrl>+<Q><A> de l'éditeur respectivement actuel.
Répéter
Correspond à l'instruction <Ctrl>+<L>de l'éditeur respectivement actuel et
permet de répéter la dernière recherche ou la dernière opération rechercher et remplacer de l'éditeur actuel.
GOTO
Correspond à l'instruction <Ctrl>+<G>, GOTO ligne …/GOTO Réseau ..
de l'éditeur actuel.
Dernière position...
Correspond à l'instruction Quick <Ctrl>+<Q><P>, GOTO position précédente du curseur dans l'éditeur actuel.
Liste des renvois / Aide aux renvois
Pour une meilleure orientation, la recherche de noms, variables et fonctions est assistée à l'intérieur des programmes, blocs fonctionnels et
fonctions.
A côté du support disponible en tout temps pour la variable marquée par
le curseur, on a implémenté à des fins de clarté et de documentation une
assistance conviviale sous forme de tableau avec prédéfinition.
Liste de renvois
<Alt>+<L>
Avec la liste des renvois, l'installation d'une fenêtre est prévue pour prédéfinition des éléments qui sont contenus dans la colonne 1 du tableau.
Le classement peut être alphabétique ou absolu (entrées, sorties, marqueurs…).
On peut pour affichage sélectionner tous les éléments; les éléments qui,
jusqu'à présent, n'ont été que déclarés sans être utilisés sont sélectionnés
comme les I/O (entrées/sorties) rapides.
Fig. 11-14: Fenêtre de sélection pour liste de renvois
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-21
Guide de programmation SPS - 18VRS
Fig. 11-15: Liste de renvois, variables symboliques classées dans l'ordre alphabétique
L'affichage suivant est effectué:
Nom
Critère de sélection,
Type
Information sur le type,
Référence
Lieu de l'apparition (niveau programme)
Trans/Etap.
Etape (S) ou Transition (T) de l'apparition,
Action
Action de l'apparition,
Position
Réseau (N) de l'apparition,
(A présent: ‘*N’, si plusieurs fois dans un réseau)
Utilisation
Nature de l'utilisation, Lecture/Ecriture/Edition/
Action booléenne, (pictogramme du langage de
programmation)
Lorsqu'on quitte la liste des renvois, la dernière version est mémorisée.
Au lieu d'une nouvelle création, cette version sera utilisée tant que le fichier ne subit aucune modification
Aide aux renvois
<Alt>+<S>
⇒ Positionner le curseur sur le nom voulu.
⇒ Activer la combinaison de touches <Alt>+<S> (Aide aux renvois)
Une fenêtre où sont indiqués les emplacements où le nom apparaît,
est alors ouverte.
Si le curseur ne se trouve sur aucun nom logique, une fenêtre de sélection est alors ouverte pour entrée du nom.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-22 Système global
Guide de programmation SPS - 18VRS
Fig. 11-16: Aide aux renvois à partir des différents éditeurs, <Alt>+<S>,
Curseur sur terme recherché HM100
L'affichage suivant est effectué:
Nom
Nom symbolique des variables,
du bloc fonctionnel ou de la fonction
Type
Type de la colonne 1,
Abs_Var
Référence absolue à la colonne 1,
Trans/Etap.
Etape (S) ou Transition (T) de l'apparition,
Action
Action de l'apparition,
Position
Réseau (N) de l'apparition,
(A présent: ‘*N’, si plusieurs fois dans un réseau)
Utilisation
Nature de l'utilisation, Lecture/Ecriture/Action
booléenne, (pictogramme du langage de
programmation respectif)
Renvoi précédent <Alt>+<F7>
Si une liste de renvois existe, l’enregistrement qui se trouve dans la liste
précédente de la liste sera sélectionné après activation de <Alt>+<F7> ou
de l'option de menu correspondante, avec branchement correspondant.
Renvoi suivant <Alt>+<F8>
Si une liste de renvois existe, l'enregistrement qui se trouve dans la liste
suivante de la liste sera sélectionné après activation de <Alt>+<F8> ou de
l'option de menu correspondante, avec branchement correspondant.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-23
Guide de programmation SPS - 18VRS
Mémoire tampon (Editeur de texte) ) <Alt>+<B>
L'éditeur de texte (mémoire tampon) permet le stockage de blocs émanant d'un autre éditeur quelconque. Ces blocs peuvent être édités sans
aucune réserve syntaxique.
A partir de la version 17, l'archivage (et la relecture) de fichiers complets est
possible.
Fig. 11-17: Editeur de texte avec fichier archivé
Couper <Shift>+<Delete>
Copier <Ctrl>+<Insert>
<Ctrl>+<K3>
Insérer <Shift>+<Insert>
<Ctrl>+<K4>
Afficher <Alt>+<B>
Déplacement du bloc marqué dans l'éditeur de texte
Copie du bloc marqué dans l'éditeur de texte
Insertion du bloc marqué dans l'éditeur de texte
Passage à l'éditeur de texte
Les raccourcis clavier:
<Shift>+<Delete>, <Ctrl>+<Insert>, <Shift>+<Insert> ne
sont possibles que sur certains claviers seulement.
ATTENTION
Pour la copie à partir des éditeurs graphiques (LD/FBD), les réseaux sont
convertis en langage texturé correspondant (IL). Lorsqu'un bloc doit être
lu à un autre endroit (autre programme, FB, action) un contrôle de syntaxe analogue à celui qui a lieu lors de la lecture du bloc est effectué.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-24 Système global
Guide de programmation SPS - 18VRS
Exemple:
Un réseau peut par exemple être marqué dans le diagramme à contacts
en tant que bloc puis copié dans l'éditeur de texte avec la combinaison de
touches <Ctrl>+<Insert> (alternativement à la combinaison de touches
<Ctrl>+<K><3>)
.23
Lmarqueur
a2
Fig. 11-18: Réseau LD marqué
Après conversion du graphique en équivalent IL, le texte suivant se trouve
dans l'éditeur de texte et peut être édité librement.
Editeur de texte
/'L
$1'marqueur
67D
Fig. 11-19: Réseau sous forme IL dans l'éditeur de texte
Editeur de texte
/'L
$1'marqueur
67D
Fig. 11-20: IL modifiée dans l'éditeur de texte
Lorsque le bloc modifié est inséré à l'emplacement désiré, un contrôle
syntaxique du bloc à lire a lieu, analogue au contrôle effectué lors de la
lecture du bloc, ainsi que la conversion dans le format graphique correspondant.
)%'
! L marqu. D
Fig. 11-21: IL modifié transféré de l'éditeur de texte à l'éditeur FBD
Les principales instructions de l'éditeur de texte sont regroupées dans le
menu local.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-25
Fig. 11-22: Menu local de l'éditeur de texte
Imprimer <Alt>+<P> Imprime le contenu de l'éditeur de texte (si actif)
Instructions bloc Déplacement rapide du curseur
Instructions Quick Instructions bloc
11.4 Menu compilation
Le menu compilation (protégé par un mot de passe, voir Chap. 11.8, Page
11-54 ff) permet la traduction du programme, du bloc fonctionnel actuel ou
de la fonction actuelle et il exécute pour le programme un 'Make' (Traduction des fichiers nécessaires) ou un 'Build' (Traduction intégrale) avec le link
(lien) suivant:
La traduction peut être influencée par la prédéfinition dans l'option 'Paramètres du compilateur'.(voir page 11-58)
Fig. 11-23: Fenêtre d'option ‘Paramètres du compilateur’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-26 Système global
Guide de programmation SPS - 18VRS
Avec le bouton 'Gestion de segments active', un LD ou un réseau FBD ou
son équivalent IL est défini en tant que 'plus petite unité modifiable'.
Si la gestion de segments est inactive, c'est le programme, le bloc fonctionnel ou la fonction qui sera considéré comme étant la plus petite unité
modifiable. Plus les dimensions de l'unité sont faibles, plus vite seront
effectuées les modifications, la mémorisation et la traduction. Toutefois,
comme les besoins de gestion augmentent, il faut alors s'attendre à une
augmentation du temps de cycle.
L'affectation prédéfinie est mémorisée lorsqu'on quitte le système de programmation.
Les opérations ci-après mentionnées ne peuvent fonctionner correctement que si tous les composants, c'est-à-dire le programme, les blocs
fonctionnels et les fonctions sont en concordance les uns avec les autres
au niveau de leurs interfaces (ordre des entrées et sorties, noms, valeurs
initiales des branchements).
Normalement, il est naturel qu'un bloc fonctionnel soit développé au fur et
à mesure, c'est-à-dire qu'il recevoive une entrée ou sortie supplémentaire, une autre ou une nouvelle valeur initiale entre autres.
Comme l'unité à utiliser et l'unité utilisée ne concordent plus, un message
d'erreur est alors émis lors de la traduction.
L'adaptation de chaque côté est possible au moyen de l'éditeur interfaces.
Editeur d'interfaces
Chapitre 4
Editeur d'importation
Traduction du fichier de travail / Compiler <Alt>+<F9>
Après activation de la combinaison de touches <Alt>+<F9> ou en utilisant
le menu principal <F10> / Fichier de travail, le système de programmation
procède à la traduction du fichier actuel (PR/FB/FK).
Dans le cas d'un programme, tous les blocs fonctionnels et fonctions sont
ensuite reliés (connexion par link). Le résultat est affiché et doit être validé en appuyant sur une touche.
L'opération de traduction peut être interrompue au moyen de <Esc>.
Traduction, fichiers nécessaires / Make <F9>
Après activation de la touche fonction <F9> ou de l'option du menu principal <F10> / Compiler, le système de programmation traduit les fichiers
appartenant au programme SPS actuel.
Si la traduction est démarrée à partir d'un des blocs fonctionnels utilisés
ou d'une des fonctions utilisées, le nom du programme est connu au
système de programmation et un traitement intégral est alors exécuté
automatiquement à partir du niveau programme.
Dans le cas des fichiers utilisés par le programme et traduits à une période ultérieure, un contrôle est effectué afin de vérifier si la source est
plus récente que le résultat de la traduction. Ceci signifie que des modifications effectuées sur la source n'ont pas encore été prises en considération lors de la traduction.
Les nouvelles traductions nécessaires sont alors effectuées en fonction
de la place où se trouve la modification: dans la section déclaration et/ou
dans la section implémentation. Ensuite, l'ensemble du programme est
relié.
Si une erreur survient ou si la touche <Esc> est activée, la traduction est
interrompue.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-27
Guide de programmation SPS - 18VRS
Fig. 11-24: Traduction du fichier de travail, des fichiers nécessaires (Make) et du
programme complet (Build)
ATTENTION
Si à la place de la touche <F9>, on a sélectionné la
combinaison de touches <Ctrl>+<F9>, le Make décrit cidessus est suivi du chargement et du démarrage du
programme (voir Chapitre 0 Démarrage/télécharger
<Ctrl>+<F9>, page 11-28).
Traduction intégrale / Build
Nouvelle traduction de tous les fichiers appartenant au programme SPS
et liaison de ces fichiers par link.
Si une erreur survient ou si la touche <Esc> est activée, la traduction sera
interrompue.
Fig. 11-25: Traduction intégrale / Build
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-28 Système global
Guide de programmation SPS - 18VRS
Modifications online
Si un programme fonctionne sur la commande (ETAT = 1), la possibilité
est alors donnée de procéder à des modifications online. L'opération de
modification n'englobe toujours que le réseau actuel et elle est déclenchée via la ligne de pied '0 – Online Edit, sur le réseau existant. En activant la touche <Enter>, il est en outre possible d'insérer un nouveau réseau ou d'effacer un réseau via <Ctrl>+<Y>.
Le réseau en cours de traitement est exclu de l'affichage d'état et repris
dans le mode Edit.
Une déclaration a posteriori d'identificateurs n'est actuellement pas encore permise.
Le curseur ne peut se déplacer que sur le réseau.
La procédure de modification est déclenchée par activation de la combinaison de touches <Ctrl>+<F9>.
Si on active la touche <Esc>, le système demande si la modification doit
être transmise ou non à la SPS ou si on désire que la modification soit
poursuivie dans le segment actuel.
N.B.
Si la gestion des segments est active (Options/Compilateur),
seul le réseau modifié sera traduit et transmis, si la gestion est
inactive tout le fichier actuel sera complètement traduit et
transmis.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-29
11.5 Mise en route / Démarrage
Cette option du menu contient le chargement du programme SPS traduit
et lié avec démarrage consécutif et aides fondamentales à la mise en
route.
Programme → Commande
<Ctrl>+<F9>
Reset Commande
Simulation IO
On/Off
Affichage d'état On/Off
<Shift>+<F9>
Variables à plusieurs éléments
<Shift>+<F3>
Etapes actives
Transitions actives
Actions actives
Observer On/Off
<Ctrl>+<F8>
Ajouter
<Ctrl>+<F7>
Evaluer/Modifier
<Ctrl>+<F4>
Chargement de l'ensemble du programme dans la commande
Reset de toute la commande,
valable seulement après erreur de système
Activation / Désactivation des réseaux contenus dans Edition/Simulation IO.
Activation / Désactivation de l'affichage d'état
Affichage de variables à plusieurs éléments
Tableaux d'exécution Etapes
Tableaux d'exécution Transitions
Tableaux d'exécution Actions
Activation / Désactivation de Etat des variables contenues dans la liste Observer.
Addition d'une autre variable dans la liste Observer
Affichage de la valeur et modification unique de variables.
Fig. 11-26: Menu Mise en route
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-30 Système global
Guide de programmation SPS - 18VRS
Programme →Commande <Ctrl>+<F9>
Cette option de menu permet le chargement et le démarrage du programme avec mot de passe valide, après traduction de l'ensemble du
programme.
Le déclenchement du téléchargement est possible à partir de chaque
niveau FB et FK à l'intérieur du programme SPS. Le passage est alors
effectué dans le mode 'Etat'.
Alternativement à la sélection via le menu principal <F10>, il est également possible d'utiliser le raccourci clavier <Ctrl>+<F9>
Si le système de programmation constate qu'un état de traduction actuel
n'existe pas encore, une 'traduction des fichiers nécessaires' (Make) sera
alors amorcée automatiquement .
Reset Commande
Le Reset Commande permet une remise à zéro de la commande après
une erreur de système.
Si une erreur de système n'existe pas, cette commande sera ignorée.
Affichage d'état <Shift>+<F9>
Cette option du menu permet la déconnexion de l'affichage d'état avec
passage au mode Edit (Nom utilisateur / mot de passe doivent être disponibles) ou au mode Affichage.
Si le programme n'a pas été modifié, il est toujours possible dans les
deux cas de retourner à l'affichage d'état. L'affichage d'état offre à l'utilisateur l'image habituelle connue dans les éditeurs pour le programme
actuel.
La ligne de pied active permet alternativement à l'affichage d'état
<Shift>+<F9>:
• de déconnecter l'affichage d'état et de passer dans le mode Edit. (Mot
de passe!)
La SPS continue alors à fonctionner avec l'ancien programme tandis
que l'utilisateur effectue déjà des modifications dans le nouvel état.
• d'afficher des variables / d'afficher la valeur de variables.
Variables à plusieurs éléments <Shift>+<F3>
Pour les variables à plusieurs éléments (ARRAY, STRUCT, STRING), on
a via cette option de menu ou via le raccourci clavier <Shift>+<F3> la
possibilité de faire apparaître une fenêtre affichage avec la structure interne des variables.
Avant d'ouvrir cette fenêtre, le curseur doit être positionné sur la variable
désirée. Si le curseur n'est pas pointé sur une telle variable, une fenêtre
s'ouvrira pour l'introduction du nom.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-31
Fig. 11-27: Sélection d'une variable à plusieurs éléments (Type de données micrologiciel, structure)
Fig. 11-28: Affichage d'une variable à plusieurs éléments
Avec les structures ou tableaux à imbrications multiples STRING compris, il est nécessaire de limiter la quantité de données affichées directement et de sélectionner des éléments séparés.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-32 Système global
Guide de programmation SPS - 18VRS
Fig. 11-29: Indication de la position d'un élément de tableau
Dans le cas des tableaux multidimensionnels, on ne peut afficher que des
colonnes séparées (sélectionnables).
Etapes, Transitions, Actions actives
Les fenêtres peuvent être ouvertes alternativement, elles se recouvrent.
Ces fenêtres affichent l'ordre actuel dans lequel sont exécutées les étapes, transitions ou actions. Les fenêtres sont conservées même en cas
de passage vers un autre éditeur et sont actualisées.
Le passage entre éditeur et fenêtre d'affichage s'effectue avec la touche
<F4>.
Fig. 11-30: Tableau des transitions dans l'éditeur SFC
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-33
Observation de variables
Observer on/off
<Ctrl>+<F8>
Activation et désactivation de la fenêtre Observer (après désactivation les
variables enregistrées sont conservées dans la fenêtre).
Ajouter
<Ctrl>+<F7>
Entrée des variables désirées dans la fenêtre d'entrée en les ajoutant aux
autres dans la fenêtre Observer.
IL EST PREFERABLE D'UTILISER:
le curseur en le positionnant sur la variable, puis:
activer <Ctrl>+<F7>
la variable est alors insérée dans la fenêtre Observer.
Edition de liste
<Insert>
Insertion d'une nouvelle variable
<Delete>
Effacement de la variable actuelle
<Enter>
3-Mémoriser
Copie du nom actuel de la variable dans la fenêtre d'entrée
Archivage de la liste complète
4-Charger
Chargement d'une liste archivée
5-Effacer
Effacement d'une liste archivée
<Esc>
Fin de l'édition de liste
Grâce à la fonction Observer, il est possible d'examiner la valeur de variables
en cours d'exécution du programme indépendamment de l'éditeur actuel.
Il est possible d'entrer des variables symboliques et absolues à un élément
comme des variables STRING .
Si l'une des variables indiquées existe dans le programme chargé, la valeur numérique de cette variable est immédiatement affichée après son
entrée, dans la fenêtre Observer
Si la variable n'existe pas, le texte:
’ identificateur inconnu’
sera alors affiché
Fig. 11-31: Observation de variables
Dans le cas de l'utilisation de programmes avec blocs fonctionnels sousjacents, il est possible d'afficher des variables à partir de toutes les unités
utilisées dans le programme (également des unités utilisées seulement
localement dans FB). Dans ce contexte, ces variables sont, conformément à la disposition dans la structure de programme SPS, qualifiées en
supplément avec tous les noms d'utilisation des FB supérieurs.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-34 Système global
Guide de programmation SPS - 18VRS
Le format d'affichage de la valeur des variables (binaire, octal, décimal,
hexadécimal) peut être (séparé par une virgule) défini séparément pour
chaque variable en indiquant le système numérique (2/8/10/16, S pour
structures, y compris le nom des éléments de structure).
Le format standard est hexadécimal. En supplément, le type est affiché
pour chaque variable.
Dans la fenêtre Observer, il est théoriquement possible d'entrer un nombre de variables supérieur à celui des variables visibles. Ceci est judicieux, puisque la liste mémorisée peut également être utilisée pour l'analyse logique (diagnostic).
Evaluer/Modifier <Ctrl>+<F4>
La forme la plus simple pour influencer une variable est représentée par
la possibilité d'intervenir une fois sur la valeur de cette variable.
(Combinaison de touches <Ctrl>+<F4>)
L'appel s'effectue via:
⇒ Sélection de la variable désirée au moyen du curseur, puis
⇒ avec la combinaison de touche <Ctrl>+<F4>
modification du nom de la variable.
⇒ Confirmation avec <Enter>
Type et valeur actuelle sont affichés.
La valeur actuelle peut être réécrite avec une nouvelle valeur (appropriée
au type).
Fig. 11-32: Intervention unique pour influencer des variables
Nouveau dans Version 18
En utilisant des variables système, le forçage d'action (voir Chapitre 7) est
toujours possible et le forçage d'étapes en mode manuel permis (voir
Chapitre 6).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-35
11.6 Menu Diagnostic
Les fonctions suivantes qui se trouvent dans le menu Diagnostic viennent
compléter le menu Mise en route.
Messages diagnostic
Alarme SPS
• Affichage global d'erreurs de système et diagnostics
• Avertissement si Simulation IO est sur On
• Avertissement en cas de ErrorFlg=TRUE
• Avertissement en cas de déconnexion d'éléments enfichables, postes,
boucles
Information SPS
• Temps de cycle
• Mémoire SPS disponible
• Informations sur le programme se trouvant dans la SPS
• Informations sur le programme se trouvant sur le support de stockage
(archive) de la SPS
Information projet
• Données du projet chargé
• Commande cible
• Mémoire de données utilisée
• Composants de commande utilisés Boucles, FB/FK/Registres d'horloge
Analyse logique
• Analyse logique assistée par évènement
Messages diagnostic
Les erreurs de système CNC sont affichées avec un texte bref dans la
ligne supérieure de la boîte. L'option de menu permet ensuite l'affichage
d'un message erreur plus détaillé.
Fig. 11-33: Menu Diagnostic, spécial: Messages de diagnostic
Si on utilise la fonction Messages de diagnostic (accessible le plus facilement
par la fonction <F10>, une brève explication sur l'erreur actuelle apparaît alors
(dans la mesure où la CNC supporte cette possibilité).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-36 Système global
Guide de programmation SPS - 18VRS
Après validation, le menu affiche les messages de diagnostic sur la commande. S'il n'y a pas d'erreur, seuls les messages de diagnostic seront émis.
Alarme SPS
Cette option de menu fournit des informations complémentaires sur:
• l'état de la Simulation IO (ON ou OFF)
Si la simulation IO est allumée, un avertissement est émis.
• le niveau des erreurs du projet
Le système affiche l'ErrorFlg du programme et en supplément, si l'utilisateur se trouve dans un FB/FK, ErrorFlg, ErrorNr, ErrorTyp du fichier chargé actuellement.
Un avertissement est émis si une erreur apparaît (ErrorFlg=TRUE).
• Etat de la gestion IO en général:
un avertissement est également émis lorsque des éléments enfichables, des postes ou des boucles entières sont déconnectés.
Information SPS
Cette option de menu comprend une courte information sur le système
SPS au moment actuel.
Fig. 11-34: Information SPS
Temps de cycle
Le procédé de traduction supporté par le compilateur entraîne des différences réelles du temps de traitement, d'actualisation de sorties en actualisation de sorties.
Le temps de traitement dépend par exemple du nombre de transitions
actives, du nombre d'étapes actives, de la profondeur d'imbrication des
blocs fonctionnels, entre autres nombreux facteurs possibles.
Si on utilise cette fonction (au mieux via la touche fonction <F10>), on fait
apparaître le temps de cycle minimal apparu jusqu'à présent, le temps de
cycle actuel et le temps de cycle maximal apparu depuis le démarrage du
programme.
Le temps de cycle minimal peut dans le cas de programmes relativement
importants être considérablement plus faible que le temps de cycle actuel
ou maximal.
C'est ainsi par exemple que l'indication '2ms' (en fait il faudrait dire inférieur à 2 ms) peut être réduite à quelques actions à exécuter dans l'étape
initiale ou à une étape d'attente sans action active.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-37
Guide de programmation SPS - 18VRS
On peut partir du principe que toutes les sections du déroulement de process ne se comportent pas de la même façon critique par rapport au
temps si bien que dans chaque section seul le temps de cycle actuel doit
être inférieur au temps de cycle admissible.
Mémoire
Matériel
Version micrologicielle
On obtient ici des informations sur la mémoire disponible et la mémoire
encore disponible dans la SPS.
Affichage de
• Désignation de l'appareil
par ex.MTC200-R, MT-CNC, ISP200-R
• Composants 1 (SPS)
par ex. MTS-P, MPU, MTS-R
• Composants 2 (CNC)
par ex. MTC-P, MPU, MTS-R
Indication de la version micrologicielle de la SPS
Programme dans Commande
Affichage du nom de l'installation, du programme, de la longueur du programme, date de création, heure, nom de l'utilisateur, date de chargement et heure ainsi qu'état de la gestion des segments.
Programme archivé dans la SPS
Affichage du nom de l'installation, du programme, de la longueur du programme, date de création, heure, nom de l'utilisateur, date et heure du
chargement du programme archivé dans la SPS.
Information projet
Fig. 11-35: Informations sur le projet qui se trouve dans l’ordinateur
Sous cette option de menu, des informations sont disponibles sur le projet actuellement chargé (programme avec les blocs fonctionnels, fonctions et types de données utilisés). Les données sont obtenues à partir de
la traduction (fichiers nécessaires <F9> ou traduction intégrale). Un couplage avec la commande ou un chargement du programme dans la
commande <Ctrl>+<F9> ne sont pas nécessaires dans ce contexte.
Projet chargé
Affichage des informations (nom du projet), numéro de l'installation SPS,
nom du programme, longueur totale du projet, dernière modification le
(avec classement séparé en fonction de la date et de l'heure) et affichage
de la gestion des segments (options/paramètres du compilateur).
Commande cible
Ici sont affichées les commandes INDRAMAT sur lesquelles le projet
actuel peut fonctionner. (Les FB micrologiciels, FK micrologicielles ou
types de données micrologiciels utilisés et non implémentés sur les
commandes entraînant ici une limitation)
Mémoire de données utilisée
Toutes les SPS INDRAMAT utilisent une gestion mémoire dynamique,
c'est-à-dire que la commande met, en fonction du type, la mémoire cor-
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-38 Système global
Guide de programmation SPS - 18VRS
recte demandée à disposition. La valeur affichée est respectivement arrondie à n*8 octets. (Exception: pour 0 octet, 8 octets sont également
affichés) L'affichage commence avec les variables à adressage absolu
dans la zone VAR...END_VAR, ou VAR RETAIN...END_VAR.
Ensuite sont affichées les variables binaire et autres variables BYTE-,
WORD-, INT- ....affectées par le compilateur dans la zone
VAR…END_VAR .
qui sont suivies par les variables binaires et autres variables BYTE-,
WORD-, INT- ....affectées par le compilateur dans la zone VAR RETAIN…END_VAR..
En conclusion, on trouve la place de mémoire nécessaire pour les chaînes
de caractères (STRING).
Composants de commande
utilisés
Nombre de FB/FK définis par utilisateur:
Nombre des différents
FB et FK, le nombre des
appels de chaque
FB/FK étant libre.
Nombre des registres d'horloge utilisés:
Nombre des paliers
temporels utilisés au
total et des actions
évaluées dans le temps.
Variables Entrée/Sortie boucle 1 PLC:
Type de la boucle et
nombre des octets
entrée et sortie
(éléments enfichables)
qui sont utilisés dans la
boucle1
D'autres boucles jusqu'à un nombre maximal de 4 externes et 4 internes peuvent être validées.
Analyse logique
La fonction Analyse logique permet l'enregistrement des modifications
d'état des variables utilisées dans le programme.
Elle utilise et engendre deux fichiers:
Liste de variables
Fichier de protocoles
•
La liste de variables comprend
les noms complets des variables
à analyser.
Les valeurs d'analyse sont archivées
dans ce fichier. Il peut être mémorisé
et chargé plus tard.
•
Elle peut être créée dans l'option
de menu ‘DEMARRAGE / OBSERVER’ (voir Chap. ‘Observation de variables’, Page 11-32)
puis chargée ici, ou bien
par entrée directe du nom des
variables.
(0-Edit avec ETAT = On,
voir
Fig. 11-32: Intervention unique
pour influencer des variables)
•
•
•
Les protocoles peuvent être enregistrés et affichés sous différents modes.
La fonction zoom permet à l'utilisateur un agrandissement des parties qui
l'intéressent.
L'analyse doit être déclenchée et évaluée dans l'interface de programmation SPS. Les interfaces de programmation SPS ou la déconnexion de
l'ordinateur sont possibles en cours d'analyse.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-39
L'établissement du protocole peut s'effectuer conditionnellement, c'est-àdire que l'enregistrement peut être déclenché avec indication d'une condition de déclenchement (trigger).
Accès à l'éditeur de protocoles
Le travail dans l'éditeur de protocoles peut s'effectuer soit avec la liste de
variables dressée (DEMARRAGE / OBSERVER, voir Chap. ‘Observation
de variables’, Page 11-32) ou démarrer par entrée directe du nom des
variables.
L'entrée directe présuppose qu'un programme est en fonctionnement sur
la SPS et la présence du mode ETAT.
Fig. 11-36: Entrée / Modification de variables dans la liste de variables actuelle
Edition de liste
<Insert>
Insertion d’une nouvelle variable
<Delete>
Effacement de la variable actuelle
<Enter>
3-Mémoriser
Copie du nom de la variable actuelle dans la fenêtre d'entrée.
Archivage de la liste complète
4-Charger
Chargement d'une liste archivée
5-Effacer
Effacement d'une liste archivée
<Esc>
Fin de l'édition de liste
Représentation du protocole
Le protocole comprend au maximum 8 variables sous la forme d’un graphe en ligne. Les noms des différentes variables sont affichés les uns en
dessous des autres sur le côté gauche de l'écran en en-tête du protocole.
Variables binaires
sont affectées de '0' ou '1'.
Variables numériques
La valeur correspondant à la position du curseur est affichée dans l'entête du protocole.
Graphe en ligne
Ce graphe indique en supplément la valeur '= 0' et 'supérieure à 0' pour
les variables numériques. Si le protocole dépasse les limites de l'écran, il
est possible de se déplacer par déroulement latéral. Pour ce faire, il faut
déplacer la barre de défilement latéral au moyen des touches de direction
du curseur de défilement. L'en-tête du protocole n'est pas modifié par le
déroulement.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-40 Système global
Guide de programmation SPS - 18VRS
Fig. 11-37: Protocole terminé avant le début du nouvel enregistrement
(l'écran est vide lorsqu'un protocole terminé existe)
Instructions de pied de page
Démarrage de l'enregistrement
Lors du démarrage de l'enregistrement, la liste de variables est transférée
dans la SPS. C'est là et uniquement là qu'est dressé le protocole. La communication est ainsi beaucoup plus simple.
L'enregistrement commence immédiatement après déclenchement de la
fonction avec les options définies ou prédéfinies.
L'état de l'enregistrement est affiché sur le PC par une flèche mobile.
Lorsque le protocole est complet dans la SPS, c'est-à-dire lorsque le
nombre défini des inscriptions est atteint ou lorsque l'enregistrement est
terminé, le protocole est alors chargé dans le PC et affiché sous forme
formatée conformément à la base temporelle définie.
Si le mode d'enregistrement a été défini comme étant réitératif, un nouvel
enregistrement est immédiatement amorcé.
Avec les touches de direction, il est possible de déplacer le protocole.
Une conversion du formatage est possible avec une nouvelle base temporelle.
Après démarrage de l'enregistrement, on peut quitter la fonction Analyse
logique.
Lorsque le protocole est complet dans la SPS, un message apparaît indiquant:
Protocole complet
et le système attend alors une validation avec une touche quelconque.
Lors de l'accès suivant dans l'éditeur de protocoles, ce protocole sera
affiché.
Fin de l'enregistrement
L'enregistrement dans la SPS est terminé et le protocole enregistré jusque
là est affiché. On peut alors mettre fin au protocole lorsque la condition de
déclenchement est donnée ou si le nombre d'inscriptions sélectionné est
trop important.
Un nouveau redémarrage d'enregistrement peut alors suivre.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-41
Guide de programmation SPS - 18VRS
Mémorisation d'un protocole
Si un protocole se trouve dans l'éditeur, il peut être mémorisé sous un
nom choisi librement.
Chargement d'un protocole
Un nombre quelconque de protocoles peut être lu dans l'éditeur de protocoles (même s'il s'agit de protocoles établis dans d'autres sources SPS).
L'affichage s'effectue avec la base temporelle sélectionnée en dernier.
Une conversion de formatage est toujours possible.
N.B.
La liste de variables actuelle est surchargée par la liste contenue dans le protocole.
Mise au point de la base
temporelle
Fig. 11-38: Sélection de la base temporelle
Comme l'établissement de protocole dans la SPS est piloté en fonction des
évènements, les inscriptions dans le protocole ne sont pas effectuées suivant une grille temporelle fixe.
Pour pouvoir effectuer une linéarisation sur un axe temporel, il faut sélectionner une base temporelle pour la plus petite unité représentable. Dans la
figure représentée ci-après, on a sélectionné en tant que plus petite unité
une base temporelle de 1000 ms.
Fig. 11-39: Affichage du protocole – Base temporelle 1000 ms
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-42 Système global
Guide de programmation SPS - 18VRS
Si aucune base temporelle n'a été choisie ( 0 – aucune), un diagramme
d'impulsions avec une modification d'affectation par cycle est alors affiché. Dans l'en-tête du protocole, le temps de l'entrée se trouvant sous le
curseur (voir ci-dessus) est alors affiché.
Si la valeur d'une variable se modifie plusieurs fois à l'intérieur de la grille
temporelle, la valeur de la variable pour cette grille temporelle est alors
représentée par un champ plein ('¦') comme étant non déterminée.
Si pour des raisons de place de mémoire, le protocole ne peut pas être
représenté sous une base temporelle sélectionnée, le message d'erreur
suivant sera alors émis:
'Mémoire insuffisante, sélectionner une base temporelle plus grande'
La mémoire temporelle '10ms' permet dans ce contexte une résolution
jusqu'aux différents pics de tension aux sorties.
Nombre d’enregistrements dans
le protocole et position du point
de déclenchement
Fig. 11-40: Nombre d’enregistrements dans le protocole et position du point de
déclenchement
La définition est possible par entrée directe des valeurs numériques ou
par déplacement de la marque sur la barre.
Pour passer d'un champ à l'autre de la boîte, il faut utiliser les touches
<CursorUp>, <CursorDown> ou <Tab>.
L'établissement d'un protocole dans la SPS est effectué en fonction des
évènements, c'est-à-dire qu'un enregistrement dans le protocole n'est
effectué que si la valeur de la variable à protocoler s'est modifiée ou si la
condition de déclenchement Marqueur %M0.0 est apparue.
Ce mode d'établissement de protocole garantit une sollicitation minimale
de la mémoire si les enregistrements couvrent une longue période tout en
minimisant le temps nécessaire au transfert de données entre SPS et PC.
La position du trigger peut être définie en continu.
Les valeurs 200 ou 100 sont prédéfinies de façon standard
Si la place dans la SPS n'est pas suffisante pour protocoler le nombre d'enregistrements défini, ce nombre est alors limité automatiquement au nombre maximal possible. La position du trigger est corrigée en fonction de
cette limitation.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-43
Guide de programmation SPS - 18VRS
Mode d’enregistrement
Fig. 11-41: Mode d’enregistrement
En mode d’enregistrement, on peut choisir entre enregistrement unique et
enregistrement réitératif.
Si on a choisi le mode réitératif, le système procède automatiquement à
un nouvel enregistrement dès que le protocole est terminé. Dès que le
nouvel enregistrement est terminé, l'ancien protocole est alors rejeté.
Touches de direction et touches
particulières
Menu local
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
En supplément aux instructions énumérées pour le pied de page, l'éditeur
reconnaît les touches suivantes pour un déplacement du curseur.
• <CursorLeft>
Curseur de défilement pour sauter d'une colonne
vers la gauche.
• <CursorRight>
Curseur de défilement pour sauter d'une colonne
vers la droite.
• <PageUp>
Curseur de défilement pour sauter d'une colonne
vers la gauche.
• <PageDown>
Curseur de défilement pour sauter d'une page
vers la droite.
• <Home>
Curseur de défilement pour aller au début du
protocole
• <End>
Curseur de défilement pour aller à la fin du
protocole
Comme tous les autres éditeurs, l'éditeur de protocole dispose d'un menu
local accessible via la combinaison de touches <Alt>+<F10>.
11-44 Système global
Guide de programmation SPS - 18VRS
Fig. 11-42: Menu local, éditeur de protocole
Effacement du protocole
L'éditeur de protocoles conserve en mémoire le protocole actuel sous la
forme comprimée d'environ 5 Ko de l'enregistrement piloté en fonction
des évènements, même lorsqu'on quitte la fonction Analyse logique.
Lorsqu'on accède à nouveau dans l'éditeur, le protocole actuel est immédiatement affiché.
En cas de problème de place de mémoire, ces 5 Ko peuvent être récupérés
en effaçant le protocole.
La mémoire beaucoup plus importante allouée pour la représentation
formatée du protocole est toujours entièrement libérée lorsqu'on quitte
l'éditeur de protocoles.
Instructions bloc
Le menu bloc est directement accessible via le raccourci clavier
<Ctrl>+<K> .
• <Ctrl>+<K><A>
Début de bloc
• <Ctrl>+<K><B>
Fin de bloc
• <Ctrl>+<K><1>
Définir marque 1
• <Ctrl>+<H><K>
Désactiver / activer bloc
Lors de représentations avec allongement important (faible base temporelle), il est judicieux de poser une marque dans le protocole à titre
d'orientation.
Sa position est affichée sur la barre position dans la couleur de la marque.
Par ailleurs, si une marque a été posée, la valeur absolue du temps différentiel entre marque et position actuelle du curseur est calculée dans l'entête du protocole relatif à l'information temporelle.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-45
Guide de programmation SPS - 18VRS
Fig. 11-43: Préparation du ZOOM par marquage de bloc dans la zone voulue
Le marquage d'un bloc est une condition préliminaire au zooming, c'est-àdire à l'agrandissement avec la LOUPE d'une zone marquée à l'échelle
temporelle désirée (max. 2ms). Le zooming est applicable plusieurs fois.
Instructions Quick
Le menu Quick est directement accessible via le raccourci clavier
<Ctrl>+<Q>….
• <Ctrl>+<Q><S>
Curseur vers le bord gauche (comme <Home>)
• <Ctrl>+<Q><D>
Curseur vers le bord droit (comme <End>)
• <Ctrl>+<Q><P>
Curseur vers la dernière position
• <Ctrl>+<Q><T>
Curseur vers le trigger
• <Ctrl>+<Q><1>
Curseur Saut vers la marque 1
11.7 Menu projet
Les fonctions appartenant à cette option de menu sont des fonctions générales.
Documentation
Strukture <Alt>+<F4>
Affectation IO <Alt>+<I>
Archivage
Regroupement et impression des composants de la documentation,
Création d'un texte de pied de page pour la documentation
Structure du programme actuel
Appel de l'éditeur IO
Archivage sur un support de stockage, récupération, gestion des archives
pour données, projets et groupes de données (nouveauté à partir de la
Version 4,17)
Archivage, récupération et effacement des données RETAIN émanant de
la commande.
Archivage des commentaires
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Extraction / réinsertion de commentaires (lors de traduction)
11-46 Système global
Guide de programmation SPS - 18VRS
Fig. 11-44: Menu projet
Documentation
L’interface de programmation SPS permet la documentation des programmes SPS à trois niveaux:
1. Documentation dans l'editeur séparé actuel <Alt>+<P>
(voir ‘Menus locaux’ des éditeurs)
2. Documentation du fichier de travail qui est chargé actuellement.
3. Documentation de l'ensemble du programme avec FB/FK/TY utilisés.
Par ailleurs et en supplément, une documentation des programmes SPS
est également possible à partir de l'interface CNC. La fenêtre de sélection
de base est identique pour les points 2 et 3 et elle est explicitée ci-après.
Pour le point 1, elle est réduite au minimum nécessaire.
Ensemble de la documentation
Les options de menu suivantes permettent, en outre, d'exercer une influence sur le contenu de la documentation:
Paramètres généraux
Représentation des adresses de variables absolues avec I/Q ou E/S, soit
%E1.1.3 au lieu de %I1.1.3 et inversement. En remplacement reprise du
commentaire de déclaration dans l'implémentation, pour le cas où il n'existe
pas de commentaire d'implémentation.
Paramètres de l'écran
Dimension des éléments LD/FBD, Type de la représentation des commentaires
Projet/Renvoi
Prédéfinition des critères de triage
Le regroupement des composants de la documentation est effectué dans la
fenêtre de sélection représentée ci-après.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-47
Guide de programmation SPS - 18VRS
Fig. 11-45: Fenêtre de sélection pour documentation de l'ensemble du programme
Sous les différentes options de sélection, il est possible de choisir les
paramètres préliminaires suivants:
Composants
Sommaire
Affectation E/S
Liste d'importation
Arbre importation
Déclaration
Renvoi
Organigramme séquentiel
Transitions
Etapes
Implémentation/Actions/
(des chapitres imprimés!)
(Tableau IO des postes connectés)
(Editeur importation)
(Structure de PR/FB/FK/TY)
(Editeur de déclaration, prédéfinissable!)
(Liste de renvoi, prédéfinissable!)
}
}
} si existantes dans fichier
Simulation IO
Données de process
Commentaires
}
}
Impression supprimée des
commentaires de variables sous les
réseaux
Alternativement, il est possible de définir les langages de la documentation
Documentation en
( ) Langage initial
(*) LD
( ) FBD
( ) IL
(langage des entrées)
Si une conversion dans les langages désirés sus-mentionnés n'est pas
possible, il est possible d'utiliser en remplacement le langage suivant:
Langage de substitution
(*)langage initial (langage dans lequel les entrées ont été effectuées)
( ) IL
Lignes de pied de page
L'utilisateur a la possibilité de définir lui-même des textes en pied de page
ou de sélectionner des fichiers de texte de pied de page déjà existants
(Bouton Lignes de pied de page dans la fenêtre ou option de menu 'Projet/Documentation/ligne de pied de page).
La sortie directe de la documentation peut s'effectuer sous la forme d'un
fichier d'impression (nom du fichier et lecteur\répertoire peuvent être
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-48 Système global
Guide de programmation SPS - 18VRS
choisis librement) ou bien directement sur imprimante (interface de l'unité
de sortie et type d'imprimante peuvent être choisis librement).
Unité de sortie
Nom de fichier
Type d'imprimante
Lignes de pied de page
Installer
(*) Fichier
Caractères ASCII et caractères de contrôle
imprimante, 120 caractères par ligne
( ) LPT1...LPT3
Sortie directe via pilote adjacent
Nom du fichier impression, dérivé de façon standard du nom du fichier
actuel, définissable via entrée directe ou fenêtre history.
LASER90
DRUCK60
PCL100
Elles permettent de passer entre les différents textes de pied de page
rédigés par l'utilisateur.
mémorise les paramètres prédéfinis pour d'autres opérations
Textes de pied de page
Fig. 11-46: Création de fichiers de texte de pied de page par l'utilisateur.
Pour l'édition d'un texte de pied de page, il faut entrer le nom désiré.
Pour un nouveau texte, on entre tout d'abord dans une boîte où le contenu d'un texte standard est affiché. Ensuite on peut modifier ce texte.
L'édition est supportée par Instructions ‘#’ par fenêtre de sélection
#_VPARAMETER___________#
Nom du fichier
(actualisé automatiquement)
#_DATE__#
Date actuelle
#_TIME_#
Heure actuelle
#_FDATE__#
Date de la création du fichier
#_FTIME#
Heure de la création du fichier
#_P#
Numéro de la page
La longueur proposée tient compte du nombre maximal possible de caractères.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-49
Guide de programmation SPS - 18VRS
Structure , Structure de programme <Alt>+<F4>
La structure de programme <Alt>+<F4> est le centre de toutes les opérations
de chargement, en cas de changement de fichier de travail, de traduction et
de chargement dans la SPS etc.
Après mise en place de la structure, il est possible d'accéder à chaque fichier
utilisateur sous n'importe quel mode de fonctionnement Si on active ensuite le
raccourci clavier <Alt>+<F4>, il est possible de se déplacer à n'importe quel
endroit du fichier.
Le curseur bloc doit être utilisé pour le fichier désiré.
Si on active <Ctrl>+<Enter>, le passage à ce fichier s'effectue dans le
menu édition
Abréviations utilisées:
FB
Bloc fonctionnel utilisateur
fb
Bloc fonctionnel micrologiciel
Fb
Bloc fonctionnel protégé
FK
Fonction utilisateur
fk
Fonction micrologicielle
Fk
Fonction protégée
TY
Type de données
utilisateur
ty
Type de données
micrologiciel
Ty
Type de données,
protégé
Fig. 11-47: Structure de programme
Ci-après, on a procédé à une interprétation de la structure.
Explications:
fb TON
TIMER
FB micrologiciel-FB TON,
Nom d’affectation TIMER
FB CLOCK ----- fb TON
clock1
TIMER
FB CLOCK ----- fb TON
clock2
TIMER
Fb OVGY0_00
FB utili.CLOCK, utilisé deux fois
Nom d'affectation 1: clock1
Nom d'affectation 2: clock2
chaque affectation a les mêmes
FB/FK.utilisés..
FB protégé OVGY0_00,
Aucun nom d'affectation,
c'est-à-dire seulement importé, non déclaré,
Les fonctions n'ont pas de nom d'affectation étant donné qu'elles ne possèdent pas de variables internes (statiques).
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-50 Système global
Guide de programmation SPS - 18VRS
Via les instructions de pied de page, il est possible:
• de commuter du mode ETAT à EDIT/AFFICHAGE et
• d'inhiber l'affichage des blocs fonctionnels micrologiciels et fonctions
micrologicielles.
ATTENTION
Si, dans le cadre d'un tel projet, il n'est plus possible de
retrouver certains FB ou certaines FK ou encore certains
TY (à la suite par exemple d'un effacement par inadvertance), le nom de ces FB,FK ou TY sera alors affiché en
couleur à la place correcte dans la structure. FB,FK,TY
doivent alors ou être recréés ou bien regénérés à partir
d'un projet antérieur.
Un menu local, appelable par le raccourci clavier <Alt>+<F10> est par
ailleurs implémenté dans la représentation de la structure. Cette structure
de programme comprend les points suivants:
Imprimer
<Alt>+<P>
Instructions Quick
Impression de la structure du programme
Déplacement rapide du curseur dans l'arborescence
Affectation IO <Alt>+<I>
C'est dans cet éditeur qu'est effectuée l'entrée de l'affectation correspondant au programme des postes avec canaux d'entrées et de sorties (éléments enfichables) et leur type ainsi que leur classement en correspondance avec une des boucles.
Pour une représentation plus détaillée, voir:
Editeur IO
→
Chapitre 3
L'affectation IO définie constitue la base de l'utilisation de variables d'entrées et de sorties absolues dans la section déclaration et implémentation, c'est-à-dire que seuls les canaux entrées et sorties convenus peuvent ensuite être utilisés. Une modification ultérieure de cette affectation
après avoir quitté cet éditeur est toujours possible, avec prise en compte
automatique des entrées et sorties déjà utilisées dans la section implémentation ou déclaration, mais elle n'est possible que dans cet éditeur.
Archivage
L'archivage offre la possibilité de stocker certains fichiers, un projet complet ou un jeu de fichiers sélectionné avec leurs commentaires, pour pouvoir ensuite les récupérer à nouveau. (nouveau dans Version 17)
(sur disque dur, disquette, serveur ou s'il s'agit de projets dans la SPS)
Pour l'édition des archives (Effacement/Renommage), on dispose d'un
gestionnaire d'archives (nouveau dans la version 17).
L'archivage des données RETAIN reste possible sans modification.
Fig. 11-48: Option de menu ’Archivage’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-51
Archiver
Fig. 11-49: Archivage de fichiers
Liste de sélection
Archive cible
Définition de l'archive cible (Lecteur ou SPS) L'archive cible qui a été sélectionnée en dernier est conservée lors de l'appel d'archivage suivant.
Champ de sortie
Projet
Affiche le projet dont on a stocké des fichiers. Si ce projet concorde avec
le projet dans la commande, une remarque supplémentaire (actuelle dans
SPS) sera affichée. Si cette remarque n'apparaît pas, cette archive ne
pourra pas être restaurée automatiquement sur l'interface, ceci signifie
qu'après sa récupération, un nouveau téléchargement sera nécessaire.
Champ d'entrée
Nom
Entrée d'un nom d'archive (si archive cible est un lecteur) Dans la liste qui
se trouve en dessous, les archives déjà existantes sur la cible sont affichées. Si on active ici <Space>, l'identificateur actif est alors repris dans
le champ d'entrée Nom. Le paramètre prédéfini est ici le nom du fichier
de travail chargé.
Champ d'entrée
Version
Entrée d'une version (si archive cible est un lecteur) , La version d'un nom
déjà existante sur la cible est affichée dans la liste qui se trouve en dessous. Si on active ici <Space>, l'identificateur actif est alors repris dans le
champ d'entrée Version.
Le paramètre prédéfini est la date actuelle (par exemple 970117).
Liste de sélection
Contenu
Affiche tous les fichiers qui se trouvent dans le projet d'archive; tous les
fichiers contenus dans l'archive étant marqués. De façon standard, le
fichier de travail et tous les fichiers qui y ont été importés, sont marqués.
Avec <Space>, il est possible de marquer/démarquer certains fichiers,
mais l'intégralité des importations n'est alors plus donnée.
La concordance de l'archive avec le projet dans la commande est alors
également désactivée.
Champ de boutons
Connexité
Affiche l'intégralité des importations. Peut être déconnecté avec <Space>
dans la liste du contenu. Si connecté, toutes les importations des fichiers
marqués actuellement seront marquées.
Champ de boutons
Comprimer
Permet de comprimer l'archive. De façon standard sur ON. La compression augmente le temps d'archivage en particulier en cas de Archiver sur
disque dur.
Champ d'entrée de texte
Commentaire
On peut ici entrer un commentaire sur l'archive. De façon standard, le
système reprend le commentaire du projet.
Bouton OK
Démarrage de l'archivage. Si 'Connexité' est OFF, toutes les importations
seront, après demande, redéterminées et marquées. Si des fichiers importés font défaut dans le projet, un avertissement indiquant que l'archive
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-52 Système global
Guide de programmation SPS - 18VRS
est incomplète sera émis. S'il y a concordance avec le programme en
fonctionnement dans la commande, des informations pour la restauration
automatique d'un projet sur l'interface seront également archivées sans
téléchargement (auparavant Archive SPS).
Bouton Interruption
Modifications lors de stockage à
partir du gestionnaire de fichiers
(Option de menu / Gestionnaire
de fichiers
Interruption de l'archivage.
Le contenu dépend du fichier actif ou des fichiers marqués dans le gestionnaire de fichier. Ces fichiers et tous les fichiers qui y ont été importés
sont marqués au début.
Récupérer
Fig. 11-50: Option de menu ‘Récupérer'
Liste de sélection
Source
Définition de l'archive source (Lecteur ou SPS) L'archive source qui a été
sélectionnée en dernier est conservée lors de l'appel d'archivage suivant.
Champ de sortie
Projet
Affiche le projet où les fichiers doivent être copiés. La remarque supplémentaire ‘identique avec SPS’ souligne que l'archive concorde avec le
programme et qu'une restauration automatique sur l'interface de la commande est possible sans téléchargement. Après activation du bouton OK,
la réponse affirmative à la question:
Archive identique avec SPS, voulez-vous restaurer automatiquement?
entraîne le démarrage de la procédure.
Champ d'entrée
Nom
Affiche toutes les archives disponibles (si source est un lecteur). L'archive
source qui a été sélectionnée en dernier est conservée lors de l'appel
d'archivage suivant.
Cham d'entrée
Version
Affiche toutes les versions du nom (si source est un lecteur). La version
qui a été sélectionnée en dernier est conservée lors de l'appel d'archivage
suivant.
Liste de sélection
Contenu
Affiche tous les fichiers qui sont contenus dans l'archive; tous les fichiers
compris dans l'archive étant marqués. De façon standard, tous les fichiers sont marqués. Avec <Space>, il est possible de marquer / démarquer certains fichiers, mais l'extraction de l'archive est alors incomplète.
Si l'archive concorde avec le projet dans la commande, une remarque
supplémentaire sera affichée ici, la concordance est désactivée avec
<Space>.
Champ d'entrée de texte
Commentaire
Commentaire archive qui sera copié en tant que commentaire de projet si
on appuie sur 'OK'
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Bouton OK
Bouton Interruption
Système global 11-53
Démarrage de l'archivage. Un programme existant éventuellement dans
un projet est chargé après récupération correcte; si plusieurs programmes existent, une liste de sélection sera ouverte. S'il y a concordance
avec le projet dans la commande, le projet sera, après requête, automatiquement restauré sur l'interface (auparavant Archive SPS Récupérer)
Interruption de l'archivage.
Modifications lors de la récupération du gestionnaire de fichiers
La cible de l'archivage est le projet affiché dans le gestionnaire de fichiers.
Récupération de
fichiers INDRAMAT
Au moyen de cette option de menu, les fichiers particuliers INDRAMAT
peuvent être extraits séparément, c'est-à-dire fichier par fichier, si le nom a
été défini par <sans>.
Fig. 11-51: Récupération de fichiers INDRAMAT
Gestionnaire des archives
Fig. 11-52: Option de menu 'Gestionnaire des archives'
Fonction
Bouton Effacer
Bouton Renommage
Bouton Interruption
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Le gestionnaire des archives permet la manipulation d’archives complètes, dont entre autre leur surpression et leur renommage. La place d'archivage est définie dans ce contexte en tant que source (elle peut être
également représentée par la SPS) où peuvent se trouver différentes
archives.
Efface l'archive qui se trouve sur le lecteur ou dans la SPS.
Renomme l'archive et/ou la version d'une archive sur lecteur.
Terminer les opérations dans le gestionnaire de fichiers.
11-54 Système global
Guide de programmation SPS - 18VRS
Données RETAIN
Sauvegarder à partir de la SPS
Récupération de données contenues dans le segment rémanent de la
SPS et sauvegarder dans le PC.
Charger dans SPS
Les données sauvegardées dans le PC sont transmises sans contrôle dans
la SPS.
Effacement de l'archive
Les données sauvegardées dans le PC sont effacées.
Archivage des commentaires
Ecriture
Commentaire
Cette option de menu permet d'extraire des commentaires du fichier
chargé et des fichiers utilisés par ce fichier pour traduction. La correspondance des fichiers est alors contrôlée.
L'archivage s'effectue de façon standard sur ..\PRINT\nom fichier.fra en contexte de programmation français
L'extension peut être choisie librement. Les noms des fichiers ne peuvent
pas être influencés.
Après extraction des commentaires, les fichiers ne doivent plus être modifiés.
Lecture
Commentaire
Avec cette option de menu, les anciens commentaires dans les fichiers
sont remplacés par les commentaires traduits.
L'extension des fichiers de commentaires doit autant que possible correspondre au code cible standard du pays.
*.esp, *.fra, *.ger, *.ita, *.usa...
Elle peut toutefois être choisie librement.
Les noms eux-mêmes ne doivent pas être modifiés et doivent correspondre au PR/FB/FK/TY correspondant.
Définir également le langage du système de programmation conformément au nouveau code du pays.
(Des commentaires pour FB, FK et TY standard sont alors extraits de la
la bibliothèque active!)
La correspondance des fichiers est alors contrôlée.
S'il n'existe aucun nouveau commentaire (commentaire traduit) ou si le
fichier a déjà été converti, le système l'ignore lors de l'adaptation.
Si une ou plusieurs lignes de commentaire s'avèrent être trop longues, le
nouveau commentaire peut être manipulé dans une fenêtre additionnelle,
abrégé automatiquement ligne par ligne ou adapté automatiquement pour
tous les autres fichiers.
Alternativement, un fichier archivé en format ASCII peut également servir
de base de traduction.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-55
Guide de programmation SPS - 18VRS
11.8 Options dans le système global
Sous l'option de menu 'Options' sont regroupés les paramètres de prédéfinition du système de programme et des langages de programmation.
Généralités
Sortie acoustique
Sauvegarde automatique
Commentaires de déclaration
Affichage de variables
Représentation de
variables abs.
Définition du langage de
programmation
Redémarrage à la dernière
position d'entrée
Ecran
LD/FBD
Coupure de noms
Coupure de nombres
Couleurs
Traitement des actions
Sorties de test
Variables RETAIN
Gestion des segments
Mémoire
Mot de passe:
Commutation %I/%Q ou %E/%
Fenêtre de sélection// LD/FBD/IL
mémoriser oui/non
Dimension des éléments, commentaire,
respectivement pour mode standard et
représentation succincte
Limitation du nombre de caractères
Limitation du nombre de caractères
Chargement de palettes de
couleurs
Enregistrement de palettes
de couleurs
Installation
Compilateur
Activation / Désactivation du Beep
ON/OFF, à intervalle de x minutes
Reprendre commentaires de
déclaration automatiquement
dans implémentation ON/OFF
Nom symbolique / Adresse absolue
Sélection du type de mémoire
Installation des couleurs des différents
composants
après flanc descendant ON/OFF
Contrôle des doubles affectations pour
adresses absolues ON/OFF
initialiser après téléchargement 1 x
plus petite unité: POU / Réseau
automatique//
Mémoire conventionnelle / disque
Entrée mot de passe utilisateur Validation et effacement du mot de passe
Option 'Généralités'
Fig. 11-53: Fenêtre d'option ‘Généralités’
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-56 Système global
Sortie acoustique
Sauvegarde automatique
Guide de programmation SPS - 18VRS
Cette option permet l'activation et la désactivation du 'Bip'
Cette option permet en commun avec 'Requête lors de la sauvegarde’
la mémorisation automatique de l'état intermédiaire obtenu. (Le fichier
BAK est alors réécrit!).
Sauvegarde automatique:
0
1
Requête lors de la sauvegarde:
Commentaire de déclaration
dans l'implémentation
Sauvegarder de,
60 minutes – Ecart
entre sauvegardes
on / off
Dans les lignes IL sans propre commentaire, le commentaire de déclaration des variables est affiché (conformément à l'éditeur LD sur les variables, voir option 'Ecran' ou dans la fenêtre <Ctrl>+<F6>.
Section déclaration
Liste d'instructions
(par analogie LD/FBD)
Identificateur
AT
relais_1
%Q1.2.3
Repère
Opération
TYPE
:=
Commentaire
(*commentaire de déclaration*)
Opérande
Commentaire
LD
relais_1
(*commentaire de déclaration*)
AND
relais_1
(*commentaire d'implémentation 1*)
AND
relais_1
(*Commentaire d'implémentation 2)
ST
relais_1
(* *)
Le 'commentaire de déclaration' a été défini dans la section déclaration.
Dans la ligne IL 1, aucun commentaire n'a été inscrit si bien que c'est le
commentaire de la section déclaration qui est affiché.
Dans la ligne 2 et 3, un commentaire a été inscrit respectivement dans
chaque ligne IL. Si ce commentaire est effacé de la ligne IL, le commentaire de déclaration repris réapparaît alors automatiquement.
Un commentaire vide est engendré dans la ligne 4 si un caractère espace
a été entré dans la ligne IL.
En LD et en FBD, le commentaire apparaît si le curseur se trouve sur la
variable concernée et si la ligne de pied de commentaire a été activée par
le raccourci clavier <Ctrl>+<F6> ou si le curseur se trouve au-dessus du
nom de la variable quand une place suffisante a été allouée via l'option
'Option/Paramètres de l'écran (commentaire américain).
<Shift>+<F2>
Affichage de variables
symbolique ou absolu
Cette option permet de commuter au niveau 'Programme' entre l'adresse
absolue (si existante) et le nom symbolique des variables.
Représentation de variables
absolues
Cette option de menu permet une commutation à l'intérieur de programmes entre:
%I et %E ou %Q et %A. et inversement (%I1.2.3 ← → %E1.2.3)..
Cette option est également valide dans la documentation.
Sélection du langage de
programmation
Sélection
A chaque appel d'éditeur, le système demande à
l'utilisateur quel devra être langage de
programmation (LD,FBD, IL) utilisé. (fenêtre de
sélection du langage)
LD/FBD/IL
Le langage de programmation défini est
immédiatement sélectionné
lors de l'appel de l'éditeur. La fenêtre de
sélection du langage est alors sans objet.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-57
Guide de programmation SPS - 18VRS
Si la sélection opérée est admissible, on peut alors commuter entre IL/LD
ou FBD.
Si la sélection n'est pas admise, aucune fenêtre de permutation ne peut
apparaître.
Dernière position d'entrée
Lorsqu'on quitte l'interface de programmation, les données nécessaires
pour un nouvel accès sont enregistrées jusqu'à la dernière position d'entrée. Après appel, l'utilisateur se retrouvera à l'emplacement qu'il occupait
lorsqu'il a quitté l'interface.
Option ’Ecran’
Fig. 11-54: Fenêtre d'option ‘Ecran’
Fonction
Zone de paramétrage
Règle les paramètres pour l'affichage dans les éditeurs.
Sélection du jeu de paramètres qui doit être mis au point.
• Diagramme à contacts standard // Diagramme à contacts comprimés
• FBD Standard // FBD comprimé
• Autres éditeurs
Paramètres de mise au point
Colonnes de l'éditeur:
Nombre des colonnes curseur
Largeur de grille:
Nbre de caractères dans 1 colonne
Lignes pour nom:
Nombre de lignes d'un identificateur
Lignes pour
commentaire:
Couper nom:
Nombre de lignes pour commentaire sur
un identificateur
Stratégie permettant de couper un nom
trop long.
Coupure de nombres: Stratégie permettant de couper une/un
valeur/nombre d'état affiché(e).
Documentation
La documentation utilise les jeux de paramètres standard.
Boutons
Ok:
Appliquer
Standard:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Appliquer les paramètres dans les
éditeurs actuels.
les appliquer dans les éditeurs actuels.
sans quitter la fenêtre
Restaurer les paramètres standard de la zone de
paramétrage sélectionnée.
Interruption:
Restaurer les paramètres avant intervention
dans la fenêtre et quitter la fenêtre.
<Ctrl>+<F2>
Sauter entre jeux de données
(LD ↔ LD comprimé)
11-58 Système global
Guide de programmation SPS - 18VRS
Option ’Couleurs’
L'option de menu Couleurs permet de charger, mémoriser et modifier la
palette des couleurs.
Les configurations suivantes peuvent être chargées en tant que palettes
standard:
• Moniteur couleur
color
Ecran VGA
• Hercules
hercules
Ecran Hercules
• Moniteur monochrome
nb
16 nuances de gris
• Notebook
notebook
noir/blanc
Fig.11-55: Fenêtre pour chargement, modification et mémorisation de palettes de
couleurs
Option ’Compilateur’
Fig. 11-56: Fenêtre d'option ‘Généralités’
Suppression du traitement d'action après flanc descendant
N.B.
A partir de la version 18, les actions complexes sont toujours retraitées! (Voir Chapitre 7)
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS - 18VRS
Système global 11-59
Sorties test
Contrôle afin de voir si un accès en écriture est effectué plusieurs fois sur des
variables de sorties (VAR_OUTPUT).
VARIABLE RETAIN
Initialisation unique
Toutes les variables RETAIN sont initialisées une fois au cours du prochain téléchargement. (comme en démarrage à froid!)
Gestion de segments
Si ce bouton est posé, la plus petite unité modifiable est alors le réseau et
non plus un fichier (PR/FB/FK). Lors de modifications online, seul le réseau
modifié et non plus le fichier complet est alors transféré dans la commande
(Réduction des temps de modification).
Cet avantage entraîne cependant des besoins de gestion plus complexes
et par conséquent une faible augmentation du temps de cycle SPS. Si le
temps de cycle doit être minimisé à la fin, avant le paramétrage final de
l'installation, il faut désactiver ce bouton et transférer le programme à
nouveau dans la commande après traduction intégrale.
Option 'Mémoire'
A partir de la version 16, l'interface de programmation SPS est livrée en
version DPMI.
Il n'y a ainsi plus qu'une mise au point:
'Mémorisation automatique/conventionnelle'
Si après démarrage du programme, le système passe à la mise au point
'Mémorisation sur disque'
⇒ Modifier la mise au point suivant 'Mémorisation
que/conventionnelle'
⇒ Quitter l'intervalle et relancer le programme
automati-
Si le système est à nouveau sur 'Mémorisation sur disque',
⇒ Contrôler si le paramétrage de l'autoexec.bat ou config.sys a été modifié et si la mémoire XMS disponible est suffisante
Le Chapitre 'Consignes d'installation pour le système de programmation,
page 11-7 comprend des informations assurant un paramétrage préliminaire adéquat.
Fig. 11-57: Fenêtre d'option ‘Mémorisation’
L''opération suivante est réalisée:
Le système est paramétré sur 'automatique' De cette façon, le système
de programmation peut fonctionner sur chaque ordinateur.
⇒ Mémoriser
⇒ Quitter l'interface de programmation SPS <Alt>+<X>,
⇒ Relancement <F8>
La modification est ensuite active.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-60 Système global
Guide de programmation SPS - 18VRS
Option 'Fenêtres'
Fig. 11-58: Fenêtres, passage entre fenêtres
Liste de fenêtres
<Alt>+<0>
La liste de fenêtres permet de survoler toutes les fenêtres ouvertes de
l'éditeur et de l'affichage Le passage à une autre fenêtre déjà ouverte
s'effectue par préréglage avec curseur de défilement et <Enter>.
Par ailleurs, il est également possible d'effacer des fenêtres actives.
Taille/Position
<Ctrl>+<F5>
Change haut/bas
<F4>
Déplacement de la position de fenêtres sélectionnées
• <Ctrl>+<F7>
Ajouter (Entrée Watch)
• <Ctrl>+<F4>
Evaluer/Modifier
• <Shift>+<F3>
Variable à plusieurs éléments
• <Alt>+<S>
Aide aux renvois
Permet le passage entre la fenêtre supérieure (éditeur) et la fenêtre inférieure (observation).
• Etapes actives
• Transitions actives
• Actions actives
• Observation On/Off
<Ctrl>+<F6>
Option ’Mot de passe’
Le système de programmation est intégré dans la gestion des mots de
passe. L'entrée d'un nouvel utilisateur ou l'extension de la compétence
d'un utilisateur déjà enregistré n'est possible que dans le menu central.
L'option de menu 'Mot de passe' donne la possibilité par entrée d'un nom
utilisateur et d'un mot de passe de modifier ou d'élargir les possibilités
d'accès de cet utilisateur au programme SPS.
Par ailleurs l'effacement du nom d'un utilisateur et de son mot de passe
est également prévu de façon telle que seuls un affichage d'état et une
observation soient possibles.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-61
Guide de programmation SPS - 18VRS
Fig. 11-59: Entrée d'un mot de passe
Mot de passe /
Compétence
Possibilités
Mot de passe invalide
Affichage de l'état, si programme concorde dans SPS et
PC, aucune modification en ligne possible.
Affichage du programme si différences entre SPS et PC
existent, aucun état, aucune possibilité d'édition.
Mot de passe
permis 'Programme SPS'
Toutes les fonctions qui permettent une modification du
programme SPS existant sont permises, aucun téléchargement.
Mot de passe
permis 'Activer
SPS'
Permet le transfert d'un programme dans la commande.
Modification online d'un programme en cours présuppose en outre la compétence 'Programme SPS'.
11.9 Aide
Cette option du menu est toujours accessible via la touche <F10>/Aide ou
le raccourci clavier <Alt>+<H> .
Les sous-options suivantes sont accessibles:
Menu
Permet un survol de la structure actuelle du menu et de toutes les sousoptions de menu. Une aide additionnelle existe pour les différents points.
Index
Sommaire grossièrement structuré
Touches
Mot clé
Pour aide
Aide Syntaxe
<Ctrl>+<F1>
Aide ´Déclaration
<Shift>+<F1>
Aperçu des touches particulières/raccourcis clavier particuliers concrétisé
dans chaque fenêtre éditeur avec <Alt>+<H> .
Affichage des mots clés et caractères particuliers du système de programmation.
Informations suivantes
Aide contextuelle sur le terme actuel marqué par le curseur.
Le terme en question peut être un mot clé qui a été inscrit dans un champ
de commentaire ou bien être engendré automatiquement lorsque le curseur
se trouve à l'intérieur d'une fonction ou d'un FB.
Affiche les interfaces respectives pour le bloc fonctionnel marqué par le
curseur, la fonction marquée ou pour un type de données.
Dans le cas d'une variable, la caractéristique est indiquée par la variable
marquée par le curseur.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-62 Système global
Guide de programmation SPS - 18VRS
Service
Instructions de service que l'utilisateur peut également utiliser à l'occasion.
Les possibilités d'aide suivantes sont accessibles:
<F1>
<Ctrl>+<F1>
Aide sur l'option de menu sur laquelle se trouve le curseur.
Aide dans la fenêtre d'un éditeur sur l'éditeur actuel
Aide contextuelle sur le terme actuel marqué par le curseur.
Le terme en question peut être un mot clé qui a été inscrit dans un champ
de commentaire ou bien être engendré automatiquement lorsque le curseur se trouve à l'intérieur d'une fonction ou d'un FB.
<Enter>
<Alt>+<S>
Accès, appel d''une autre aide sur le terme suivant recherché.
Dans une fenêtre d'aide quelconque: Rechercher une chaîne de caractères
définie dans les termes de recherche.
<Ctrl>+<L>
Poursuite de la recherche
<Alt>+<F1>
Retour en arrière d'une fenêtre d'aide dans la pile
<Shift>+<F1>
Affiche les interfaces respectives pour le bloc fonctionnel marqué par le
curseur, la fonction marquée ou pour un type de données.
Dans le cas d'une variable, la caractéristique est indiquée par la variable
marquée par le curseur. (Aide déclaration)
<Esc>
Quitter l'aide
S'il s'agit d'un fb/fk/ty standard, l'aide apparaît avec:
<Ctrl>+<F1>
<Shift>+<F1>
Service
l'explication contenue dans l'aide plus un exemple.
le commentaire contenu dans la bibliothèque et l'interface.
• Service CNC altU
Passage au moniteur CNC et activation de la fonction service CNC.
Si ce faisant des adresses /fonctions qui ne sont pas supportées
(n'existent pas) dans la structuration disponible de la CNC sont concernées, elles sont alors bloquées techniquement par le logiciel.
L'utilisateur CNC/SPS n'utilise cette fonction qu'en cas exceptionnel
• Service Connection libre
ou
Via cette option de menu, les possesseurs de fichiers verrouillés
de fichiers avec état Lecture_seulement peuvent effectuer une
connexion libre avec le service.
(mot de
A condition que le code de libération de la connexion soit connu
passe du groupe de fichiers)
teur
La connexion est valide pour le groupe de fichiers tout entier.
Elle peut être à nouveau effacée dans la même fenêtre. mais elle
sera quoi qu'il en soit effacée automatiquement lorsque l'utilisaquittera le système de programmation.
• Instructions
de
service
Certaines modifications ne faisant pas partie des possibilités offertes
de façon standard peuvent être effectuées au moyen du fichier INDRAMAT PCLSCP. Dat en MT_TEXTE. Sans ce fichier, l'option de ce
menu est inactive (en grisé).
• Interface PLC
Commutation entre l'interface PLC interne et externe.
• Version altV
Sous cette option de menu sont affichés les numéros de version du
système de programmation et de l'interface principale.
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Système global 11-63
Guide de programmation SPS - 18VRS
11.10 Touches dans le système global
Touche (s)
Touches générales
<F1>
Aide, éditeur/Option de menu
<F2>
Mémoriser fichier de travail
<F3>
Charger fichier de travail
<F4>
Basculer entre fenêtre supérieure et inférieure
<F6>
Entrée d'un commentaire sur l'élément actuel
<F9>
Traduction, fichiers nécessaires / Make
<F10>
Passage au menu principal
<Ctrl>+<F1>
Aide syntaxique sur la position actuelle du curseur
<Ctrl>+<F2>
Mode standard/ Eng. LD/FBD, SFC
<Ctrl>+<F4>
Evaluer/Modifier (Evaluate)
<Ctrl>+<F6>
Affichage de commentaires
On/Off
<Ctrl>+<F7>
Observer (MISEENROUTE)
On/Off
<Ctrl>+<F8>
Observer (MISEENROUTE)
On/Off
<Ctrl>+<F9>
Démarrage/Mode test
<Ctrl>+<K>
Regroupement des instructions Bloc
<Ctrl>+<Q>
Regroupement des instructions Quick
<Ctrl>+<U>
GOTO éditeurs voisins (Sélection)
<Ctrl>+<V>
Affichage de version SPS/Menu principal
<Shift>+<F1>
Aide déclaration
<Shift>+<F2>
Représentation de variables symb./abs.
<Shift>+<F3>
Affichage de structures et tableaux
<Shift>+<F9>
Affichage d'état on / off
Touche (s)
Touches générales
<Alt>+<F1>
Retour en arrière d'une fenêtre d'aide dans la pile
<Alt>+<F2>
Transfert de données teleByte
<Alt>+<F3>
Retour d'une POE en arrière
<Alt>+<F4>
Structure de programme
<Alt>+<F7>
Goto renvoi précédent
<Alt>+<F8>
Goto renvoi suivant
<Alt>+<F9>
Traduction du fichier de travail, compile
<Alt>+<F10>
Menu local de l'éditeur actuel
<Alt>+<A>
Menu Fichier
<Alt>+<B>
Editeur de texte
<Alt>+<C>
Compilateur
<Alt>+<D>
Passage à l'éditeur de déclaration
<Alt>+<E>
Menu Edition
<Alt>+<G>
Menu Diagnostic
<Alt>+<H>
Touches de l'éditeur actuellement possibles
<Alt>+<I>
Passage à l'éditeur IO
<Alt>+<J>
Menu projet
<Alt>+<K>
Mot de passe:
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
11-64 Système global
Guide de programmation SPS - 18VRS
Touche (s)
Touches générales
<Alt>+<M>
Passage à l'éditeur d'importation
<Alt>+<L>
Liste des renvois
<Alt>+<O>
Menu Options
<Alt>+<P>
Sortie sur imprimante du contenu de l'éditeur
<Alt>+<R>
Menu démarrage / Mise en route
<Alt>+<S>
Aide aux renvois
<Alt>+<X>
Passage au menu principal
<Alt>+<Z>
Fonctions service
DOK-CONTRL-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Glossaire 12-1
12 Glossaire
Constante d’adresse
Contante qui contient des informations sur l'adresse de types de données
micrologiciels
Utilisateur
En liaison avec des programmes, blocs fonctionnels, fonctions, types de
données définis et gérés par l'utilisateur.
Fichier de travail
Fichier qui est traité dans le système de programmation et de mise en
route.
Programme utilisateur, bloc fonctionnel utilisateur, fonction utilisateur,
type de données utilisateur.
Modes de fonctionnement dans
le système de programmation et
de mise en service
Supports de données
Micrologiciel
Fonction
Bloc fonctionnel
Mode affichage, mode edit, affichage d'état, modification online
Disquette, disque dur, lecteur réseau
En liaison avec bloc fonctionnel, fonction, type de données
Complément de l'équipement minimal en éléments standard requis dans
la norme; ils peuvent être utilisés par l'utilisateur mais ne peuvent pas être
modifiés.
Nom du type de la fonction:
Nom sous lequel la fonction est mémorisée.
Le nom de la fonction est identique au nom de la sortie de la fonction.
Le type de la fonction est identique au type de la sortie de la fonction.
Nom du type du FB:
Nom sous lequel le bloc fonctionnel est mémorisé.
Nom d'application d'un FB/fb/Fb:
Nom de l'application concrète du FB/fb
(dans la DIN IEC 1131 également appelé nom d'instance, de copie, de
cas, d'affectation.
Programme global
Programme SPS, projet.
Contient le programme proprement dit et les blocs fonctionnels, fonctions
et types de données utilisés par lui.
Menu local
Menu PopUP;
Menu qui dans chaque éditeur ouvre l'accès aux autres fonctions éditeur.
Appel via raccourci clavier <Alt>+<F10>.
Particulier
En liaison avec bloc fonctionnel, fonction, type de données
Fichiers utilisateur développés par INDRAMAT; ces fichiers peuvent être
utilisés par le client mais ne peuvent pas être représentés ou modifiés par
lui.
Standard:
En liaison avec bloc fonctionnel, fonction, type de données
Equipement minimal en éléments requis dans la norme; ils peuvent être
utilisés par l'utilisateur mais ne peuvent pas être modifiés.
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
12-2 Glossaire
Guide de programmation SPS 18VRS
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-1
13 Index
A
Accès périphérique direct en contournant la structure triphasée
Définitions 2-13
Accès périphérique direct en évitant la structure triphasée 2-13 voir Accès
périphérique direct en évitant la structure triphasée
Déclaration 2-14
Implémentation 2-14
Mode d'action 2-13
Action 7-1
Action_Control 7-4
action_name.A 7-3
action_name.Q 7-3
action_name.X 7-3
Adresse de 2-8
Aide à la mise en route au niveau blocs d'action
Affichage d'état dans l'éditeur de blocs d'actions 7-24
Forçage d'actions assisté par le système 7-24
Tableaux des actions, étapes et transitions 7-26
Aide à la mise en route au niveau blocs d'actions 7-24
Aide à la mise en route dans la liste d'instructions 8-13
Aide à la mise en route dans le diagramme à contacts 9-18
Aide à la mise en route dans le langage FBD 10-17
Aide à la mise en route dans l'éditeur de déclaration 5-23
Affichage d'informations sur l'état 5-23
Variables à plusieurs éléments <Shift>+<F3> 5-24
Listage de variables et d'éléments de variables avec noms et informations sur leur état
5-26
Aide à la mise en route dans l'éditeur d'importation 4-10
Aide à la mise en route dans l'éditeur IO 3-32
Aide à la mise en route pour le niveau de séquence
Recherche de l'étape active suivante
Aller à l' étape active suivante <Ctrl>+<Q><H> 6-33
Aide à la mise en route pour le niveau de séquence
Recherche de l' étape active suivante 6-33
Aide à la mise en route pour le niveau d'exécution 6-32
Affichage de l'état dans la séquence 6-32
Tableaux des étapes et des transitions 6-33
Aide dans le système Aide Syntaxe 11-61
Aide dans le système global 11-61
Accès 11-62
Aide déclaration 11-61
Aide sur le terme actuel 11-62
Aide sur option de menu 11-62
Index 11-61
Menu 11-61
Mot clé 11-61
Pour aide 11-61
Rechercher une chaîne de caractères 11-62
Service 11-62
Touches 11-61
Aide dans l'éditeur de blocs d'actions 7-29
Aide déclaration 7-29
Aide sur le terme actuel 7-29
Aide sur l'éditeur actuel 7-29
Aide dans l'éditeur de déclaration 5-30
Aide déclaration 5-30
Aide sur le terme actuel 5-30
Recherche Texte 5-31
Aide dans l'éditeur de déclaration en relation avec l'éditeur actuel 5-30
Aide dans l'éditeur de listes d'instructions 8-16
Aide déclaration 8-16
Aide sur le terme actuel 8-16
Aide dans l'éditeur de listes d'instructions en relation avec l'éditeur actuel 8-16
Aide dans l'éditeur d'importation 4-10
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-2 Index
Guide de programmation SPS 18VRS
Aide déclaration 4-10
Aide sur le terme actuel 4-10
Aide sur l'éditeur actuel
Aide déclaration pour bloc fonctionnel utilisateur AOVRD 4-12
Aide déclaration pour fonction utilisateur SELECT 4-13
Aide déclaration pour type de données DWECHSEL 4-13
Chercher Texte 4-11
Aide dans l'éditeur d'importation en relation avec l'éditeur actuel 4-10
Aide dans l'éditeur FBD 10-20
Aide déclaration 10-20
Aide sur le terme actuel 10-20
Aide dans l'éditeur FBD en relation avec l'éditeur actuel 10-20
Aide dans l'éditeur IO 3-32
Chercher Texte 3-33
Aide dans l'éditeur LD 9-21
Aide déclaration 9-21
Aide en relation avec l'éditeur actuel 9-21
Aide sur le terme actuel 9-21
Aide dans l'éditeur SFC 6-36
Aide déclaration 6-36
Aide sur l'éditeur actuel 6-36
Aide dans l'éditeur SFC-Editor
Aide sur le terme actuel 6-36
Architecture de la section déclaration
Section déclaration d'un bloc fonctionnel 5-7, 5-10
Section déclaration d'une fonction 5-11, 5-12
Architecture de la section importation 4-2
B
Bloc fonctionnel Voir Edition de diagrammes à contacts:Blocs fonctionnels dans
diagramme à contacts
Blocs d'actions 7-1
Blocs d'actions (ACTION BLOCK) et actions (ACTION) 7-1
Blocs d'actions et leur fonctionnement 7-2
Architecture d’un bloc d’action 7-2, 7-3
Marque d’identification
Marque d’identification(qualificatif d’action, ACTION QUALIFIER) 7-2
Type d’action minimal 7-3
Architecture d’un bloc d’actions
Noms d’actions et de variables 7-2
Mode général d'exécution des actions 7-7
Coordination dans le temps du retraitement des actions 7-7
Coordination dans le temps du traitement des actions 7-7
Définition du moment 'Etape est active' 7-7
Définition du moment 'Etape est inactive' 7-7
Qualificatifs d'action et leurs effets sur les différents types d'actions 7-9
Actions avec blocs fonctionnels contenant des structures SFC 7-17
D - non mémorisant, retardé 7-12
DS- retardé et mémorisant 7-14
L - non mémorisant, limité dans le temps 7-11
N-non mémorisant 7-9
P-impulsion 7-13
R-Remise à zéro 7-17
SD- mémorisé et retardé 7-15
SL- mémorisé et retardé 7-16
S-mémorisant 7-10
Structure d'un bloc d'actions
Représentation du temps d'action 7-3
Traitement d'actions assisté par Action_Control 7-4
Diagrammes temporels 7-6
Marque d'identification AQ 7-5
Marques d'identification P0/P1 7-4
Variables système pour actions 7-5
Blocs fonctionnels Voir Edition de réseaux en langage FBD:Blocs fonctionnels en
langage FBD
Blocs fonctionnels (FUNCTION BLOCK)
Architecture d’un bloc fonctionnel utilisateur 2-22
Blocs fonctionnels standard et micrologiciels 2-22
Exemple de bloc fonctionnel utilisateur 2-23
Bloc fonctionnel AOVR en FBD 2-24
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-3
Bloc fonctionnel AOVR en IL 2-25
Bloc fonctionnel AOVR en LD 2-26
Représentation graphique (LD, FBD) 2-23
Tâche 2-23
Utilisation de fonctions et blocs fonctionnels dans des blocs fonctionnels 2-26
Blocs fonctionnels (FUNCTION BLOCK) 2-21 Voir Blocs fonctionnels
(FUNCTION BLOCK)
Blocs fonctionnels standard et Fonctions standard dans la bibliothèque 2-30
C
Change haut/bas <F4> 11-60
Système global – Options
Gestion de segments 11-59
Composants de l'adresse d'une variable 2-12
Configuration – Principe de base 3-2
Consignes d'installation pour le système de programmation 11-8
Constantes d'adresse 2-17
Contrôle syntaxique intégré en cours d'entrée 11-7
Source syntaxiquement correcte 11-7
Convention de types de données dans l'éditeur de déclaration 5-18
Convention de types de données dans l'éditeur déclaration
Entrée d'un tableau avec des structures en tant qu'élément 5-21
Entrée d'un tableau avec variables élémentaires 5-20
Représentation ASCII d'un Array 5-21
Entrée d'une structure avec variables élémentaires 5-19
Représentation ASCII 5-20
Coordination dans le temps du retraitement des actions 7-38
Coordination dans le temps du traitement des actions 7-38
Couleurs Voir système global – Options:Couleurs
Système global – Options 11-58
Couplage en parallèle Voir Eléments du diagramme à contacts:Eléments de
clôturecouplés en parallèle
Création d'un nouveau fichier Voir Menu Fichier<Alt>+<A>:Nouveau
D
Déclaration 5-1
Définition de types de données utilisateur 5-1
Définition de variables 5-1
Définition d'instances de blocs fonctionnels 5-1
Déclaration d'une chaîne d'étapes 6-42
Déclaration et initialisation 2-18
Détermination de la configuration matérielle, Tableaux IO 3-1
Diagramme à contacts
Réseau 9-2
Diagramme à contacts – Architecture
Lignes de liaison horizontales 9-2
Lignes de liaison verticales 9-2
Diagramme à contacts - Architecture 9-2
Diagramme à contacts, LD, LADDER DIAGRAM 9-1
E
Système global – Options 11-57
Boutons 11-57
Documentation 11-57
Fonction 11-57
Paramètres de mise au point 11-57
Zone de paramétrage 11-57
Editeur de blocs d’actions - Options 7-27
Paramètres de l'écran 7-28
Autres éditeurs 7-28
Fonction 7-28
Zone de paramétrage 7-28
Paramètres du compilateur 7-28
Paramètres généraux 7-27
Commutation langage de détail 7-27
Représentation de variables absolues 7-27
Requête lors de la sauvegarde 7-27
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-4 Index
Guide de programmation SPS 18VRS
Editeur de blocs d'actions – Options
Paramètres de l'écran
Réserve lors de l'utilisation de qualificatifs d'action limités dans le temps 7-36
Paramètres généraux
Affichage de variables symbolique ou absolu <Shift>+<F2> 7-27
Editeur de déclaration - Options 5-28
Paramètres de l'écran 5-29
Autres éditeurs 5-29
Fonction 5-29
Zone de paramétrage 5-29
Paramètres généraux
Requête lors de la sauvegarde 5-28
Editeur de déclaration – Options
Paramètres généraux
Affichage de variables symbolique ou absolu <Shift>+<F2> 5-28
Editeur de déclaration- Options
Paramètres généraux 5-28
Commentaire de déclaration dans l'implémentation 5-28
Représentation de variables absolues 5-28
Sauvegarde automatique 5-28
Sortie acoustique 5-28
Editeur de listes d’instructions - Options 8-14
Paramètres de l'écran 8-15
Autres éditeurs 8-15
Fonction 8-15
Zone de paramétrage 8-15
Paramètres généraux 8-14
Commentaire de déclaration dans l'implémentation 8-14
Commutation langage de détail 8-14
Représentation de variables absolues 8-14
Requête lors de la sauvegarde 8-14
Sauvegarde automatique 8-14
Editeur de listes d'instructions – Options
Paramètres généraux
Affichage de variables symbolique ou absolu 8-14
Editeur de listes d’instructions- Options
Paramètres généraux
Sortie acoustique 8-14
Editeur de protocoles Voir Menu Diagnostic:Analyse logique:Accès à l'éditeur de
protocoles
Editeur des blocs d'actions Voir Edition de blocs d'actions
Editeur FBD - Options 10-18
Paramètres de l'écran 10-19
Boutons 10-19
Documentation 10-19
Fonction 10-19
Paramètres de mise au point 10-19
Zone de paramétrage 10-19
Paramètres généraux
Commentaire de déclaration dans l'implémentation 10-18
Représentation de variables absolues 10-18
Requête lors de la sauvegarde 10-18
Sauvegarde automatique 10-18
Sortie acoustique 10-18
Editeur FBD – Options
Paramètres généraux
Affichage de variables symbolique ou absolu 10-18
Paramètres généraux 10-18
Editeur IO - Options 3-31, 4-10
Paramètres généraux 3-31
Editeur LD - Options 9-19
Paramètres de l'écran
Boutons 9-20
Documentation 9-20
Fonction 9-20
Paramètres de mise au point 9-20
Zone de paramétrage 9-20
Paramètres généraux
Commentaire de déclaration dans l'implémentation 9-19
Représentation de variables absolues 9-19
Requête lors de la sauvegarde 9-19
Sauvegarde automatique 9-19
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-5
Sélection du langage de programmation 9-19
Sortie acoustique 9-19
Editeur LD – Options
Paramètres de l'écran 9-20
Paramètres généraux
Affichage de variables symbolique ou absolu 9-19
Paramètres généraux 9-19
Editeur SFC
Représentation ASCII 6-28
Editeur SFC – Entrée de séquences 6-6
chaîne d'étapes 6-6
Effacement d'étape(S), transitions (T) et branchements (V)
Effacement d'étape(S) et de transitions (S) 6-18
Effacement d'étape(S), transitions (T), et branchements (V)
Effacement de la branche où se trouve le curseur 6-20
Ouverture de la branche où se trouve le curseur 6-19
Effacement d'étapes (S), transitions (T) et branchements (V) 6-17
Entrée d'un SFC simple
Instructions de pied de page 6-7
Insertions d'étapes (S), de transitions (T), de branchements (V) et de regroupements (Z)
6-12
Transitions 6-6
Variables booléennes en tant que transitions 6-6
Editeur SFC – Entrée d'organigrammes
Entrée d'un SFC simple 6-7
Editeur SFC - Options 6-34
Paramètres de l'écran 6-35
Boutons 6-35
Documentation 6-35
Fonction 6-35
Paramètres de mise au point 6-35
Zone de paramétrage 6-35
Paramètres généraux
Requête lors de la sauvegarde 6-34
Paramètres généraux 6-34
Affichage de variable 6-34
Sauvegarde automatique 6-34
Sortie acoustique 6-34
Editeurs de listes d'instructions – Options
Paramètres de l'écran 8-15
Editieren von Kontaktplänen
Funktionen im Kontaktplan
Anwendungsbeispiel für Funktionen und Operationen 9-11
Edition de blocs d’actions 7-18
Effacement d'un bloc d'actions 7-20
Liste d'actions <Alt>+<N> 7-21
Modifications de texte dans un bloc d'actions 7-20
Niveau de détail de l'éditeur de blocs d'actions 7-23
Représentation ASCII de l'éditeur de blocs d'actions 7-23
Travail dans l'éditeur de blocs d'actions 7-18
Utilisation multiple d'actions 7-22
Instructions de pied de page 7-22
Utilisation multiple d'actions dans une étape 7-22
Edition de diagrammes à contacts 9-3
Blocs fonctionnels dans diagramme à contacts 9-14
FlipFlop, appel inconditionnel 9-14
Création de réseaux 9-3
Curseur bloc dans la colonne externe droite 9-3
Curseur bloc dans le réseau, travail dans le réseau actuel 9-3
Curseur sur variable de sortie au droit du bloc fonctionnel, de la fonction, de l'opérateur
9-3
Entrée d'éléments de diagramme à contacts, curseur sur une position quelconque 9-3
Entrée d'un diagramme à contacts avec symboles supplémentaires 9-7
Entrée d'un diagramme à contacts simple 9-4
Complément d'éléments de clôture supplémentaires 9-6
Contacts (Sélection) 9-6
Eléments de sortie (Sélection) 9-6
Modifications et extensions (possibles) à posteriori 9-6
Utilisation d'étiquettes intermédiaires (ZMarqueur) 9-6
Fonctions dans diagramme à contacts 9-10
Importation de la fonction FENETRE définie par utilisateur 9-11
Section déclaration de l'exemple 9-11
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-6 Index
Guide de programmation SPS 18VRS
Modification de réseaux, curseur sur le rail de contact droit 9-3
Opérateurs de diagrammes à contacts 9-8
Représentation ASCII de l'éditeur LD 9-17
Edition de listes d’instructions 8-5
Blocs fonctionnels dans la liste d'instruction
FlipFlop, appel inconditionnel d'un FB 8-10
Blocs fonctionnels dans la liste d'instructions
Appel conditionnel d'un FB avec 'CALC/CALCN' 8-11
Appel conditionnel d'un FB par saut 8-11
Blocs fonctionnels dans la liste d'instructions 8-10
Entrée d'une liste d'instructions simple 8-5
Travaux préliminaire au niveau 'Bloc fonctionnel' 8-5
Travaux préliminaire au niveau 'Fonctions' 8-5
Travaux préliminaire au niveau 'Programme' 8-5
Fonctions dans la liste d'instructions
Utilisation de fonctions 8-9
Fonctions dans la liste d'instructions 8-8
Représentation ASCII de l'éditeur de IL 8-12
Edition de réseaux en langage FBD 10-2
Création de réseaux 10-2
Curseur à la sortie d'une porte/d'un FB/d'une fonction, aucune entrée de variable,
d'élément de clôture 10-3
Curseur à la sortie d'une porte/d'un FB/d'une fonction, variable, élément de clôture
entrés 10-3
Curseur sur une porte 10-4
Curseur sur une variable 10-3
Entrée de réseaux FBD avec symboles supplémentaires 10-6
Entrée d'un réseau simple FBD 10-4
Fonctions en langage FBD
Exemple d'application pour fonctions et opérations 10-10
Importation de la fonction FENETRE définie par utilisateur 10-10
Représentation ASCII dans l'éditeur 10-16
Travail dans segment 10-2
Edition d'une section de déclaration
Fenêtre de sélection lors de la déclaration de variables 5-14
Fenêtre de sélection pour la convention de blocs fonctionnels 5-17
Fenêtres de sélection lors de la déclaration de variables 5-14
Fenêtre de sélection pour types de données dérivés 5-15
Fenêtre de sélection pour types de données standard 5-16
Edition d'une section déclaration 5-13
Convention pour l’affectation des blocs fonctionnels 5-16
Déclaration de variables 5-13
Edition d’une section d’importation 4-3
Editeur d'interfaces
Possibilités d'adaptation – bloc fonctionnel, fonction, type de données 4-9
Editeur d'interfaces 4-6
Commentaire dans fichier de travail 4-8
Commentaire dans fichier importé 4-8
Représentation ASCII de l'éditeur d'importation 4-10
Edition d’une section importation
Importation de blocs fonctionnels 4-4
Importation de fonctions 4-5
Importation de types de données 4-6
Editions de réseaux en langage FBD
Blocs fonctionnels en langage FBD 10-13
FlipFlop, appel inconditionnel 10-13
Fonctions en langage FBD 10-9
Section déclaration de l'exemple 10-10
Opérateurs en langage FBD 10-7
Elément du diagramme à contacts
Elements de clôture couplés en parallèle 9-29
Eléments du diagramme à contacts 9-24
Eléments de base dans diagramme à contacts 9-24
Equivalent IL 9-24
Symboles LD 9-24
Etiquettes intermédiaires 9-29
Représentation de blocs fonctionnels dans diagramme à contacts 9-28
Représentation de fonctions dans diagramme à contacts 9-27
Représentation des opérateurs dans diagramme à contacts 9-25
Eléments du langage FBD 10-23
Eléments de base du langage FBD 10-23
Eléments de clôture couplés en parallèle 10-26
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-7
Etiquettes intermédiaires en langage FBD 10-26
Représentation de blocs fonctionnels en langage FBD 10-25
Représentation de fonctions en langage FBD 10-25
Représentation des opérateurs du langage FBD 10-24
Eléments SFC 6-1
Exécution d'actions – Modifications par rapport à la version 17 7-36
Traitement de la durée d'exécution en cas de conflits de qualificatifs d'action 7-36
Exécution d'actions – Modifications par rapport à la Version 17
Coordination dans le temps du retraitement des actions 7-38
Coordination dans le temps du traitement des actions 7-38
Exécution SFC – Particularités
Programmes SPS existants et nouvel interpréteur de structures
Cas de la désactivation du compilateur
option 'Traitement après flanc descendant' 6-51
SFC avec boucle minimale, sans interruption 6-54
Utilisation de AQ-R pour l'initialisation d'actions 6-51
Utilisation de la réécriture de AQ 6-50
Utilisation de l'ordre d'exécution des actions 6-50
Utilisation multiple d'actions 6-51
Utilisation multiple d'actions dans des étapes consécutives sans interruption! 6-53
Remise à zéro du SFC 6-54
Traitement des SFC en mode manuel 6-54
F
Fenêtre de chargement et de mémorisation avec possibilité d'exportation 11-6
Système global – Options 11-60
Liste de fenêtres <Alt>+<0> 11-60
Fonctions Voir Edition de réseaux en langage FBD:Fonctions en langage FBD
Voir Edition de diagrammes à contacts:Fonctions dans diagramme à contacts
Fonctions (FUNCTION) 2-19
Fonction définie par utilisateur 2-19
Fonction utilisateur 2-20
Fonctions standard et micrologicielles 2-19
Utilisation de fonctions à l'intérieur de fonctions 2-21
Forçage d'actions 7-24
FORWARD 6-29
G
Système global – Options 11-55, 11-58
Dernière position d'entrée 11-57
Requête lors de la sauvegarde 11-56
Sauvegarde automatique 11-56
Section déclaration 11-56
Sortie acoustique 11-56
I
Importation 4-1
Initialisation 2-11
Instructions - Bloc dans la liste IL
Marquer le bloc <Shift>+<CursorUp>, <Shift>+<CursorDown> 8-21
Instructions bloc dans diagramme à contacts
Déplacer le bloc <Ctrl>+<K><V> 9-32
Envoyer bloc dans éditeur de texte <Ctrl>+<K><3> 9-32
Marquer la fin du bloc 9-32
Marquer le début du bloc 9-32
Masquer le bloc <Ctrl>+<K><H> 9-32
Instructions bloc dans l'éditeur de blocs d'actions
Déplacer le bloc <Ctrl>+<K><V> 7-33
Ecrire bloc <Ctrl>+<K><W> 7-33
Effacer un bloc <Ctrl>+<K><Y> 7-33
Envoyer bloc dans éditeur de texte <Ctrl>+<K><3> 7-33
Ligne en tant que bloc <Ctrl>+<K><L> 7-33
Lire bloc <Ctrl>+<K><R> 7-33
Marquer la fin du bloc <Ctrl>+<K><K> 7-33
Marquer le début du bloc 7-33
Masquer le bloc <Ctrl>+<K><H> 7-33
Récupérer bloc de l'éditeur de texte <Ctrl>+<K><4> 7-33
Instructions bloc dans diagramme à contacts
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-8 Index
Guide de programmation SPS 18VRS
Copier bloc <Ctrl>+<K><C> 9-32
Définir un réseau en tant que bloc <Ctrl>+<K><L> 9-32
Définir une branche pour effacement <Ctrl>+<K><T> 9-32
Effacer un bloc <Ctrl>+<K><Y> 9-32
Instructions Bloc dans diagramme à contacts
Ecrire bloc sur disquette <Ctrl>+<K><W> 9-32
Envoyer bloc de l'éditeur de texte vers LD <Ctrl>+<K><4> 9-32
Instructions bloc dans la liste d’instructions 8-21
Copier bloc <Ctrl>+<K><C> 8-21
Déplacer le bloc<Ctrl>+<K><V> 8-21
Ecrire bloc sur disquette <Ctrl>+<K><W> 8-21
Ligne en tant que bloc <Ctrl>+<K><L> 8-21
Lire bloc d'une disquette <Ctrl>+<K><R> 8-21
Marquer la fin du bloc<Ctrl>+<K><K> 8-21
Marquer le début du bloc<Ctrl>+<K><B> 8-21
Masquer le bloc<Ctrl>+<K><H> 8-21
Masquer le bloc<Ctrl>+<K><Y> 8-21
Instructions bloc dans le diagramme à contacts 9-32
Instructions bloc dans l'éditeur de blocs d'actions
Envoyer bloc dans éditeur de texte <Ctrl>+<K><3> 8-21
Envoyer bloc de éditeur de texte vers IL <Ctrl>+<K><4> 8-21
Instructions Bloc dans l'éditeur de blocs d'actions 7-32
Instructions bloc dans l'éditeur de déclaration 5-36
Copier bloc dans éditeur de texte <Ctrl>+<K><3> 5-37
Copier bloc éditeur de texte dans éditeur de déclaration<Ctrl>+<K><4> 5-37
Copier commentaire <Ctrl>+<K><C> 5-36
Début de bloc <Ctrl>+<K><B> 5-36
Déplacer bloc <Ctrl>+<K><V> 5-36
Ecrire bloc <Ctrl>+<K><W> 5-36
Effacer déclaration inutilisée <Ctrl>+<K><U> 5-37
Effacer un bloc <Ctrl>+<K><Y> 5-36
Fin de bloc <Ctrl>+<K><K> 5-36
Imprimer bloc <Ctrl>+<K><P> 5-37
Ligne en tant que bloc <Ctrl>+<K><L> 5-36
Ligne, commentaire en tant que début de bloc <Ctrl>+<K><T> 5-37
Lire bloc <Ctrl>+<K><R> 5-37
Marquage de bloc <Ctrl>+<K><H> 5-36
Trier AbsVar de bloc <Ctrl>+<K><A> 5-37
Trier variables de bloc <Ctrl>+<K><I> 5-37
Variables de PC vers SPS <Ctrl>+<K><D> 5-37
Variables de SPS vers PC <Ctrl>+<K><S> 5-37
Instructions bloc dans l'éditeur d'importation 4-15
Instructions bloc dans l'éditeur IO 3-35
Instructions bloc dans l'éditeur SFC 6-21, 6-39
Copier bloc (Cas A) après transition tH 6-26
Copier bloc (Cas C) après étape sA 6-27
Copier bloc (Cas D) à côté de la transition tA 6-27
Copier bloc <Ctrl>+<K><V> 6-26
Déplacer bloc (Cas A) après transition tH 6-25
Déplacer bloc (Cas C) après étape sA 6-26
Déplacer bloc <Ctrl>+<K><V> 6-25
Ecrire bloc <Ctrl>+<K><W> 6-21
Effacement d'un bloc marqué (Cas A) composé de sB, tB, sC et tC 6-24
Effacement d'un bloc marqué (Cas B) composé de sB, tB et sD 6-24
Effacement d'un bloc marqué (Cas C) composé de tE, sD, tF et sE 6-24
Effacement d'un bloc marqué (Cas D) composé de tA, sB, tB et tC 6-25
Effacer bloc <Ctrl>+<K><Y> 6-24
Lire bloc <Ctrl>+<K><R> 6-21
Marquer début de bloc <Ctrl>+<K><B> 6-21
Marquer un bloc (Cas A), commençant par l'étape sB et finissant par la transition tC 622
Marquer un bloc (Cas C), commençant par la transition tE et finissant par l'étape sE 623
Marquer un bloc (Cas C), commençant par l'étape sB et finissant par l'étape sC 6-22
Marquer un bloc (Cas D), commençant par la transition tE et finissant par la transition tF
6-23
Masquer le bloc <Ctrl>+<K><H> 6-21
Instructions bloc en langage FBD 10-29
Bloc ### Editeur de texte <Ctrl>+<K><3> 10-29
Bloc éditeur de texte → FBD <Ctrl>+<K><4> 10-29
Copier le bloc<Ctrl>+<K><C> 10-29
Définir un réseau en tant que bloc <Ctrl>+<K><L> 10-29
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-9
Déplacer le bloc <Ctrl>+<K><V> 10-29
Ecrire bloc sur disquette <Ctrl>+<K><W> 10-29
Effacer un bloc <Ctrl>+<K><Y> 10-29
Lire bloc d'une disquette <Ctrl>+<K><R> 10-29
Marquer bloc<Shift>+<CursorUp><Shift>+<CursorDown> 10-29
Marquer la fin du bloc<Ctrl>+<K><K> 10-29
Marquer le début du bloc<Ctrl>+<K><B> 10-29
Masquer le bloc <Ctrl>+<K><H> 10-29
Instructions Quick dans diagramme à contacts
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 9-33
Recherche et remplacment d'une chaîne de caractères <Ctrl>+<Q><A> 9-33
Restaurer ligne <Ctrl>+<Q><L> 9-33
Instructions Quick dans éditeur de blocs d'actions
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 7-33
Instructions Quick dans éditeur de déclaration
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 5-38
Instructions Quick dans éditeur d'importation
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 4-16
Instructions Quick dans FBD
Restaurer ligne <Ctrl>+<Q><L> 10-30
Instructions Quick dans la liste d’instructions 8-22
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 8-22
Recherche et remplacement d'une chaîne de caractères <Ctrl>+<Q><A> 8-22
Restaurer ligne <Ctrl>+<Q><L> 8-22
Instructions Quick dans le diagramme à contacts 9-33
Instructions Quick dans l'éditeur de blocs d'actions 7-33
Rechercher et Remplacer une chaîne de caractères <Ctrl>+<Q><A> 7-34
Instructions Quick dans l'éditeur de déclaration 5-38
Rechercher et Remplacer une chaîne de caractères <Ctrl>+<Q><A> 5-38
Instructions quick dans l'éditeur d'importation 4-15
Instructions Quick dans l'éditeur FBD
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 10-30
Rechercher et Remplacer une chaîne de caractères <Ctrl>+<Q><A> 10-30
Instructions Quick dans l'éditeur IO 3-36
Instructions Quick dans l'éditeur SFC 6-40
Instructions Quick dans SFC
Chercher et Remplacer une chaîne de caractères <Ctrl>+<Q><A> 6-40
Recherche d'une chaîne de caractères <Ctrl>+<Q><F> 6-40
Interface de programmation SPS 11-1
Menu principal SPS 11-2
Possibilités d'aide 11-2
Touches et combinaisons de touches 11-2
IPS200-P/R 3-25
ISP200-P/R 3-12, 3-19, 3-20, 3-22
J
Jeu de caractères 2-3
Commentaires 2-3
Emploi des caractères espace 2-3
Identificateur (Nom) 2-3
Mots clés (Keyword) 2-3
L
Langage en diagramme de blocs fonctionnels, FBD-FUNCTION BLOCK
DIAGRAM 10-1
Langage FBD – Architecture d'un réseau 10-1
Le pointeur indique 2-9
Liste d'actions 7-21
Liste d'instructions – Eléments de base 8-2
Architecture de la liste d’instructions 8-2
Opérateurs et modificateurs
Appel de bloc fonctionnel dans l'IL 8-4
Comparaisons 8-4
Comparaisons complexes 8-5
Instructions complexes de chargement et de transport 8-3
Instructions de chargement et de transport 8-3
Instructions Mise à 1 et Remise à zéro 8-3
Opérations arithmétiques 8-4
Opérations arithmétiques complexes 8-4
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-10 Index
Guide de programmation SPS 18VRS
Opérations logiques 8-4
Sauts dans l'IL 8-4
Opérateurs et modificateurs 8-3
Liste d’instructions, IL, INSTRUCTION LIST 8-1
M
Marquage d'une structure SFC (complète) en tant que bloc <Ctrl>+<K><A> 6-28
Système global – Options 11-59
Menu compilation 11-25
Menu Compilation
Modifications online 11-28
Traduction du fichier de travail / Compiler <Alt>+<F9> 11-26
Traduction intégrale / Build 11-27
Traduction, fichiers nécessaires / Make <F9> 11-26
Menu Diagnostic 11-35
Alarme SPS 11-36
Analyse logique 11-38
Accès à l'éditeur de protocoles 11-39
Edition de liste 11-39
Fichier de protocoles 11-38
Instructions de pied de page 11-40
Chargement d'un protocole 11-41
Démarrage de l'enregistrement 11-40
Effacement du protocole 11-44
Fin de l'enregistrement 11-40
Instructions bloc 11-44
Instructions Quick 11-45
Mémorisation de l'enregistrement 11-41
Menu local 11-43
Mode d'enregistrement 11-43
Nombre d'enregistrements dans le protocole et position du point de déclenchement
11-42
Sélection de la base temporelle 11-41
Touches de direction et touches particulières 11-43
Liste de variables 11-38
Représentation du protocole 11-39
Graphe en ligne 11-39
Variables numériques 11-39
Variables binaires 11-39
Information
Composants de commande utilisés 11-38
Information Commande cible 11-37
Information Mémoire de données utilisée 11-37
Information Projet 11-37
Projet chargé 11-37
Information SPS 11-36
Matériel 11-37
Mémoire 11-37
Programme archivé dans la SPS 11-37
Programme dans commande 11-37
Temps de cycle 11-36
Messages de diagnostic 11-35
Menu Edition 11-14
Actions <Alt>+<N> 11-19
Editeur de déclaration <Alt>+<D> 11-18
Editeur d'importation <Alt>+<M> 11-19
EXTRAS 11-16
Implémentation 2ms 11-18
Implémentation2ms
Prolongation du temps de cycle par implémentation rapide 11-18
Liaison de données de process 11-16
Copie d'un état d'entrée sur une sortie de process 11-17
Copie d'un mot d'entrée sur un mot de sortie de process 11-17
Reset inconditionnel, conditionnel d'une sortie de process 11-16
Simulation IO 11-17
Implémentation, Sélection de langage 11-15
Mémoire tampon (Editeur de texte) ) <Alt>+<B> 11-23
Afficher <Alt>+<B> 11-23
Copier <Ctrl>+<Insert>, <Ctrl>+<K3> 11-23
Couper <Shift>+<Delete> 11-23
Imprimer <Alt>+<P> 11-25
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-11
Insérer <Ctrl>+<Insert>, <Ctrl>+<K4> 11-23
Instructions Bloc 11-25
Instructions Quick 11-25
Option de menu 'Chercher' 11-19
Aide aux renvois <Alt>+<S> 11-21
Chercher 11-20
Chercher & Remplacer 11-20
Dernière position… 11-20
GOTO 11-20
Liste de renvois <Alt>+<L> 11-20
Renvoi précédent <Alt>+<F7> 11-22
Renvoi suivant <Alt>+<F8> 11-22
Répéter 11-20
Transitions 11-19
Menu Fichier <Alt>+<A> 11-9
Actualiser 11-13
Charger <F3> 11-9
Charger en format ASCII 11-10
EXIT <Alt>+<X> 11-14
Gestionnaire de fichiers 11-13
Bouton Afficher 11-14
Bouton Archiver 11-14
Bouton Copier 11-14
Bouton Effacer 11-14
Bouton Interrompre 11-14
Bouton Récupérer 11-14
Bouton Renommer 11-14
Bouton Restaurer 11-14
Bouton Test 11-14
Champ de boutons Type/nom 11-14
Fonction 11-13
Impression (de fichiers) 11-10
Paramétrage préliminaire 11-10
Composants 11-11
Documentation en 11-11
Installer 11-12
Langage de substitution 11-11
Nom de fichier 11-12
Type d'imprimante 11-12
Unité de sortie 11-12
Mémoriser en format ASCII 11-10
Mémoriser sous... 11-10
Nouveau 11-9
Retour <Alt>+<F3> 11-9
Sauvegarder <F2> 11-10
Menu Fichier<Alt>+<A>
Protection 11-12
Fichier ouvert 11-13
Menu local Voir Touches dans l'éditeur de déclaration:Touches accessibles via le
menu local dans l'éditeur de déclaration
Menu local dans Editeur IO (Pop_Up-Menü) 3-34
Menu local dans l'éditeur de blocs d'actions 7-32
Menu local dans l'éditeur d'importation Voir Touches dans l'éditeur
d'importation:Touches accessibles via le menu local dans l'éditeur d'importation
Menu local dans l'éditeur FBD 10-28
Menu local dans l'éditeur IL 8-20
Menu local dans l'éditeur LD 9-31
Menu local dans l'éditeur SFC 6-39
Menu principal SPS Voir Interface de programmation SPS
Menu projet 11-45
Archivage 11-50
Archiver 11-51
Bouton Interruption 11-52
Bouton OK 11-51
Champ de boutons Comprimer 11-51
Champ de boutons Connexité 11-51
Champ de sortie Projet 11-51
Champ d'entrée de texte Commentaire 11-51
Champ d'entrée Nom 11-51
Champ d'entrée Version 11-51
Liste de sélection Archive cible 11-51
Liste de sélection Contenu 11-51
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-12 Index
Guide de programmation SPS 18VRS
Récupérer 11-52
Données RETAIN 11-54
Chargement dans SPS 11-54
Effacement de l'archive 11-54
Sauvegarder à partir de la SPS 11-54
Gestionnaire des archives 11-53
Bouton Effacer 11-53
Bouton Interruption 11-53
Bouton Renommage 11-53
Fonction 11-53
Récupérer
Bouton Interruption 11-53
Bouton OK 11-53
Champ de sortie Projet 11-52
Champ d'entrée de texte Commentaire 11-52
Champ d'entrée Nom 11-52
Champ d'entrée Version 11-52
Liste de sélection Contenu 11-52
Liste de sélection Source 11-52
Archivage des commentaires 11-54
Ecriture Commentaire 11-54
Documentation 11-46
Ensemble de la documentation 11-46
Paramètres de l'écran 11-46
Paramètres généraux 11-46
Prédéfinitions 11-46
Composants 11-47
Documentation en 11-47
Installer 11-48
Langage de substitution 11-47
Lignes de pied de page 11-47, 11-48
Nom de fichier 11-48
Type d’imprimante 11-48
Unité de sortie 11-48
Renvoi 11-46
Textes de pied de page 11-48
Menu Projet
Affectation IO <Alt>+<I> 11-50
Archivage
Archiver
Modifications lors du stockage à partir du gestionnaire de fichiers 11-52
Récupération
Récupération de fichiers INDRAMAT 11-53
Structure , Structure de programme <Alt>+<F4> 11-49
Mise en route / Démarrage
Affichage d'état <Shift>+<F9> 11-30
Mise en route / Démarrage 11-29
Etapes, Transitions, Actions actives 11-32
Evaluer/Modifier <Ctrl>+<F4> 11-34
Observation de variables 11-33
Programme ### Commande <Ctrl>+<F9> 11-30
Reset Commande 11-30
Variables à plusieurs éléments <Shift>+<F3> 11-30
Modèle logiciel, 2-1
Modes de fonctionnement des SFC 6-47
Activités dans et entre les modes de fonctionnement d'une chaîne d'étapes 6-48
Erreur de commutation entre les modes de fonctionnement SFC 6-48
Modes de fonctionnement SFC 6-43
Variables système SFC 6-44
Modificateurs Voir Liste d'instructions – Eléments de base:Opérateurs et
modificateurs
Système global – Options 11-60
Mot de passe: Voir Système global – Options:Mot de passe
O
Opérateur Voir Liste d'instructions – Eléments de base: Opérateurs et
modificateurs
Opérateurs Voir Edition de réseaux en langage FBD:Opérateur en langage FBD Voir
Edition de diagrammes à contacts:Opérateurs de diagrammes à contacts
Options dans le système global Voir Système global - Options
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-13
Options dans l'éditeur de blocs d'actions Voir Editeur de blocs d'actions - Options
Options dans l'éditeur de déclaration Voir Editeur de déclarations - Options
Options dans l'éditeur de listes d'instructions Voir Editeur de listes d'instructions Options
Options dans l'éditeur FBD Voir Editeur FBD - Options
Options dans l'éditeur LD Voir Editeur LD - Options
Organigramme - Eléments de base 6-2
Organigramme – Eléments de base
Etapes (STEP) 6-2
Etape initiale 6-2
Organigramme séquentiel
Niveaux de détail 6-30
Organigramme séquentiel - Eléments de base
Lois d'exécution 6-4
Organigramme séquentiel – Eléments de base
Lignes fléchées 6-3
Lois d'exécution
Exécution avec branchement alternatif 6-4
Exécution avec branchement parallèle 6-5
Exécution du regroupement des séquences d'évolution parallèles 6-5
Séquence composée d'étape/transition/étape 6-4
Séquences alternatives 6-3
Séquences parallèles 6-4
Transitions (TRANSITION) 6-2
Organigramme séquentiel – Niveaux de détail
Actions des étapes 6-32
Conditions pour la poursuite de commutation des transitions
Remplissage de la transition en FBD 6-31
Remplissage de la transition en IL 6-31
Remplissage de la transition en LD 6-31
Liste de transitions 6-31
Organigramme séquentiel – Niveaux de détails
Conditions pour la poursuite des transitions 6-30
Utilisation multiple de transitions 6-32
Doubler 6-32
Nouvelle transition 6-32
Renommer 6-32
Organigramme séquentiel (SFC) SEQUENTIAL FUNCTION CHART 6-1
P
POINTER 2-27
Pointeur 2-8
Programmation par chaîne d'étapes 6-43
Programme (PROGRAM)
Programme écrit par utilisateur - Exemple 2-28
Utilisation de fonctions et de blocs fonctionnels dans des programmes 2-28
Programme(PROGRAM), 2-27 Voir Programme (PROGRAM)
Q
Quick-Kommandos im Funktionsbausteinsprachen-Editor 10-30
R
Représentation ASCII de l'éditeur de listes d'instructions 8-12
Représentation ASCII de l'éditeur FBD Voir Edition de réseaux en langage FBD
Représentation ASCII de l'éditeur LD Voir Edition de diagrammes à
contacts:Représentation ASCII de l'éditeur LD
Représentation ASCII de l'éditeur SFC 6-28
Déclaration des étapes 6-29
Déclaration des transitions 6-29
Enchaînement des étapes et transitions 6-29
Mot clé ‘FORWARD’ 6-29
Représentation de données
Représentation numérique 2-3
Représentation de programmes, blocs fonctionnels, fonctions et types de données en
format ASCII 2-31
Blocs fonctionnels 2-31
Fonctions 2-31
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-14 Index
Guide de programmation SPS 18VRS
Programme 2-31
Types de données 2-31
Représentation de variables à plusieurs éléments 2-14, 2-15 Voir
Représentation de variables à plusieurs éléments
Chaînes de caractères 2-14
Tableaux 2-16
Représentation de variables à un élément 2-11 voir Représentation de variables
à un élément
Représentation des données 2-3
Représentation de chaînes de caractères 2-4
Représentation temporelle 2-4
Réseau Voir Langage FBD – Architecture d'un réseau Voir Diagramme à contacts
- Architecture
Réseau FBD simple Voir Edition de réseaux en langage FBD:Entrée d'un réseau FBD
simple
Réseau LD simple Voir Edition de diagrammes à contacts: Entrée d'un diagramme
à contacts simple
S
Section déclaration - Architecture 5-2
Section déclaration d'un bloc fonctionnel
Représentation ASCII 5-10
Section déclaration d'un bloc fonctionnel
Déclaration de variables de sortie VAR_OUTPUT ... END_VAR 5-8
Déclaration de variables d'entrée VAR_INPUT ... END_VAR 5-8
Déclaration de variables drapeaux et d'affectation de blocs fonctionnels VAR ...
END_VAR 5-8
Déclaration de variables externes dans bloc fonctionnel 5-9
Déclaration de variables globales dans le programme 5-9
Déclaration d'indicateurs de retenue VAR_INPUT ... END_VAR 5-8
Section déclaration d'un programme 5-3
Représentation ASCII 5-6
Section déclaration d'un programme
Déclaration de marqueurs de retenue et d'affectation de blocs fonctionnels VAR
RETAIN ... END_VAR 5-4
Déclaration de variables de sortie VAR_OUTPUT ... END_VAR 5-3
Déclaration de variables drapeaux et d'affectation de blocs fonctionnels VAR ...
END_VAR 5-4
Liaison à des adresses absolues 5-5
Section déclaration d'une fonction
Représentation ASCII 5-12
Section déclaration d'une fonction
Déclaration de variables de sortie VAR_OUTPUT ... END_VAR 5-11
Déclaration de variables d'entrée VAR-INPUT ... END_VAR 5-11
Déclaration d'indicateurs de retenue VAR_RETAIN ... END_VAR 5-12
Section déclaration – Architecture
Section déclaration d'un programme
Déclaration de variables d'entrée VAR_INPUT ... END_VAR 5-3
Section déclaration d'une fonction
Déclaration de variables drapeaux VAR ... END_VAR 5-12
SFCnom 6-46
SFCnom.ERRORFLG 6-48
SFCnom.ERRORNR 6-48
SFCnom.ERRORTYP 6-48
SFC-Variables système
Etape 6-44
Structure de programme Voir Menu Projet:Structure, Structure de programme
<Alt>+<F4>
Synax ISP200/ VM ISP200 3-24
Système global 11-1
Menu central 11-1
Système global - Options
Généralités
Commentaire de déclaration dans l'implémentation 11-56
Système global - Options 11-55
Système global – Options
Compilateur
Variable RETAIN
Initialisation unique 11-59
Fenêtres
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-15
Taille/Position <Ctrl>+<F5> 11-60
Généralités
Affichage de variables symbolique ou absolu 11-56
Généralités
Représentation de variables absolues 11-56
Sélection du langage de programmation 11-56
Système global –Options
Généralités
Liste d'instructions (par analogie LD/FBD) 11-56
T
Tableau IO DPM01 (Profibus DP Master) 3-19
Architecture 3-19
Edition 3-19
Représentation ASCII 3-20
Tableau IO DPM01 (Profibus DP-Slave)
Représentation ASCII 3-21
Tableau IO DPS (Profibus DP-Slave) 3-20
Tableau IO DPS1 (Profibus DP-Slave)
Architecture 3-20
Edition 3-21
Tableau IO CLC-P02 (Synax/ GPS) 3-24
Architecture 3-24
Edition 3-24
Représentation ASCII 3-24
Tableau IO de la boucle SERCOS 3-28
Edition 3-28
Représentation ASCII 3-30
Sélection de modules RECO2 3-28
Tableau IO de l'esclave à fibres optiques (LWL-Slave), MT-CNC 3-7
Architecture 3-7
Edition 3-7
Tableau IO de l'esclave à fibres optiques , MT-CNC
Représentation ASCII 3-7
Tableau IO des SIO-3 (Ports série), MT-CNC 3-23
Représentation ASCII 3-23
Tableau IO DNM01 (DeviceNet-Master) 3-22
Architecture 3-22
Edition 3-22
Représentation ASCII 3-23
Tableau IO du bus RECO 3-26
Tableau IO du bus RECO
Architecture 3-26
Tableau IO du Bus RECO
Edition 3-26
Sélection de modules RECO2 3-26
Tableau IO du Maître à fibres optiques 3-3
Architecture 3-3
Edition 3-3
Tableau IO du RECO-Bus
Représentation ASCII 3-27
Tableau IO IBM1 (IBS-Master G3) 3-7
Architecture 3-7
Edition 3-8
Représentation ASCII 3-10
Tableau IO IBM1 (IBS-Masters G3)
Création de nouveaux postes dans la liste de sélection Interbus-S. 3-10
Tableau IO IBM2 (IBS-Master G4) 3-12
Architecture 3-12
Formes des bornes 3-12
Edition 3-12
Modification du comportement au démarrage 3-18
Représentation ASCII 3-16
Tableau IO IBM2 (IBS-Masters G4)
Création de nouveaux postes dans la liste de sélection Interbus-S. 3-17
Tableau IO PEA3/4 3-25
Architecture 3-25
Connexion directe PC104 3-25
Edition 3-25
Représentation ASCII 3-25
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-16 Index
Guide de programmation SPS 18VRS
Technique des fenêtres 11-3
Fenêtre de sélection 11-5
Fenêtre d'éditeur 11-5
En-tête 11-6
Pied 11-6
Fenêtre d'option pour paramétrage 11-3
Fenêtre menu pour sélection des instructions 11-3
Touche dans l'éditeur de déclaration
Touches d’effacement 5-34
Touche dans l'éditeur LD
Accès 9-30
Touches de direction 9-30
Touches dans éditeur d'importation
Accès 4-14
Touches d'effacement 4-14
Touches dans le système global 11-63
Touches dans l'éditeur de blocs d'actions 7-31
Accès 7-31
Instructions curseur 7-31
Touches d'effacement 7-31
Touches dans l'éditeur de déclaration 5-34
Accès 5-34
Instructions curseur 5-34
Touches accessibles via le menu local dans l'éditeur de déclaration 5-35
Touches dans l'éditeur de listes d'instructions 8-19
Touches dans l'éditeur d'IL
Accès 8-19
Touches d'effacement 8-19
Touches dans l'éditeur d'importation 4-14
Instructions curseur 4-14
Touches accessibles via le menu local dans l'éditeur d'importation 4-14
Touches dans l'éditeur FBD 10-27
Accès 10-27
Instructions curseur 10-27
Touches d'effacement 10-27
Touches dans l'éditeur IL
Instructions curseur 8-19
Touches dans l'éditeur IO 3-34
Touches dans l'éditeur LD 9-30
Touches d’effacement 9-30
Touches dans l'éditeur SFC 6-38
Accès 6-38
Instructions curseur 6-38
Touches d'effacement 6-38
Traitement de la durée d'exécution en cas de conflits de qualificatifs d'action 7-36
Traitement SFC - Particularités 6-49
Traitement SFC – Particularités
Avantages du nouvel interpréteur de structures 6-49
Calcul de l'état des étapes SFC (mode automatique) 6-49
Implémentation du mode automatique 6-49
Programmes SPS existants et nouvel interpréteur de structures 6-50
Traitement SFC – Particularités du nouvel interpréteur de structures 6-49
Types de données 2-5
Adresse de Voir Adresse de
Initialisation Voir Initialisation
Pointer Voir Pointeur
Types dérivés Voir Types de données dérivés
Types élémentaires voir Types élémentaires de données
Types de données dérivés 2-7
Structures 2-7
Tableaux 2-7
Types élémentaires de données 2-5
Caractère (CHAR) 2-6
Chaîne de caractères (STRING) 2-6
Séquences de bits 2-6
U
Unités d'organisation de programme 2-19
Fonctions (FUNCTION) voir Fonctions (FUNCTION)
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Index 13-17
Variables globales dans programmes et variables externes dans FB Voir Variables
globales dans programmes et variables externes dans FB
Unités organisationnelles de programme
Blocs fonctionnels standard et Fonctions standard dans la bibliothèque Voir Blocs
fonctionnels standard et Fonctions standard dans la bibliothèque
Représentation de programmes, blocs fonctionnels, fonctions et types de données en format
ASCII Voir Représentation de programmes, blocs fonctionnels, fonctions et types de données
en format ASCII
V
Variables 2-11
Constante d'adresse Voir Constante d'adresse
Déclaration et initialisation voir Déclaration et Initialisation
Variables globales dans programmes et variables externes dans FB 2-29
Bloc fonctionnel 2-30
Déclaration de variables externes 2-30
Déclaration de variables globales 2-29
Variables système SFC 6-44
Action 6-45
Chaîne d'étapes 6-44
Entrée et utilisation 6-45
Actions système 6-47
Modèle de la chaîne d'étapes 6-46
Nom de la structure SFC actuelle ’SFCnom’ 6-46
Pointeur sur jeu de données de l'étape actuelle 6-46
Types de données sans utilisation de la commutation mode de fonctionnement 6-45
Variables système et types de données système 6-45
Transition 6-45
Type d'action minimal 6-45
Type d'étapeminimal 6-44
Type SFC minimal 6-44
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
13-18 Index
Guide de programmation SPS 18VRS
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Répertoire des figures 14-1
14 Répertoire des figures
Fig. 2-1: Structure d'un programme suivant le modèle logiciel EN 61131-32-1
Fig. 2-2: Combinaison des éléments langage SPS
2-2
Fig. 2-3: Type de données défini par l'utilisateur (STRUCT)
2-7
Fig. 2-4: Type de données défini par l'utilisateur (ARRAY of BOOL)
2-8
Fig. 2-5: Type de données défini par l'utilisateur (ARRAY of STRUCT),
Le Type de données OUTILLAGE (Fig. 2-3: Type de données
défini par l'utilisateur (STRUCT)) doit être importé auparavant.2-8
Fig. 2-6: Mode d'accès périphérique direct
2-13
Fig. 2-7: Déclaration de la fonction SELECT
2-20
Fig. 2-8: Implémentation de la fonction SELECT
2-21
Fig. 2-9: Déclaration du bloc fonctionnel AOVR
2-23
Fig. 3-1: Création d'un programme 'PR', bloc fonctionnel 'FB', d'une fonction 'FK' ou d'un type de donnée 'TY'
3-1
Fig. 3-2: Fenêtre de sélection 'Editeur IO'
3-2
Fig. 3-4: Connexion du maître à fibres optiques LWL avec des postes
possibles
3-3
Fig. 3-5: Esclave à fibres optiques avec poste MTC-M
3-7
Fig. 3-6: IBM1, Interbus Master G3
3-8
Fig. 3-7: IBM1, IBS-Editor G3, Travail avec liste de sélection
3-9
Fig. 3-9: Extension de la liste de sélection Interbus-S
3-11
Fig. 3-10: IBM2, Entrée Offline
3-13
Fig. 3-11: Décisions de l'utilisateur pour la poursuite
3-15
Fig. 3-12: Extension de la liste de sélection Interbus-S
3-18
Fig. 3-13: DPM01 Profibus DP-MASTER avec carreau de mémoire
3-20
Fig. 3-14: DPM01 Profibus DP-Slave avec carreau de mémoire
3-22
Fig. 3-15: DNM01 DeviceNet-Master mit carreau de mémoire
3-23
Fig. 3-16: CLC-P02 avec carreau de mémoire
3-25
Fig. 3-17: PEA3/4, connexion directe PC104-EA
3-26
Fig. 3-18: Editeur IO pour Bus RECO
3-27
Fig. 3-19: Editeur IO pour Bus RECO
3-29
Fig. 3-20: Fenêtre d'options 'Paramètres généraux'
3-32
Fig. 3-21: Affichage d'état dans l'éditeur IO
3-33
Fig. 3-22: <F1> Aide sur l'éditeur
3-34
Fig. 3-23: <Ctrl>+<F1> - Aide sur le terme
3-34
Fig. 3-24: <Alt>+<S>, Rechercher ... ‘Variable’
3-34
Fig. 3-25: Menu local dans l'éditeur IO
3-35
Fig. 4-1: Création d'un programme 'PR', d'un bloc fonctionnel 'FB', d'une
fonction
4-1
Fig. 4-2: Section importation du programme TEST_PLC
4-2
Fig. 4-3: Section importation en cas de création d'un nouveau programme.
4-3
Fig. 4-4: Importation d'un bloc fonctionnel utilisateur
4-4
Fig. 4-5: Importation d'une fonction utilisateur, fenêtre de sélection
4-5
Fig. 4-6: Importation d'un type de données utilisateur, fenêtre de sélection4-6
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
14-2 Répertoire des figures
Guide de programmation SPS 18VRS
Fig. 4-7: Passage à l'éditeur d'interfaces avec 1-S_Edit pour le clignotant
FB BLINKER utilisé dans le programme
4-7
Fig. 4-8: Comparaison de la section déclaration du FB BLINKER au moment de l'importation (à gauche) et sous l'état actuel (à droite).4-7
Fig. 4-9: <F1> Aide dans l'éditeur actuel
4-11
Fig. 4-10: <Ctrl>+<F1>, Aide sur le terme, le curseur se trouve sur
FUNCTION
4-11
Fig. 4-11: <Alt>+<S>, Rechercher
4-12
Fig. 4-12: <Shift>+<F1>, Aide déclaration pour bloc fonctionnel utilisateur
AOVRD
4-12
Fig. 4-13: <Shift>+<F1>, Aide déclaration pour fonction utilisateur SELECT
4-13
Fig. 4-14: <Shift>+<F1>, Aide déclaration pour type de données
DWECHSEL
4-13
Fig. 4-15: Menu local dans l'éditeur d'importation
4-14
Fig. 4-16: Recherche d'un texte (chaîne de caractères)
4-16
Fig. 5-1: Création d'un programme 'PR', bloc fonctionnel 'FB', d'une
fonction 'FK' ou d'un type de données 'TY'
5-1
Fig. 5-2: Section déclaration du programme EXEMPLE
5-2
Fig. 5-3: Section déclaration d'un bloc fonctionnel
5-7
Fig. 5-4: Section déclaration d'une fonction
5-10
Fig. 5-5: Section déclaration du programme EXEMPLE
5-13
Fig. 5-6: Fenêtre de sélection 'Constantes d'adresse'
5-15
Fig. 5-7: Fenêtre de sélection 'Types de données dérivés'
5-15
Fig. 5-8: Fenêtre de sélection 'Types de données standard'
5-16
Fig. 5-9: Convention pour blocs fonctionnels
5-16
Fig. 5-10: Fenêtre de sélection 'Types de blocs fonctionnels''
5-18
Fig. 5-11: Fenêtre de déclaration d'un type de données utilisateur
5-19
Fig. 5-12: Fenêtre de déclaration d'un type de données utilisateur
5-20
Fig. 5-13:Importation d'OUTILLAGE dans le type de données utilisateur
ECHANGEUR
5-22
Fig. 5-14: Type de données utilisateur ECHANGEUR
Fig. 5-15:
5-22
<Shift>+<F1>, Aide pour OUTILLAGE dans type de données ECHANGEUR
5-23
Fig. 5-16: Editeur de déclaration, informations sur l'état
5-24
Fig. 5-17: Sélection d'une variable à plusieurs éléments
5-24
Fig. 5-18: Affichage d'une variable à plusieurs éléments
5-25
Fig. 5-19: Affichage de la structure (en tant qu'élément de tableau)
5-25
Fig. 5-20: Variable en tant que bloc (avec info sur le type)
5-26
Fig. 5-21: Archivage du fichier ASCII
5-26
Fig. 5-22: Traitement du fichier ASCII dans l'éditeur de texte
5-27
Fig. 5-23: Fenêtre d'options ‘Paramètres généraux’
5-28
Fig. 5-24: Fenêtre d'option ‘Paramètres de l'écran’
5-29
Fig. 5-25: <F1> Aide en relation avec l'éditeur actuel
5-30
Fig. 5-26:
<Ctrl>+<F1>, Aide contextuelle (le curseur se trouve sur le
terme iDEA)
5-31
Fig. 5-27: Recherche d'un terme prédéfini
5-31
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Répertoire des figures 14-3
Guide de programmation SPS 18VRS
Fig. 5-28:<Shift>+<F1>, Aide déclaration sur l'Identificateur PO1S avec
passage à l'information sur le type <T>
5-32
Fig. 5-29: <Shift>+<F1>, Aide déclaration sur le type de données iPROC5-32
Fig. 5-30: <Shift>+<F1>, aide déclaration sur l'Identificateur S_Cycles
avec passage à l'information sur le type <T>
5-33
Fig. 5-31: <Shift>+<F1>, Aide déclaration sur le type de données
CTUD_INT
5-33
Fig. 5-32: Menu local dans l'éditeur de déclaration
5-35
Fig. 5-33: Recherche et remplacement d'un texte (chaîne de caractères)5-38
Fig. 6-1: Création d'un programme ‘PR’ ou d'un bloc fonctionnel ‘FB’ en
utilisant des éléments SFC.
6-1
Fig. 6-2: Déclaration des variables utilisées en tant que condition pour la
poursuite de la commutation
6-7
Fig. 6-3: SFC avec étape d'initialisation, transition et saut à l'étape initiale6-8
Fig. 6-4: Séquence du chemin principal
6-9
Fig. 6-5: Branchement alternatif
6-9
Fig. 6-6: Fin de la séquence alternative.
6-10
Fig. 6-7: Fin de l'alternative
6-11
Fig. 6-8: Renvoi
6-11
Fig. 6-9: Structure SFC pour archivage ASCII
6-28
Fig. 6-10:
Préparation au remplissage de la transition Accès avec la
combinaison de touches <Ctrl>+<Enter>
6-30
Fig. 6-11: Liste de transitions
6-31
Fig. 6-12:Affichage de l'état, des étapes et des transitions
6-32
Fig. 6-13: Tableau des transitions dans l'éditeur SFC
6-33
Fig. 6-14: Fenêtre d'options ‘Paramètres généraux’
6-34
Fig. 6-15: Fenêtre d'option ‘Paramètres de l'écran’
6-35
Fig. 6-16: <F1> Aide en relation avec l'éditeur actuel
6-36
Fig. 6-17: <Ctrl>+<F1> - Aide sur le terme 'Transition'
6-37
Fig. 6-18: Aide sur le terme 'Action'
6-37
Fig. 6-19: Menu local dans l'éditeur SFC
6-39
Fig. 6-20: Recherche et remplacement d'un texte (chaîne de caractères)6-40
Fig. 6-21:
Données système permanentes et définies par l'utilisateur
de la chaîne d'étapes.
6-43
Fig. 6-22:Données système permanentes et définies par l'utilisateur de
l'étape
6-43
Fig. 6-23:Données système permanentes et définies par l'utilisateur de la
transition
6-44
Fig. 6-24:
Données système permanentes et définies par l'utilisateur
de l'action
6-44
Fig. 6-25: Importation des types de données utilisateur pour éléments
SFC
6-45
Fig. 6-26:
Fig. 6-27:
Fig. 6-28:
Déclaration de la chaîne d'étapes– Affectation des types de
données SFC
6-45
Edition des actions système via la liste d'action
Passages entre les modes de fonctionnement d'une chaîne
d'étapes
6-47
Fig. 7-1: Création d'un programme 'PR' ou d'un bloc fonctionnel 'FB'
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
6-46
7-1
14-4 Répertoire des figures
Guide de programmation SPS 18VRS
Fig. 7-2: Données système permanentes et définies par l'utilisateur de
l'action
7-3
Fig. 7-3: Accès à l'éditeur de blocs d'actions à partir de l'éditeur SFC 7-18
Fig. 7-4: Entrée de blocs d'actions avec commentaire
7-19
Fig. 7-5: Négation d'une variable binaire dans un bloc d'actions
7-20
Fig. 7-6: Liste d'actions
7-21
Fig. 7-7: Utilisation multiple d'actions (dans l'exemple CLEAR_ERR) 7-22
Fig. 7-8: Accès à l'action CLEAR_ERR après <Ctrl>+<Enter>
7-23
Fig. 7-9: Exemple pour blocs d'actions
7-23
Fig. 7-10: Affichage d'actions activées
7-25
Fig. 7-11: Action forcée, <Ctrl>+<F4> préparé pour arrêt
7-25
Fig. 7-12: Tableau d'actions dans l'éditeur des blocs d'actions
7-26
Fig. 7-13: Tableau d'actions avec actions forcées et activées normalement
7-26
Fig. 7-14: Fenêtre d'options 'Paramètres généraux''
7-27
Fig. 7-15: Fenêtre d'option ‘Paramètres de l'écran’
7-28
Fig. 7-16: <F1> Aide sur l'éditeur actuel
7-29
Fig. 7-17: <Ctrl>+<F1> - Aide contextuelle
7-30
Fig. 7-18: Cherche le terme TIME dans l'aide
7-30
Fig. 7-19: Menu local de l'éditeur de blocs d'actions
7-32
Fig. 7-20: Recherche et remplacement d'un texte (chaîne de caractères)7-34
Fig. 8-1: Création d'un programme 'PR', bloc fonctionnel 'FB' ou d'une
fonction 'FK' dans la liste d'instructions'
8-1
Fig. 8-2: Liste d'instructions
8-2
Fig. 8-3: Section déclaration pour la Fonction SELECT
8-6
Fig. 8-4: Editeur IL, Fenêtre de sélection pour opérations
8-7
Fig. 8-5: Editeur IL pour l'entrée de la fonction SELECT
8-8
Fig.8-6: Section déclaration de l'exemple
8-10
Fig. 8-7: Section déclaration pour exemple FB, importation du FB 'RS'
n'est pas nécessaire, vu qu'il s'agit d'un FB-micrologiciel. 8-11
Fig. 8-8: Extrait de l'éditeur IL pour écriture ASCII.
8-13
Fig. 8-9: Liste d'instructions, informations d'état
8-14
Fig. 8-10: Fenêtre d'options 'Paramètres généraux'
8-15
Fig. 8-11: Fenêtre d'options ‘Paramètres de l'écran’
8-16
Fig. 8-12: <F1> Aide sur l'éditeur actuel
8-17
Fig. 8-13: <Ctrl>+<F1> - Aide contextuelle
8-18
Fig. 8-14: Aide sur le terme INT
8-18
Fig. 8-15: <Shift>+<F1>, Aide déclaration sur l'opérande QOVR
8-19
Fig. 8-16: <Shift>+<F1>, Aide déclaration sur la fonction utilisateur
BYTE_INT
8-19
Fig. 8-17: Menu local de l'éditeur IL
8-21
Fig. 8-18: Recherche et remplacement d'un texte (chaîne de caractères)8-23
Fig. 9-1: Création d'un programme 'PR', bloc fonctionnel 'FB' ou d'une
fonction 'FK' '
9-1
Fig. 9-2: Diagramme à contacts
9-2
Fig. 9-3: Section déclaration de l'exemple (extrait)
9-4
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Répertoire des figures 14-5
Guide de programmation SPS 18VRS
Fig. 9-4: Exemple de diagramme à contact avec affichage du commentaire de déclaration (<Ctrl>+<F6>) pour 'Aimant1'
9-5
Fig. 9-5: Exemple Diagramme à contacts, Commentaire de déclaration
avec Aimant1 réécrit après activation de la touche <F6>.
9-5
Fig. 9-6: Section déclaration pour la Fonction SELECT
9-7
Fig. 9-7: Diagramme à contacts pour la Fonction SELECT
9-8
Fig. 9-8: Déclaration pour la fonction BSP_OP
9-9
Fig. 9-9: Fonction BSP_OP, Fenêtre de sélection 'Operateurs'
9-9
Fig. 9-10:
Fonction BSP_OP, complétée
9-10
Fig. 9-11: Déclaration a posteriori d'une variable
9-12
Fig. 9-12: La variable manquante est inscrite a posteriori
9-12
Fig. 9-13: Fonction complète dans éditeur LD
9-13
Fig. 9-14: Fonction complète dans éditeur LD après simplification
9-13
Fig. 9-15:
Section déclaration pour exemple FB, importation du FB RS
n'est pas nécessaire, vu qu'il s'agit d'un FB-micrologiciel. 9-14
Fig. 9-16:
Entrée du FB 'ff75' au moyen de fenêtres de sélection 9-15
Fig. 9-17:
Sélection des entrées et sorties du FB à connecter.
9-15
Fig. 9-18: Sélection du nom de variable pour le relais
9-16
Fig. 9-19: Fin du réseau – Appel inconditionnel
9-16
Fig. 9-20: Fin du réseau – Appel conditionnel
9-17
Fig. 9-21: Diagramme à contacts d'un programme, informations d'état9-18
Fig. 9-22:
Fenêtre d'options ‘Paramètres généraux’
9-19
Fig. 9-23:
Fenêtre d'option ‘Paramètres de l'écran’
9-20
Fig. 9-24: <F1> Aide sur l'éditeur actuel
9-21
Fig. 9-25:
<Ctrl>+<F1> - Aide contextuelle
9-22
Fig. 9-26:
Aide sur le terme 'Fonction utilisateur''
9-22
Fig. 9-27:
<Shift>+<F1>, Aide déclaration sur opérande 'Set' avec
indication du type
9-23
Fig. 9-28:
<Shift>+<F1>, Aide déclaration pour bloc fonctionnel 'ff75:
RS' 9-23
Fig. 9-29:
Menu local de l'éditeur LD
Fig. 9-30:
res)
Fig. 10-1:
Recherche et remplacement d'un texte (Chaîne de caractè9-33
Création d'un programme 'PR', bloc fonctionnel 'FB' ou
d'une fonction 'FK' '
10-1
Fig. 10-2:
Réseau en langage FBD
10-2
Fig. 10-3:
Section déclaration pour l'exemple
10-4
Fig. 10-4:
Exemple FBD avec affichage du commentaire de déclaration (<Ctrl>+<F6>) pour 'Aimant1'
10-5
Fig. 10-5:
Exemple FBD, Commentaire de déclaration avec Aimant1
réécrit après activation de la touche <F6>.
10-5
Fig. 10-6: Section déclaration pour la Fonction SELECT
10-6
Fig. 10-7:Commentaire dans la fonction SELECT
10-7
Fig. 10-8: Déclaration pour la fonction BSP_OP
10-8
Fig. 10-9: Fonction BSP_OP, Fenêtre de sélection 'Opérateurs'
10-8
Fig. 10-10: Fonction BSP_OP, complétée
10-9
Fig. 10-11: Déclaration a posteriori d'une variable omise
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
9-31
10-11
14-6 Répertoire des figures
Guide de programmation SPS 18VRS
Fig. 10-12: La variable manquante est inscrite a posteriori
10-11
Fig. 10-13: Fonction complète dans éditeur FBD
10-12
Fig.10-14: Fonction complète dans éditeur FBD après simplification 10-12
Fig. 10-15: Section déclaration pour exemple FB, importation du FB RS
n'est pas nécessaire, vu qu'il s'agit d'un FB-micrologiciel. 10-13
Fig. 10-16: Entrée du FB 'ff75' au moyen de fenêtres de sélection
10-14
Fig. 10-17: Sélection des entrées et sorties du FB à connecter
10-14
Fig. 10-18: Sélection du nom pour l'entrée de la bascule bistable (FlipFlop)
10-15
Fig. 10-19: Fin de la connexion du FlipFlop
10-15
Fig. 10-20: Fin du réseau – Appel conditionnel
10-16
Fig. 10-21: Programme en FBD, informations d'état
10-17
Fig. 10-22: Fenêtre d'options ‘Paramètres généraux’
10-18
Fig. 10-23: Fenêtre d'option 'Paramètres de l'écran'
10-19
Fig. 10-24: <F1> Aide sur l'éditeur actuel
10-20
Fig. 10-25: <Ctrl>+<F1> - Aide contextuelle
10-21
Fig. 10-26: Cherche Aide sur le terme INT
10-21
Fig. 10-27: <Shift>+<F1>, Aide déclaration sur l'opérande 'rayon'
10-22
Fig. 10-28: <Shift>+<F1>, Aide déclaration sur la fonction SELECT 10-22
Fig. 10-29: Menu local de l'éditeur FBD
10-28
Fig. 10-30: Recherche et remplacement d'un texte (chaîne de caractères)10-30
Fig. 11-1: Menu principal SPS
11-1
Fig.11-2: Fenêtre menu pour sélection des instructions
11-3
Fig. 11-3: Fenêtre d'option pour paramétrage
11-4
Fig. 11-4: Fenêtre de sélection
11-5
Fig. 11-5: Fenêtre d'éditeur avec menu local
11-5
Fig. 11-6: Fenêtre de mémorisation, interne
11-6
Fig. 11-7: Fenêtre de mémorisation, externe
11-7
Fig. 11-8: Option de menu Travail avec fichier
11-9
Fig. 11-9: Fenêtre de sélection pour documentation 'Fichier de travail'11-11
Fig. 11-10: Protection de fichiers, attributs de fichiers, mot de passe 11-12
Fig. 11-11: Gestionnaire de fichiers
11-13
Fig. 11-12: Fenêtre de sélection 'Edition''
11-15
Fig. 11-13: Option de menu 'Chercher'
11-19
Fig. 11-14: Fenêtre de sélection pour liste de renvois
11-20
Fig. 11-15: Liste de renvois, variables symboliques classées dans l'ordre
alphabétique
11-21
Fig. 11-16: Aide aux renvois à partir des différents éditeurs, <Alt>+<S>,
Curseur sur terme recherché HM100
11-22
Fig. 11-17: Editeur de texte avec fichier archivé
11-23
Fig. 11-18: Réseau LD marqué
11-24
Fig. 11-19: Réseau sous forme IL dans l'éditeur de texte
11-24
Fig. 11-20: IL modifiée dans l'éditeur de texte
11-24
Fig. 11-21: IL modifié transféré de l'éditeur de texte à l'éditeur FBD 11-24
Fig. 11-22: Menu local de l'éditeur de texte
11-25
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS
Répertoire des figures 14-7
Fig. 11-23: Fenêtre d'option ‘Paramètres du compilateur’
11-25
Fig. 11-24: Traduction du fichier de travail, des fichiers nécessaires
(Make) et du programme complet (Build)
11-27
Fig. 11-25: Traduction intégrale / Build
11-28
Fig. 11-26: Menu Mise en route
11-29
Fig. 11-27: Sélection d'une variable à plusieurs éléments (Type de données micrologiciel, structure)
11-31
Fig. 11-28: Affichage d'une variable à plusieurs éléments
11-31
Fig. 11-29: Indication de la position d'un élément de tableau
11-32
Fig. 11-30: Tableau des transitions dans l'éditeur SFC
11-32
Fig. 11-31: Observation de variables
11-33
Fig. 11-32: Intervention unique pour influencer des variables
11-34
Fig. 11-33: Menu Diagnostic, spécial: Messages de diagnostic
11-35
Fig. 11-34: Information SPS
11-36
Fig. 11-35: Informations sur le projet qui se trouve dans l'ordinateur 11-37
Fig. 11-36: Entrée / Modification de variables dans la liste de variables
actuelle
11-39
Fig. 11-37: Protocole terminé avant le début du nouvel enregistrement
(l'écran est vide lorsqu'un protocole terminé existe)
11-40
Fig. 11-38: Sélection de la base temporelle
11-41
Fig. 11-39: Affichage du protocole – Base temporelle 1000 ms
11-42
Fig. 11-40: Nombre d'enregistrements dans le protocole et position du
point de déclenchement
11-42
Fig. 11-41: Mode d'enregistrement
11-43
Fig. 11-42: Menu local, éditeur de protocole
11-44
Fig. 11-43: Préparation du ZOOM par marquage de bloc dans la zone
voulue
11-45
Fig. 11-44: Menu projet
11-46
Fig. 11-45: Fenêtre de sélection pour documentation de l'ensemble du
programme
11-47
Fig. 11-46: Création de fichiers de texte de pied de page par l'utilisateur.11-48
Fig. 11-47: Structure de programme
11-49
Fig. 11-48: Option de menu 'Archivage'
11-50
Fig. 11-49: Archivage de fichiers
11-51
Fig. 11-50: Option de menu ‘Récupérer'
11-52
Fig. 11-51: Récupération de fichiers INDRAMAT
11-53
Fig. 11-52: Option de menu 'Gestionnaire des archives'
11-53
Fig. 11-53: Fenêtre d'option ‘Généralités’
11-56
Fig. 11-54: Fenêtre d'option ‘Ecran’
11-57
Fig.11-55: Fenêtre pour chargement, modification et mémorisation de
palettes de couleurs
11-58
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Fig. 11-56: Fenêtre d'option ‘Généralités’
11-59
Fig. 11-57: Fenêtre d'option ‘Mémorisation’
11-60
Fig. 11-58: Fenêtres, passage entre fenêtres
11-60
Fig. 11-59: Entrée d'un mot de passe
11-61
14-8 Répertoire des figures
Guide de programmation SPS 18VRS
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS Services d'assistance à la clientèle - Sales & Service Facilities
Services d'assistance à la clientèle - Sales & Service
Facilities
Allemagne – Germany
Région Est
Région Centre
Germany Centre
V/S
Service
INDRAMAT GmbH
Bgm.-Dr.-Nebel-Str. 2
D - 97816 Lohr am Main
Tél. :
Téléfax:
+49 (0)9352/40-0
+49 (0)9352/40-4885
S:
Région Sud
Germany South
V/S
Service
Région Ouest
Germany East
V/S
Service
Germany West
Région Nord
V/S
Service
Germany North
INDRAMAT GmbH
Beckerstraße 31
D - 09120 Chemnitz
INDRAMAT GmbH
Harkortstraße 25
D - 40849 Ratingen
INDRAMAT GmbH
Kieler Straße 212
D - 22525 Hamburg
Tél. :
Téléfax:
Tél. :
Téléfax:
Tél. :
Téléfax:
+49 (0)371/35 55-0
+49 (0)371/35 55-333
+49 (0)2102/43-0
+49 (0)2102/41 315
V/S
+49 (0)40/85 31 57-0
+49 (0)40/85 31 57-15
Herzig Code tél. 224
V:
A. Proft, Code tél. -16
V:K.Weinkauf, Code tél. -30
Région Sud-Ouest
INDRAMAT Service-Hotline
Germany South-West
V/S
INDRAMAT GmbH
Ridlerstraße 75
D-80339 München
INDRAMAT GmbH
Böblinger Straße 25
D-71229 Leonberg
Tél. : +49 (0)89/540138-30
Téléfax: +49 (0)89/540138-10
Tél. : +49 (0)7152/9 72-6
Téléfax: +49 (0)7152/9 72-727
K. Riedl, ligne directe. -30
V:P. Eicher, ligne directe -47
V:Kwiedor, ligne directe -46
voir Annuaire tél. INDRAMAT
K. Stamer, ligne directe -710
S:Konow, ligne directe. -711
V:
Service
INDRAMAT GmbH
Téléphone: +49 (0)172/660 04 06
ou
Tél. :
+49 (0)171/333 88 26
KRE-Hotline pour PIECES DE
RECHANGE:seulement les jours
ouvrés de 15 à 18 heures
Services d'assistance à la clientèle en Allemagne Service agencies in Germany
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Service
Services d'assistance à la clientèle - Sales & Service Facilities Guide de programmation SPS 18VRS
Europa - Europe
Austria
V/S
Service
Austria
V/S
Service
Belgium
V/S
Service
Denmark
V/S
Mannesmann Rexroth Ges.m.b.H.
Geschäftsbereich INDRAMAT
Hägelingasse 3
A - 1140 Wien
Mannesmann Rexroth G.m.b.H.
Geschäftsbereich INDRAMAT
Industriepark 18
A - 4061 Pasching
Mannesmann Rexroth N.V.-S.A.
Geschäftsbereich INDRAMAT
Industrielaan 8
B-1740 Ternat
BEC AS
Zinkvej 6
DK-8900 Randers
Tél. :
Téléfax:
Tél. :
Téléfax:
Tél. :
Téléfax:
Tél. :
Téléfax:
+43 (0)1/9852540-400
+43 (0)1/9852540-93
+43 (0)7221/605-0
+43 (0)7221/605-21
+32 (0)2/5823180
+32 (0)2/5824310
Service
+45 (0)87/11 90 60
+45 (0)87/11 90 61
Manfred Taschl Ligne directe -63
Hviezdoslavova 5
CS - 627 00 Brno
Tél:
England
V/S
Service
Mannesmann Rexroth Ltd.
INDRAMAT Division
4 Esland Place, Love Lane
GB - Cirencester, Glos GL7 1YG
Tél. :
Téléfax:
+44 (0)1285/658671
+44 (0)1285/654991
Finland
V/S
Service
Rexroth Mecman OY
Ansatie 6
SF-017 40 Vantaa
Tél. :
Téléfax:
+358 (0)9/84 91 11
+358 (0)9/84 91 13 60
France
Service
Mannesmann Rexroth S.A.
Division INDRAMAT
Parc des Barbanniers
4, Place du Village
F-92632 Gennevilliers Cedex
Tél. :
Téléfax:
Hotline:
Code tél. 1252
V:
V/S
France
V/S
Service
Mannesmann Rexroth S.A.
Division INDRAMAT
270, Avenue de Lardenne
F - 31100 Toulouse
+33 (0)141 47 54 30
+33 (0)147 94 69 41
+33 (0)6 08 33 43 28
Tél. : +33 (0)5 61 49 95 19
Téléfax: +33 (0)5 61 31 00 41
(Kw.1188-5)
Téléphone:
France
V/S
Service
Italy
V/S
Service
Italy
V/S
Service
Italy
V/S
Service
Mannesmann Rexroth S.A.
Division INDRAMAT
91, Bd. Irène Joliot-Curie
F - 69634 Vénissieux Cedex
Mannesmann Rexroth S.p.A.
Divisione INDRAMAT
Via G. Di Vittoria, 1
I - 20063 Cernusco S/N.MI
Mannesmann Rexroth S.p.A. Divisione INDRAMAT
Via Borgomanero, 11
I - 10145 Torino
Mannesmann Rexroth S.p.A. Divisione INDRAMAT
Via del Progresso, 16 (Zona Ind.)
I - 35020 Padova
Tél.: +33 (0)4 78 78 53 65
Téléfax: +33 (0)4 78 78 52 53
Tél. :
+39 (0)2/92 36 52 70
Téléfax: +39 (0)2/92 36 55 12Code
tél, 1186
V:
Tél. :
Téléfax:
Tél. :
Téléfax:
Italy
Netherlands
Italy
V/S
Service
V/S
Service
+39 (0)11/7 71 22 30
+39 (0)11/7 71 01 90
V/S
Service
+39 (0)49/8 70 13 70
+39 (0)49/8 70 13 77
Netherlands
Mannesmann Rexroth S.p.A. Divisione INDRAMAT
Via de Nicola, 12
I - 80053 Castellamare di Stabbia NA
Mannesmann Rexroth S.p.A. Divisione INDRAMAT
Viale Oriani, 38/A
I - 40137 Bologna
Hydraudyne Hydrauliek B.V.
Kruisbroeksestraat 1
P.O. Box 32
NL - 5281 RV Boxtel
Hydrocare B.V.
Kruisbroeksestraat 1
P.O. Box 32
NL - 5281 RV Boxtel
Tél. :
Téléfax:
Tél. :
Téléfax:
Tél. :
Téléfax:
Tél. :
Téléfax:
+39 (0)81/8 72 30 37
+39 (0)81/8 72 30 18
Spain
V/S
Service
Mannesmann Rexroth S.A.
Divisiòn INDRAMAT
Centro Industrial Santiga
Obradors s/n
E-08130 Santa Perpetua de Mogoda
Barcelona
Tél.:
Téléfax:
+34 937 47 94 00
+34 937 47 94 01
Switzerland - West
V/S
Service
+39 (0)51/34 14 14
+39 (0)51/34 14 22
Spain
V/S
Goimendi S.A.
División Indramat
Jolastokieta (Herrera)
Apartado 11 37
E - 20017 San Sebastian
Tél.:
Téléfax:
+34 9 43/40 01 63
+34 9 43/39 17 99
Russia
V/S
Mannesmann Rexroth SA
Département INDRAMAT
Chemin de l`Ecole 6
CH-1036 Sullens
Tschudnenko E.B.
Arsenia 22
RUS - 153000 Ivanovo
Rußland
Tél.:
Téléfax:
Tél.:
+41 (0)21/731 43 77
+41 (0)21/731 46 78
Service
oder/or
Téléfax:
+7 093/223 96 33
+7 093/223 95 48
+7 093/223 46 01
Service
Sweden
+31 (0)411/65 19 51
+31 (0)411/65 14 83
V/S
Service
V/S
+31 (0)411/65 19 51
+31 (0)411/67 78 14
Switzerland - East
V/S
Rexroth Mecman Svenska AB
INDRAMAT Division
Varuvägen 7
S - 125 81 Stockholm
Mannesmann Rexroth AG
Geschäftsbereich INDRAMAT
Gewerbestraße 3
CH-8500 Frauenfeld
Tél.:
Téléfax:
Tél.:
Téléfax:
Slowenia
+46 (0)8/727 92 00
+46 (0)8/64 73 277
V/S
DOMEL
Elektromotorji in gospodinjski
aparati d. d.
Otoki 21
SLO - 64 228 Zelezniki
Tél.:
Téléfax:
Service
Turkey
Service
Service
+41 (0)52/720 21 00
+41 (0)52/720 21 11
V/S
Service
Mannesmann Rexroth Hidropar A..S.
Fevzi Cakmak Cad No. 3
TR - 34630 Sefaköy Istanbul
Tél.:
Téléfax:
+90 212/541 60 70
+90 212/599 34 07
+386 64/61 73 32
+386 64/64 71 50
Services d'assistance à la clientèle en Europe (sans l'Allemagne) European Service agencies (without Germany)
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Guide de programmation SPS 18VRS Services d'assistance à la clientèle - Sales & Service Facilities
A l'extérieur de l'Europe - outside Europe
Argentina
V/S
Service
Mannesmann Rexroth S.A.I.C.
Division INDRAMAT
Acassusso 48 41/7
RA - 1605 Munro (Buenos Aires)
Tél.:
+54 (0)1/756 01 40
+54 (0)1/756 01 36
Argentina
V/S
Service
Australia
V/S
Service
NAKASE
Asesoramiento Tecnico
Calle 49, No. 5764-66
RA - 1653 Villa Balester
Provincia de Buenos Aires
AIMS - Australian Industrial Machinery Services Pty. Ltd.
Unit 3/45 Horne ST
Campbellfield 3061
AUS - Melbourne, VIC
Tél.:
Téléfax:
Tél.:
Téléfax:
+54 (0) 1/768 24 13
+54 (0) 1/768 36 43
+61 (0)3/93 59 02 28
+61 (0)3/93 59 02 86
Brazil
Téléfax:
V/S
Service
China
V/S
Service
China
V/S
Service
Basic Technologies Corporation
Burlington Division
3426 Mainway Drive
Burlington, Ontario
Canada L7M 1A8
Mannesmann Rexroth (China) Ldt.
Shanghai Office - Room 206
Shanghai Internat. Trade Centre
2200 Yanan Xi Lu
PRC - Shanghai 200335
Mannesmann Rexroth (China) Ldt.
Shanghai Parts & Service Center
199 Wu Cao Road, Hua Cao
Minhang District
PRC - Shanghai 201 103
Tél.:
Téléfax:
Tél.:
Téléfax:
Tél.:
Téléfax:
China
+1 905/335 55 11
+1 905/335-41 84
V/S
Service
Mannesmann Rexroth (China) Ldt.
A-5F., 123 Lian Shan Street
Sha He Kou District
PRC - Dalian 116 023
Tél.:
Téléfax:
+86 411/46 78 930
+86 411/46 78 932
Hongkong
V/S
Téléfax:
Indonesia
V/S
Service
Tél.:
Téléfax:
Japan
+852 27/41 13 51/-54
+852 27/41 14 30
+852 27/86 07 33
V/S
Rexroth Automation Co., Ltd.
INDRAMAT Division
1F, I.R. Building
Nakamachidai 4-26-44
Tsuzuki-ku, Yokohama-shi
J - Kanagawa-ken 224-004
+62 21/4 61 04 87
+62 21/4 61 04 88
+62 21/4 60 01 52
Tél.:
Téléfax:
V/S
Service
Mannesmann Rexroth (India) Ltd.
INDRAMAT Division
Plot. 96, Phase III
Peenya Industrial Area
IND - Bangalore - 560058
Rexroth (China) Ldt.
19 Cheung Shun Street
1st Floor, Cheung Sha Wan,
Kowloon, Hongkong
oder/or
+86 21/62 20 00 58
+86 21/62 20 00 68
India
Service
Tél.:
PT. Rexroth Wijayakusuma
Jl. Raya Bekasi Km 21
Pulogadung
RI - Jakarta Timur 13920
+86 21/62 75 53 33
+86 21/62 75 56 66
Service
Tél.:
Téléfax:
+91 (0)80/8 39 21 01
+91 (0)80/8 39 43 45
Korea
V/S
Service
Mannesmann Rexroth-Seki Co Ltd.
1500-12 Da-Dae-Dong
ROK - Saha-Ku, Pusan, 604-050
Tél.:
Téléfax:
+82 (0)51/2 60 06 18
+82 (0)51/2 60 06 19
+81 459/42-72 10
+81 459/42-03 41
Mexico
V/S
Service
Tél.:
Téléfax:
+52 5 754 17 11
+52 5 754 36 84
+52 5 754 12 60
+52 5 754 50 73
+52 5 752 59 43
South Africa
V/S
Service
Tél.:
Téléfax:
+27 (0)11/673 20 80
+27 (0)11/673 72 69
V/S
Tél.:
Téléfax:
+86 10/65 05 03 80
+86 10/65 05 03 79
India
V/S
Service
Mannesmann Rexroth (India) Ltd.
INDRAMAT Division
Plot. A-58, TTC Industrial Area
Thane Turbhe Midc Road
Mahape Village
IND - Navi Mumbai - 400 701
Tél.:
Téléfax:
+91 (0)22/7 61 46 22
+91 (0)22/7 68 15 31
Korea
V/S
Service
Seo Chang Corporation Ltd.
Room 903, Jeail Building
44-35 Yeouido-Dong
Yeoungdeungpo-Ku
C.P.O.Box 97 56
ROK - Seoul
+82 (0)2/7 80 82 08
+82 (0)2/7 80 82 09
+82 (0)2/7 84 54 08
Taiwan
V/S
Rexroth Uchida Co., Ltd.
No.1, Tsu Chiang Street
Tu Cheng Ind. Estate
Taipei Hsien, Taiwan, R.O.C.
Tél.:
Téléfax:
+886 2/2 68 13 47
+886 2/2 68 53 88
Services d'assistance à la clientèle à l'extérieur de l'Europe Service agencies outside Europe
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Service
Mannesmann Rexroth (China) Ldt.
15/F China World Trade Center
1, Jianguomenwai Avenue
PRC - Beijing 100004
Tél.:
HYTEC Automation (Pty) Ltd.
28 Banfield Road,Industria North
RSA - Maraisburg 1700
+55 (0)11/745 90 60
+55 (0)11/745 90 70
+55 (0)11/745 90 50
China
Téléfax:
Rexroth Mexico S.A. de C.V.
Calle Neptuno 72
Unidad Ind. Vallejo
MEX - 07700 Mexico, D.F.
Service
[ BR-09901-970 Diadema-SP ]
Tél.:
Canada
V/S
Mannesmann Rexroth
Automação Ltda.
Divisão INDRAMAT
Rua Georg Rexroth, 609
Vila Padre Anchieta
BR - 09951-270 Diadema-SP
[ Caixa Postal 377 ]
Service
Services d'assistance à la clientèle - Sales & Service Facilities Guide de programmation SPS 18VRS
A l'extérieur de l'Europe / USA - outside Europe / USA
USA
V/S
Service
USA
V/S
Service
Mannesmann Rexroth Corporation
INDRAMAT Division
5150 Prairie Stone Parkway
USA -Hoffman Estates, IL 60192-3707
Mannesmann Rexroth Corporation
INDRAMAT Division
Central Region Technical Center
USA - Auburn Hills, MI 48326
Tél.:
Téléfax:
Tél.:
Téléfax:
USA
+1 847/6 45 36 00
+1 847/6 45 62 01
V/S
+1 248/3 93 33 30
+1 248/3 93 29 06
USA
V/S
Service
USA
V/S
Service
Mannesmann Rexroth Corporation
INDRAMAT Division
Southeastern Technical Center
3625 Swiftwater Park Drive
USA - Suwanee
Georgia 30174
Mannesmann Rexroth Corporation
INDRAMAT Division
Northeastern Technical Center
99 Rainbow Road
USA - East Granby,
Connecticut 06026
Tél.:
Tél.:
+1 770/9 32 32 00
+1 770/9 32 19 03
+1 860/8 44 83 77
+1 860/8 44 85 95
Service
Mannesmann Rexroth Corporation
INDRAMAT Division
Charlotte Regional Sales Office
14001 South Lakes Drive
USA - Charlotte,
North Carolina 28273
Tél.:
+1 704/5 83 97 62
+1 704/5 83 14 86
Services d'assistance à la clientèle à l'extérieur de l'Europe / USA Service agencies outside Europe / USA
DOK-MTC200-SPS*PRO*V18-AW01-FR-P
Notes

Manuels associés