Télécharger Imprimer la page

Publicité

Liens rapides

JUMO meroTRON/meroVIEW 104/108/116
Régulateur modulaire à 1/2 canaux avec fonction
API/
Indicateur numérique multifonction avec fonction API
Notice Editeur ST
70305100T96Z002K000
V2.00/FR/00767022/2024-05-23

Publicité

loading

Sommaire des Matières pour JUMO meroTRON Serie

  • Page 1 JUMO meroTRON/meroVIEW 104/108/116 Régulateur modulaire à 1/2 canaux avec fonction API/ Indicateur numérique multifonction avec fonction API Notice Editeur ST 70305100T96Z002K000 V2.00/FR/00767022/2024-05-23...
  • Page 3 Sommaire Sommaire Introduction ........... .5 Instructions relatives à...
  • Page 4 Sommaire Détection de front montant ........... . .58 Détection de front descendant .
  • Page 5 Introduction 1 Introduction Instructions relatives à la sécurité Symboles indiquant une remarque REMARQUE ! Ce pictogramme renvoie à une information importante sur le produit, sur son maniement ou ses ap- plications annexes. Renvoi ! Ce pictogramme renvoie à des informations supplémentaires dans d’autres sections, chapitres ou no- tices.
  • Page 6 1 Introduction Le langage de programmation d'automate "Texte structuré" (ST) est décrit dans la norme CEI 61131-3. Vous trouverez des informations détaillées pour la programmation dans cette norme. Le module ST de l'appareil en question ne prend en charge qu'une partie du langage de programmation décrit dans la norme.
  • Page 7 Commande 2 Commande L'éditeur ST fait partie du programme Setup et est démarré à partir de là en cliquant sur le bouton cor- respondant dans la fenêtre „Code ST“ (voir notice de mise en service). L'application achevée est transmise à l'appareil comme code ST et est traitée en permanence dans le module ST intégré.
  • Page 8 2 Commande Barre d'icônes Certaines fonctions de la barre de menu sont également disponibles dans la barre d'outils et peuvent être sélectionnées par un simple clic de souris. Une Infobulle donne la signification des icônes (avec le pointeur de la souris, pointer sur le symbole correspondant). De plus amples informations concernant les fonctions concernées s'affichent dans la barre d'état.
  • Page 9 2 Commande Symbole Signification Description Effacer le signet Effacer tous les signets (maj.+Ctrl+F2) Commuter le point d'ar- Commuter le point d'arrêt pour la ligne actuelle rêt (F9) Fenêtre d'édition Dans la fenêtre d'édition est créé le programme dans lequel sont déclarés les variables et les constantes, est créé...
  • Page 10 2 Commande L'onglet „Imprimer“ contient des messages liés au mode de débogage. Barre d'état La barre d'état se trouve en bas de l'interface du programme et indique si le mode éditeur ou débogage est actif. En mode Debug, les différents états sont affichés (MARCHE, ARRET, PAUSE). De plus amples informations sur les fonctions de la barre de menus et de la barre d'outils s'affichent dans la barre d'état (avec le pointeur de la souris pointant sur la fonction individuelle dans le menu respectif ou sur l'icône dans la barre d'outils).
  • Page 11 2 Commande Browse window L'onglet „Fonctions“ répertorie toutes les instructions et fonctions pouvant être utilisées dans l'éditeur. La partie inférieure de la fenêtre montre l'utilisation de l'instruction ou de la fonction. Le texte de fonction affiché dans la partie inférieure de la fenêtre peut être inséré dans le code ST à l'em- placement souhaité...
  • Page 12 2 Commande L'utilisateur peut activer les variables d'entrée de type „Bool“ et „Real“ ainsi que la date et l'heure dans Force-window afin de tester le code du programme. Fenêtre Variables La fenêtre Variables se compose de 2 parties (onglets). Toutes les variables système et les sorties de fonction (sorties des blocs fonctionnels) ainsi que les constantes et variables déclarées par l'utilisateur (drapeau) sont répertoriées dans l'onglet „Variables“.
  • Page 13 2 Commande Dans l'onglet "Surveillance", les variables et les constantes peuvent être affichées et observées pendant le débogage. Pour ce faire, ils doivent être copiés depuis la fenêtre d'édition ou l'onglet "Variables" par glisser-déposer et insérés dans l'onglet "Surveillance". L'insertion et la suppression ne sont possibles que si le programme n'est pas en cours d'exécution. En- suite, diverses fonctions sont également disponibles via le menu contextuel (bouton droit de la souris).
  • Page 14 2 Commande • Le programme reste chargé dans la commande Le dernier programme chargé en mode débogage doit être utilisé. • Charger le programme dans la commande. Le dernier programme chargé en mode débogage ne doit pas être utilisé. Au lieu de cela, le pro- gramme précédent (chargé...
  • Page 15 Définitions 3 Définitions La fenêtre "Parcourir" contient les définitions définies par l'utilisateur sous l'onglet Définitions (noms à valeur fixe). Par défaut, le dossier "Personnalisé" est vide. Définitions personnalisées Le dossier „Personnalisé“ contient les définitions créées par l'utilisateur dans l'éditeur ST. Pour créer une définition, utilisez la fonction „Nouveau“...
  • Page 16 3 Définitions Exemple : CASE integer_variable OF definition1: integer_variable := 5; definition2, definition3: integer_variable := 10; END_CASE;...
  • Page 17 Variables système 4 Variables système Les variables système incluent les variables d'entrée et de sortie ainsi que les variables internes. Les valeurs des différents types de données peuvent être échangées entre l'appareil et le module ST intégré dans l'appareil via les variables d'entrée et de sortie. Les variables internes ne sont pertinentes que dans le module ST et peuvent être utilisées pour réaliser certaines fonctions.
  • Page 18 4 Variables système Variables de sortie Les variables de sortie sont utilisées pour transférer les valeurs générées dans le module ST vers l'ap- pareil. Les variables de sortie sont disponibles pour la configuration dans le programme Setup et au niveau des sélecteurs dans l'appareil (sélecteur analogique et/ou numérique) et peuvent être utilisées individuelle- ment.
  • Page 19 4 Variables système real_out Désignation Désignation dans le pro- Description gramme Setup et dans l'ap- pareil real_out01 Code ST sortie analogique 1 Variables de sortie real ; utilisation flexible dans le programme Setup et dans l'appareil (sélecteur real_out10 Code ST sortie analogique 10 analogique) Dans le programme Setup, un texte descriptif peut être attribué...
  • Page 20 4 Variables système dword_out Désignation Désignation dans le pro- Description gramme Setup et dans l'ap- pareil dword_out01, (pas de désignation, affecta- Les variables de sortie à double mot de l'applica- dword_out02 tion fixe) tion ; affectation fixe : affichage du texte à l'écran En spécifiant le numéro de texte, le texte corres- pondant de la liste de textes du programme Setup s'affiche.
  • Page 21 4 Variables système Variables internes Les variables internes peuvent être utilisées pour réaliser certaines fonctions dans le code ST. ext_error Désignation Description ext_error Variable de type entier Cette variable indique les erreurs qui se sont produites lors d'accès en dehors du module ST.
  • Page 22 4 Variables système Noms alias Des noms d'alias peuvent être attribués aux variables système. La fonction des variables système peut être décrite en utilisant un nom d'alias. Dans cet exemple, l'alias „Interrupteur“ est attribué à la variable système bool_in01. Lorsque la boîte de dialogue est fermée avec "OK", l'unicité du nom saisi est vérifiée. Si le nom est déjà utilisé, un message correspondant apparaît.
  • Page 23 Types de données et champs 5 Types de données et champs Types de données Le module ST prend en charge les types de données suivants : • Valeur booléenne (BOOL) • Nombre entier non signé, 2 octets (UINT) • Nombre entier double non signé, 4 octets (UDINT) •...
  • Page 24 5 Types de données et champs Nombre entier double (4 octets) Mot-clé : UDINT Plage de valeurs : 0 à 4294967295 (0 à 232-1) Déclaration d'une variable (exemple) : udExample : UDINT; END_VAR Déclaration d'une constante (exemple) : VAR CONSTANT udConstExample : UDINT := 100000;...
  • Page 25 5 Types de données et champs Champs Tous les types de données peuvent également être déclarés comme champ unidimensionnel ou bidi- mensionnel (Array) (voir norme CEI 61131-3). Les chapitres suivants utilisent le type de données REAL comme exemple. Champ unidimensionnel Déclaration de variables (exemple : champs avec 3 variables) : rArrayExample : ARRAY [0..2] OF REAL;...
  • Page 26 5 Types de données et champs...
  • Page 27 Opérateurs 6 Opérateurs Le tableau suivant répertorie tous les opérateurs pris en charge par le module ST. L'ordre dans le tableau dépend du classement des opérateurs, en commençant par le rang le plus élevé. Opération Symbole Types de données ad- Exemple missibles Parenthèse...
  • Page 28 6 Opérateurs...
  • Page 29 Instructions 7 Instructions Le module ST prend en charge les types d'instruction suivants : • Instructions de sélection (IF, CASE) • Instructions de répétition (FOR, WHILE, REPEAT) Commandes de sélection Une instruction de sélection exécute une instruction ou un ensemble d'instructions en fonction d'une condition spécifiée.
  • Page 30 7 Instructions Instruction CASE L'instruction CASE combine plusieurs instructions conditionnelles. Elle se compose d'une expression contenant une variable de type entier et une liste de groupes d'instruction. Chaque groupe se caractérise par une marque constituée d'un ou de plusieurs nombres entier (séparés par une virgule). La valeur des variables déterminent la marque et ainsi le groupe d'instruction qui doit être exécuté.
  • Page 31 7 Instructions Instructions de répétition Les instructions de répétition (itérations) exécutent plusieurs fois des instructions et des groupes d'ins- tructions. Il existe trois types d'instructions de répétition • • WHILE • REPEAT UNTIL Instruction FOR L'instruction FOR est utilisée lorsque le nombre de répétitions est défini. Mots-clés : FOR, TO, BY, DO, END_FOR Exemples :...
  • Page 32 7 Instructions Instruction REPEAT L'instruction REPEAT fait en sorte qu'un ensemble d'instructions (et au moins une fois) soit répété jusqu'au mot-clé UNTIL jusqu'à ce que la condition booléenne associée devienne vraie (TRUE). Mots-clés : REPEAT, UNTIL, END_REPEAT Exemple : REPEAT i := i - 2;...
  • Page 33 Fonctions 8 Fonctions Le module ST prend en charge les fonctions suivantes : • Conversion de type (conversion) • Fonctions arithmétiques • Fonctions numériques • Fonctions séquence de bits (fonctions majuscule) • Fonctions logiques • Sélection (statistique) • Comparaison • Date et heure •...
  • Page 34 8 Fonctions DINT_TO_INT Convertit un nombre ENTIER (INTEGER) DOUBLE en un nombre ENTIER (INTEGER). Seuls les deux octets inférieurs sont évalués (Bit 0 à Bit 15). Exemples : a := DINT_TO_INT(1); (* a = 1; 1 = 0000 0000 0000 0001 = 0x0001 *) b := DINT_TO_INT(65535);...
  • Page 35 8 Fonctions Fonctions arithmétiques Types de données admissibles Argument: UINT, UDINT, REAL (pour Négation seulement REAL, pour Modulo seulement UINT ou UDINT) Résultat : UINT, UDINT, REAL Addition L'addition est une fonction extensible. Par conséquent, la somme des arguments est restituée Exemple : OUT := IN1 + IN2 + ...
  • Page 36 8 Fonctions Fonctions numériques Types de données admissibles Argument : REAL Résultat : REAL ABS (IN) Livre la valeur absolue de IN. Exemple : IN := -2.3; OUT := ABS(IN); (* OUT = 2.3 *) SQRT (IN) Livre la racine carrée de IN. Si IN est négatif, la valeur d'erreur 5.0E+37 est livrée.
  • Page 37 8 Fonctions SIN (IN) Livre le sinus de IN (radians). Exemple : IN := 1.5708; OUT := SIN(IN); (* 1.5708 correspond à 90°; OUT = 1.0 *) COS (IN) Livre le cosinus de IN (radians). Exemple : IN := 0.0; OUT := COS(IN);...
  • Page 38 8 Fonctions IN := 1.0; OUT := ATAN(IN); (* OUT = 0.7854 ; correspond à 45° *)
  • Page 39 8 Fonctions Fonctions séquence de bits Types de données admissibles Argument : UINT, UDINT Résultat : UINT, UDINT SHL (IN, n) Déplace la séquence de bits de l'argument IN vers la gauche de n bits. Les positions vacantes à droite sont remplacées par des 0.
  • Page 40 8 Fonctions Fonctions logiques Les variables booléennes sont combinées logiquement, tandis que les variables UINT et UDINT le sont au niveau des bits Lorsqu'il y a plus de deux paramètres, les combinaisons se font toujours par paire de gauche vers la droite.
  • Page 41 8 Fonctions Inversion (former un complément) Exemples : IN := 1; OUT := NOT IN; (* OUT = 0 *) IN := 43690; (* 1010 1010 1010 1010 *) OUT := NOT IN; (* 0101 0101 0101 0101; OUT = 21845 *)
  • Page 42 8 Fonctions Sélection Types de données admissibles Argument: UINT, UDINT, REAL (pour SEL, BOOL supplémentaire pour le sélecteur) Résultat : UINT, UDINT, REAL Le résultat retourné est l'argument le plus élevé. Exemple : OUT := MAX(8, 9, 10, 11, 12); (* OUT := 12 *) Le résultat retourné...
  • Page 43 8 Fonctions Comparaison Types de données admissibles Argument pour LT, LE, GT, GE : UINT, UDINT, REAL, DT Argument pour EQ et NE : BOOL, UINT, UDINT, REAL, DT Résultat : BOOL < (lower than) Compare les arguments pour voir si l'un est plus petit qu'un autre. Exemples : bOUT := IN1 <...
  • Page 44 8 Fonctions Date et heure Il s'agit de fonctions spécifiques ne faisant pas partie de la norme CEI 61131-3. Les fonctions peuvent être utilisées, par exemple, pour interroger la variable d'entrée rtc.cdt qui fournit la date et l'heure de l'appareil. Types de données admissibles Argument : DT, DATE_AND_TIME Résultat : UINT...
  • Page 45 8 Fonctions Exemple : iOUT := GET_SECOND(dt#2017-03-20-17:45:12); (* iOUT = 12 *) iOUT := GET_SECOND(rtc.cdt); (* iOUT = 59, quand rtc.cdt = 1970-01-01 00:00:59 *)
  • Page 46 8 Fonctions Autres fonctions Il s'agit de fonctions spécifiques ne faisant pas partie de la norme CEI 61131-3. IS_VALID Vérifie la validité du nombre REAL. Le résultat est une valeur booléenne (valide = TRUE, invalide = FALSE). Les valeurs ≥ 1.00E+37 (valeur d'erreur générale) sont considérées comme invalides, tout comme les valeurs „infini“...
  • Page 47 8 Fonctions ICON_BLUE :UINT:=2048; ALL_ICONS :UINT:=4095; END_VAR BitField := ALL_ICONS; (* All icons are controlled by ST code. *) Return := SetIconMask(BitField); BitField := ICON_NUM4 + ICON_BAS2; (* Only NUM4 and BAS2 are controlled by ST code. *) Return := SetIconMask(BitField); BitField := NO_ICONS;...
  • Page 48 8 Fonctions VAR CONSTANT NO_BUTTONS :UINT:= (* reset *) BUTTON_BACK :UINT:= BUTTON_MENU :UINT:= BUTTON_UP :UINT:= BUTTON_DOWN :UINT:= ALL_BUTTONS :UINT:= END_VAR BitField := ALL_BUTTONS; (* All buttons (keys) are locked for manual operation. *) Return := SetButtonLock(BitField); BitField := BUTTON_UP + BUTTON_DOWN; (* Only UP and DOWN are locked. *) Return := SetButtonLock(BitField);...
  • Page 49 Modules fonctionnels 9 Modules fonctionnels Instance Un module fonctionnel - appelé bloc fonctionnel dans l'éditeur ST - est une unité d'organisation de pro- gramme qui fournit une ou plusieurs valeurs lorsqu'il est exécuté (voir également norme CEI 61131-3). Un module fonctionnel peut exister dans plusieurs instances (copies). Chaque instance a son propre identificateur.
  • Page 50 9 Modules fonctionnels Logiciel-Comptage/décomptage Le compteur met à disposition les fonctions suivantes. • Comptage • Décomptage • Réinitialisation du compteur à 0 • Réglage d'une valeur de comptage supérieure • Requête pour dépasser la valeur de comptage supérieure • Requête valeur du compteur 0 •...
  • Page 51 9 Modules fonctionnels CTUD01 (IN, FALSE, FALSE, TRUE, 100); (* régler la valeur de comptage supérieure : 100 *)
  • Page 52 9 Modules fonctionnels Compteurs d'impulsion Le mode de fonctionnement du compteur d'impulsion illustre le diagramme suivant : Appel TP<Instance> (IN, PT, TimeBase); Entrées Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL Le front positif sur IN place Q pour la durée PT sur TRUE UINT Période (unité: TimeBase), pour laquelle Q = TRUE devient...
  • Page 53 9 Modules fonctionnels Remarque Le paramètre TimeBase est une extension de la norme CEI 61131-3. Cette extension n'est pas une res- triction de la norme. Le temps imparti est selon la norme „fonction de l'implémentation“. Les valeurs d'entrée/de sortie ne sont pas conservées via la mise hors tension. La résolution temporelle de la longueur d'impulsion dépend du temps de cycle de l'appareil) (exemple : 150 ms).
  • Page 54 9 Modules fonctionnels Retard à l’enclenchement Le mode de fonctionnement de l'enclenchement retardé illustre le diagramme suivant : Appel TON<Instance> (IN, PT, TimeBase) ; Entrées Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL IN = TRUE force Q = TRUE, après expiration de la période PT UINT...
  • Page 55 9 Modules fonctionnels Remarque Le paramètre TimeBase est une extension de la norme CEI 61131-3. Cette extension n'est pas une res- triction de la norme. Le temps imparti est selon la norme „fonction de l'implémentation“. Les valeurs d'entrée/de sortie ne sont pas conservées via la mise hors tension. La résolution temporelle du temps mort dépend du temps de cycle de l'appareil) (exemple : 150 ms).
  • Page 56 9 Modules fonctionnels Retard au déclenchement Le mode de fonctionnement du déclenchement retardé illustre le diagramme suivant : Appel TOF<Instance> (IN, PT, TimeBase); Entrées Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL IN = TRUE force Q = TRUE IN = FALSE force Q au temps PT retardé...
  • Page 57 9 Modules fonctionnels Remarque Le paramètre TimeBase est une extension de la norme CEI 61131-3. Cette extension n'est pas une res- triction de la norme. Le temps imparti est selon la norme „fonction de l'implémentation“. Les valeurs d'entrée/de sortie ne sont pas conservées via la mise hors tension. La résolution temporelle du temps mort dépend du temps de cycle de l'appareil) (exemple : 150 ms).
  • Page 58 9 Modules fonctionnels Détection de front montant Ce module fonctionnel détecte un front montant (passage 0 -> 1) . Appel R_TRIG<Instance> (CLK); Entrée Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL Par un front montant (0 ->...
  • Page 59 9 Modules fonctionnels Détection de front descendant Ce module fonctionnel détecte un front descendant (passage 1 -> 0) . Appel F_TRIG<Instance> (CLK); Entrée Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL Par un front descendant (1 ->...
  • Page 60 9 Modules fonctionnels bool_out01 := R_TRIG01.Q; (* impulsion brève à la sortie bool_out01 pour front montant à l'entrée *) F_TRIG01 (bool_in01); (* détection d'un front descendant à l'entrée bool_in01 *) bool_out02 := F_TRIG01.Q; (* impulsion brève à la sortie bool_out02 pour front descendant à l'entrée *)
  • Page 61 9 Modules fonctionnels Fonction bistable SR Fonction bistable (prioritaire) avec auto-maintien Appel SR<Instance> (S1, R) ; Entrées Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL S1 = TRUE force Q1 = TRUE BOOL R = TRUE force Q1 = FALSE, quand S1 = FALSE Sorties...
  • Page 62 9 Modules fonctionnels Fonction bistable RS Fonction bistable (à réinitialiser en priorité) avec auto-maintien Appel RS<Instance> (S, R1); Entrées Paramètre Type de don- Description nées <Instance> 01 à xx (indiquer une instance à deux chiffres) BOOL R1 = TRUE active Q1 = FALSE BOOL S = TRUE force Q1 = TRUE, quand R1 = FALSE Sorties...
  • Page 63 9 Modules fonctionnels Définir les paramètres du régulateur Ce module fonctionnel permet de modifier les paramètres du régulateur du second jeu de paramètres (fonction spécifique, ne fait pas partie de la norme DIN IEC 61131-3). Appel Set_CP (Controller, Parameter, Value); Entrées Paramètre Type de don-...
  • Page 64 9 Modules fonctionnels Exemple controller : UINT; (* régulateur n° *) para1 : UINT; (* paramètre 1 *) value1 : REAL; (* valeur du paramètre 1 *) para2 : UINT; (* paramètre 2 *) value2 : REAL; (* valeur du paramètre 2 *) END_VAR SET_CP (controller, para1, value1);...
  • Page 66 JUMO GmbH & Co. KG Adresse : Moritz-Juchheim-Straße 1 36039 Fulda, Allemagne Adresse de livraison : Mackenrodtstraße 14 36039 Fulda, Allemagne Adresse postale : 36035 Fulda, Allemagne Téléphone : +49 661 6003-0 Télécopieur : +49 661 6003-607 E-Mail: mail@jumo.net Internet: www.jumo.net...