2011-2012 YVES DARCQ LYCEE COUFFIGNAL 2011-2012 TP D’AUTOMATISME TS2 CIRA (prem
2011-2012 YVES DARCQ LYCEE COUFFIGNAL 2011-2012 TP D’AUTOMATISME TS2 CIRA (première partie) 1 TABLE DES MATIERES I] LANGAGES DE PROGRAMMATION DES API ........................................................................................... 2 1] ELEMENTS COMMUNS AUX DIFFERENTS LANGAGES ...................................................................... 2 2] LANGAGES LITTERAUX ..................................................................................................................... 4 3] LANGAGES GRAPHIQUES ................................................................................................................. 6 4] STRUCTURATION D’UN PROGRAMME: ........................................................................................... 9 II] PREMIERS PAS DANS LA PROGRAMMATION D’UN AUTOMATE SIEMENS EN S7 ............................ 12 1-ADRESSAGE DES VARIABLES SIEMENS: .................................................................................................... 12 2- OUVERTURE ET ENREGISTREMENT D’UN PROJET EXISTANT : ....................................................................... 13 3- VERIFICATION DE LA CONFIGURATION MATERIELLE DE L’API : .................................................................... 13 4- CREER UNE TABLE DE MNEMONIQUES : .................................................................................................. 15 5- PROGRAMMER UN RESEAU DANS UNE FONCTION FC1 ET L’APPELER DANS OB1 : ......................................... 16 6- CREER UNE TABLE DE VARIABLES VAT1 : ................................................................................................ 17 7- TRANSFERER ET TESTER LE FONCTIONNEMENT DU PROGRAMME : ............................................................... 18 8- FORÇAGE DES VARIABLES : ................................................................................................................... 19 9- REPRESENTATION D’UN GRAFCET: ......................................................................................................... 20 10- MISE A L’ECHELLE D’UNE ENTREE ANALOGIQUE: .................................................................................... 23 11- MISE A L’ECHELLE D’UNE SORTIE ANALOGIQUE: .................................................................................... 25 III] UTILISATION DES ENTREES ET SORTIES ANALOGIQUES API .............................................................. 27 IV] PLANNING EXERCICES DE REVISION DE TP D’AUTOMATISME TS2CIRA .......................................... 32 V] EXERCICES DE REVISION TP D’AUTOMATISME TS2CIRA .................................................................... 33 VI] TP TEST AUTO N°1 ................................................................................................................................. 34 VII] TP TEST AUTO N°2 ............................................................................................................................... 35 VIII] TP TEST TP AUTO N°3 ......................................................................................................................... 38 IX] ADRESSAGE DES MOTS INTERNES D’UN API ...................................................................................... 41 2 I] LANGAGES DE PROGRAMMATION DES API NORME CEI 61131-partie 3 Cette norme des langages de programmation des automates programmables permet de les classer suivant trois catégories : Langages littéraux Langages graphiques Structure de programme Langage IL (liste d’instructions) Langage ST (littéral structuré) Langage LD (à contacts) Langage FBD (à blocs fonctionnels) Diagramme SFC (suite de séquences) La structure d’un programme séquentiel utilise les éléments du diagramme fonctionnel de séquence SFC à ne pas confondre avec la description du comportement d’un système (connu sous le nom de GRAFCET en France, voir norme CEI 60848) 1] ELEMENTS COMMUNS AUX DIFFERENTS LANGAGES 1-1) Principaux types de données élémentaires : Le type de données, la description et le nombre de bits sont précisés dans le tableau suivant : Type de données Description Taille ou nombre de bits Etendue BOOL Booléen 1 0 ou 1 BYTE Cordon de 8 bits 8 Pas d’étendue numérique pour ce type de données WORD Cordon de caractères de longueur 16 16 DWORD Cordon de caractères de longueur 32 32 LWORD Cordon de caractères de longueur 64 64 INT Entier signé n=16 -2 n-1 à + (2n+1 – 1) UINT Entier non signé n=16 0 à (2n – 1) REAL Nombre réel 32 Virgule flottante STRING Cordon de caractères Encadré par deux apostrophes TIME Durée Dépend de l’application concernée 1-2) Représentation des variables : Une variable permet d’identifier des objets de données dont le contenu peut varier (données associes aux entrées, aux sorties ou aux emplacements mémoire de l’API) Le tableau suivant permet de représenter symboliquement une variable. La variable débute par le symbole % Préfixe Signification I Input :Emplacement d’une entrée automate Q Output : Emplacement d’une sortie automate M Emplacement de mémento ou mémoire interne X Taille d’un seul bit B Taille d’un byte ou octet W Taille d’un word : mot de 16 bits D Taille d’un double Word : mot double de 32 bits L Taille d’un mot long : mot de 64 bits Exemples : %IW125 : Emplacement du mot d’entrée 125 %QB17 : Emplacement de l’octet de sortie 17 %MD48 : Emplacement du mot mémoire double 48 1-3) Unités d’organisation de programmes :(structuration d’un programme grâce à 3 types de modules) - Fonction : Module ayant plusieurs entrées possibles, une seule variable de sortie et pas de mémoire interne - Bloc fonctionnel:Module ayant plusieurs variables d’entrée et de sortie possibles et une mémoire interne - Programme : Module construit à l’aide de fonctions et de blocs fonctionnels L’organisation interne d’un programme peut faire intervenir un diagramme fonctionnel de séquence SFC. 3 Inventaire des fonctions standards: Description des principales fonctions communes à tous les langages de programmation d’API : - Fonctions de conversion de types Exemple cette fonction permet la conversion d’une variable d’entrée du type réel en une variable de sortie du type entier - Fonctions numériques Exemple : cette fonction permet de calculer la racine carrée d’une variable d’entrée - Fonctions cordons de bits Exemple : cette fonction permet le décalage à gauche de N bits d’une variable d’entrée et le remplissage de zéros à droite Exemple : cette fonction réalise le ET Booléen -Fonctions de sélection et de comparaison Exemple : cette fonction permet de déterminer la valeur maximale entre trois variables d’entrée Exemple : cette fonction permet de sélectionner une des deux variables d’entrée suivant la variable G Exemple : cette fonction réalise la comparaison de supériorité entre deux variables d’entrée (IN1>IN2) REAL TO INT REAL INT SQRT REAL REAL IN SHL OUT N Cordon de bits Cordon de bits UINT IN1 AND OUT IN2 BIT BIT BIT IN1 MAX OUT IN2 IN3 INT INT INT INT IN1 GT OUT IN2 REAL BOOL REAL G SEL OUT IN1 IN2 BOOL INT INT INT 4 2] LANGAGES LITTERAUX 2-1) Langage IL (Instruction List ou langage à liste d’instructions) Comme son nom l’indique, le programme est constitué d’une suite d’instructions respectant le format suivant : Ce langage est proche du langage de programmation d’un microprocesseur : l’assembleur Exemple : Soit à commander une électrovanne EV du schéma TI suivant : Exemple de programmation du logiciel STEP7 de Siemens : Programme correspondant en IL ou LIST : 2-2) Langage ST ( Structured Text) ou langage littéral structuré) Ce langage est composé d’expressions littérales constituées d’opérateurs et d’opérandes et d’énoncés. Ce langage est proche d’un langage informatique comme le PASCAL. Exemple 1 de la commande de l’électrovanne : %L1 (« commande electrovanne ») IF (%I0.0 OR %Q4.0) AND %I0.1 AND NOT %I0.2 THEN SET %Q4.0 END IF; Etiquette (non obligatoire) Opérateur Opérande(s) Commentaire (non obligatoire) Etiquette (non obligatoire) Opérateur Opérande(s) Commentaire (non obligatoire) Début : AND ( OR %I0.0 BP Marche NO OR %Q4.0 Electrovanne ) AND %I0.1 BP Arrêt NF AND N %I0.2 Niveau haut NO ST %Q4.0 Affectation électrovanne LH Type NO Nmax MA type NO AR type NF EV 5 -Exemple 2 issu d’un programme de démonstration « Machine de dosage et mélange produits » du logiciel PL7 de Schneider. Soit la simulation d’un premier ordre sous forme d’un bloc fonctionnel DFB « Premier ordre » (voir langage FBD) : Le contenu de ce bloc écrit en langage ST est le suivant : (*** Routine de Simulation d'un procédé de 1er ordre pour Sortie PID ***) (* Récupération de la Période de la tâche MAST nécessaire à la formule *) IF Trs THEN Sortie := Tri; ELSE Te:=INT_TO_REAL(%SW0)/1000.0; Sortie:=(Filtrage/(Filtrage+Te))*Sortie+(Gain*Te)/(Filtrage+Te)*Entree; END_IF; Avec : %SW0 : Période de scrutation de la tâche maître. Permet de modifier la période de la tâche maître définie en configuration, par le programme utilisateur ou par le terminal. La période est exprimée en ms (1..255ms). %SW0=0 en fonctionnement cyclique. Soit la simulation d’un retard pur sous forme d’un bloc fonctionnel DFB « Retard » : Le contenu de ce bloc écrit en langage ST est le suivant : Nb := REAL_TO_INT(1000.0*Retard/INT_TO_REAL(%SW0)); IF (Nb>=999) THEN Nb := 999; END_IF; IF Trs THEN Memoire := Tri; Sortie := Tri; Pos := 0; ELSE Sortie := Memoire[Pos]; Memoire[Pos]:= Entree; Pos := Pos +1; IF (Pos>= Nb) THEN Pos := 0; END_IF; END_IF; 6 3] LANGAGES GRAPHIQUES 3-1) Langage LD (Ladder Diagram) ou langage à contacts) Ce langage est constitué de réseaux de contacts et de bobines entre deux barres d’alimentation. Ce langage est proche des schémas électriques. En reprenant l’exemple de la page précédente et sur API Siemens en langage à contacts STEP7 : 3-2) Langage FBD (Function Bloc Diagram) ou langage en blocs fonctionnels Ce langage se compose de réseaux de fonctions préprogrammées ou non, représentées par des rectangles. Ces blocs fonctionnels sont connectés entre eux par des lignes, le flux des signaux se faisant de la sortie (à droite ) d’une fonction vers l’entrée à gauche de la fonction raccordée. Exemples de blocs fonctionnels standards (fourni par le constructeur de logiciel): - Bloc fonctionnel compteurs - Bloc fonctionnel temporisateurs - Bloc fonctionnel PID… Bloc fonctionnel Impulsion Bloc fonctionnel Temporisateur à l’enclenchement Bloc fonctionnel Temporisateur au déclenchement Bloc fonctionnel Compteur IN Q PT PT IN Q PT PT IN Q PT PT IN PV=3 R=1 Q Exemples de blocs fonctionnels utilisateurs (développés par le programmateur et réutilisables) - Exemple 1 de la page précédente : - Exemple 2 : Alarmes niveaux Arrêt Commande Marche EV Électrovanne Seuil haut BOOL BOOL BOOL BOOL IN Q PT ET TIME BOOL TIME BOOL TP CU Q PV CV INT BOOL INT BOOL CTU R BOOL IN Q PT ET TIME BOOL TIME BOOL TON IN Q PT ET TIME BOOL TIME BOOL TOF 7 d’une cuve Cahier des charges : - Surveiller les seuils haut et bas d’une cuve - Convertir le niveau en % - Signaler un uploads/Ingenierie_Lourd/ document-1-tpauto-ts22012.pdf
Documents similaires
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/wvl3NfPAmvxnwr9XyIYorJMem9GVv7dj9I3NkxiIUI6KXeO1xXLeMlTD8iOnWDBgydSajHvGjjhGRR8VRAzXY7pZ.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/77193tnSx3OckSg6GOO8rUIXTljthN8gaii4KvR1dML085e4rLMBMVNOE1f89UaoJEXxEnUwDZKPUjaOCrYLlBKY.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/ACz9JIfNhLOZwg3O8eGgKceTFE5VItj3toZYcv915b5glA7LHiSeGcsjyKyX2Xe8UMwBCTJVDZzRXrDraIE4Yvpw.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/CWXhT03anmWhm2fj9martMzI3CgfxHc5zvdnsuXQZeU46cNwwFATHdMexfwISYSX2mFKj9moWnodg3Z6yS6PW9ec.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/paf1IHxgu2FsZGhxwNJWi1O0KD5KF6kXW3DppqP0XLR8MgWfUw7aRBjRmG3ToKJLw0BhbMfC7MRG8PyFzs5X9bbA.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/UlbslnakZzlSinBVEAfTkmW3Ap07UOqPMTaLn5cJEJ1rEwIQLwkbGOEJd1t3guGlgDyv8FF2xY58lwNOoiJt3NLH.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/mk5pEH7qbxwqQKUlWqzP7CG1qZcr2Yjseas63WsAX6vTVbvSVFvyPM1N3G0XRdYHrZhJIbAhHlCfbQjxi1yI2NFt.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/Aco788CvIUfaRBX1v0quwdelqldmL7FPopaZrXrEHhRB6JnqyBuXts3CK0hyhxBZKpwBZ2Yc1uL22rTyEZQyDHPH.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/r5c9KqUWxZx3QzEEvXIrDpnIKAdJl1uTEfVlISSf7WGhtUHxmcfsbLmQeyRYGcqiKykYRdmTWnScfUuVMgY7gBnt.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/5hEr6RrGxwzVrDgDuu2KogBTv5HixmxMD8Edl4Ga7LMqoIYov9NeOkUjy11OZ6a4X9cnq1gSEpZXmQRhaH48AVHC.png)
-
17
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 31, 2022
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 2.0648MB