afficher la liste des articles
STEP 7 -- Création de programmes S7 -- Exécutions des opérations
Comment programmer un générateur de signaux (carré, dent de scie, triangle et sinus) à l’aide du bloc alarme cyclique dans STEP 7 V5.x ?
Comment peut-on calculer une vitesse, une accélération et une distance ?
Comment peuvent être adressés des octets et des bits de périphérie?
Comment réaliser la dérivation numérique sous STEP 7 V5.5 ?
Comment convertir un nombre hexadécimal en caractères ASCII avec STEP 7 V5.5 ?
A quoi faut-il prendre garde pour la représentation de valeurs entières négatives lors de la visualisation dans l'éditeur CONT/LIST/LOG ?
Informations à propos de "Exécuter des opérations"
Comment se font les calculs de puissance, d'exponentielle, de racine, de polynôme, de logarithme et de valeur linéaire ainsi que la conversion des fonctions trigonométriques en degrés ?
Comment convertir un nombre de type INT en une chaîne de caractère, en S5TIME, ou en BCD et REAL ?
Comment retarder temporellement un signal de sortie en fonction d'un signal d'entrée ?
Comment cumuler des mesures de débit (par exemple quantité écoulée, vitesse d'écoulement) dans une valeur globale ?
Comment faire la surveillance d'un champ 32-Bits, évaluer la position d'un bit actif et accéder individuellement sur des bits d'un double mot ?
Comment relier ensemble des variables et des paramètres de blocs ?
Comment vérifier l'égalité de deux nombres réels ?
Comment se fait la programmation d'une intégration numérique dans S7-SCL et dans STEP 7 ?
A quel moment a lieu la première interrogation d'une séquence combinatoire ?
Que signifie l'instruction NOP du STEP7 au niveau de l'éditeur LIST ?
Comment puis je calculer avec des nombres Réels utilisés dans des formules étendues ?
Quels sont les Blocs Fonction et Blocs Fonction Standard CEI existant dans le STEP 7 pour convertir et comparer des variables String ?
Comment programmer un registre à décalage avec des instructions CONT/LOG dans STEP 7 V5.5 et V11 ?
Comment retarder temporellement un signal de sortie en fonction d'un signal d'entrée ?
Nº de référence:

Instruction:
Le tableau suivant décrit quelques exemples de programmes, comment pouvoir retarder temporellement un signal de sortie en fonction d'un signal d'entrée:
Applications et exemples de programme
1

Le fichier à télécharger "DeadTime.zip" contient un bloc fonctionnel FB115, qui décale temporellement le signal d'entrée et le transforme en signal de sortie. Les variables suivantes d'entrée, de sortie, et statiques sont contenues dans le FB115:

  • Variables d'entrée:
    INV:  de type REAL pour le signal d'entrée.
    N_SMP:  de type INT pour le multiplicateur.
    COM_RST:  de type BOOL pour le lancement.
  • Variables de sortie:
    OUTV: de type REAL pour le signal de sortie.
  • Variables statiques:
    STORE: mémoire de données de type ARRAY [0..19] OF REAL

L'appel du FB115 se fait cycliquement dans l'OB d'alarme OB35 afin d'être traité sur un intervalle de temps périodique indépendant du temps de traitement du programme. A chacun des intervalles de temps, le signal d'entrée est enregistré dans la variable statique "STORE". Dans le paramètre "N_SMP" est défini le nombre d'enregistrements intermédiaires; à chaque intervalle de temps, chacun des états du signal est transféré dans la mémoire suivante. Lorsque le dernier enregistrement de donnée défini est atteint, l'état est finalement copié dans la variable de sortie "OUTV". Il peut y avoir jusqu'à 20 enregistrements définis (ARRAY [0..19]). Les intervalles de temps pour le transfert de chacun des enregistrements représente une mesure du retard temporel.


Image 01

Exemple:
Le signal de la variable d'entrée "INV" doit être retardé d'une seconde dans le FB115, avant d'apparaître au niveau du paramètre de sortie "OUTV". L'OB35 a un cycle d'appel par défaut de 100 ms. Le multiplicateur, au niveau de la variable d'entrée "N_SMP" doit contenir dans ce cas la valeur 10.

  • DeadTime  = "N_SMP" * (intervalle d'appel de l'OB35) = 10 * 100 ms = 1000 ms = 1 s.

Téléchargement:
Le téléchargement proposé contient le projet STEP7 avec les blocs décrits au dessus. Ouvrir et copier le fichier "DeadTime.zip" dans un répertoire distinct. Le projet STEP7 V5.3 sera alors automatiquement décompacté avec l"ensemble de ses sous répertoires associés. Ensuite, le projet peut être ouvert et édité avec le SIMATIC Manager. Le bloc fonctionnel FB115 est techniquement documenté au niveau des commentaires en anglais et en allemand.

DeadTime.zip ( 52 KB ) (52 KO)

2

Le téléchargement "S_Delay.zip" contient un bloc fonctionnel FB100, qui pouvant retarder temporellement 32 signaux d'entrée avec ses 32 sorties. Les variables suivantes sont contenues dans le FB100:

  • Variables d'entrée :
    X0 ... X31: de type BOOL pour les 32 signaux d'entrées numériques
    tv_TIMER: de type TIMER pour la saisie d'une temporisation, comme T1
    tv_LAST: de type S5TIME pour la définition du temps de retard
  • Variables de sortie :
    Y0 ... Y31: de type BOOL pour les 32 signaux de sortie numériques
  • Variables statiques :
    HSP: de type BOOL, pour le contrôle de la temporisation de la sortie suivante
  • Variables temporaires :
    SLZ: de type INT, compteur pour le saut LOOP de la boucle

L'ensemble des 32 sorties peuvent être retardées temporellement via une temporisation et le retard minimal est de 10mS. Le nombre d'entrées et de sorties est librement sélectionnable.

Fonction:
La première entrée est directement transférée vers la première sortie. Toutes les autres entrées sortiront les unes après les autres après l'écoulement du temps de retard sur leurs sorties. Si toutes les entrées sont mises à 1 simultanément, toutes les sorties (Y0 ... Y31) passeront à 1 après leur temps de retard au niveau de leur signal de sortie.

L'image 02 monte un exemple de 5 signaux de sortie montés simultanément. Les entrées Y1 à Y4 auront alors, les unes après les autres, leur signal de sortie temporellement retardé. Il est possible d'utiliser par exemple ce bloc pour l'allumage, les uns après les autres, de gros consommateurs.


Image 02

Téléchargement:
Le téléchargement proposé contient le projet STEP 7 avec les blocs décrits au dessus. Ouvrir et copier le fichier "S_Delay.zip" dans un répertoire distinct. Le projet STEP 7 V5.3 sera alors automatiquement décompacté avec l"ensemble de ses sous répertoires associés. Ensuite, le projet peut être ouvert et édité avec le SIMATIC Manager.

S_Delay.zip ( 33 KB ) (33 KO)

3 Le téléchargement "StepZero" contient la fonction FC100 pour l'application d'une étape 0, dans laquelle le signal d'entrée est retardé une fois temporellement jusqu'à une certaine heure pour être transféré sur la sortie. Les variables d'entrée et de sortie suivantes sont contenues dans le FC100:
  • Variables d'entrée:
    Tcurrent: de type TIME pour la détermination de l'heure courante
    Tzero: de type TIME pour la définition de la fin de l'étape 0
    INV: de type REAL pour le signal d'entrée
  • Variables de sortie:
    OUTV: de type REAL pour le signal de sortie

Cette fonction calcule, pour une étape nulle (sortie sans signal), la durée et pilote la sortie à retardement selon les conditions suivantes:

  1. Tcurrent < Tzero: OUTV = 0.0
  2. Tcurrent = Tzero: OUTV = INV
  3. Tcurrent > Tzero: OUTV = INV

Exemple d'utilisation du programme dans le FC100:
Au niveau de l'OB1, il y a une extraction du format de donnée "TIME_OF_DAY" à partir du format "DATE_AND_TIME" fourni par la variable temporaire "OB1_DATE_TIME" au moyen de la fonction IEC FC8. L'heure dans la journée fournie (ex. T#10h22m48s474ms) est transmise au paramètre "Tcurrent". L'heure de fin de l'étape 0, renseignée au niveau du paramètre "Tzero" (ex. T#11h10m), est totalement libre. Le signal de sortie de la variable "OUTV" est, dans cet exemple, égal à 0 tant que la variable d'entrée "Tcurrent" n'a pas atteint l'heure de 11h10. A  partir de ce moment, le signal de sortie est la recopie du signal d'entrée.


Image 03

Téléchargement:
Le téléchargement proposé contient le projet STEP 7 avec les blocs décrits au dessus. Ouvrir et copier le fichier "StepZero.zip" dans un répertoire distinct. Le projet STEP 7 V5.3 sera alors automatiquement décompacté avec l"ensemble de ses sous répertoires associés. Ensuite, le projet peut être ouvert et édité avec le SIMATIC Manager. La fonction FC100 est techniquement documentée au niveau des commentaires en anglais et en allemand..

StepZero.zip ( 34 KB ) (34 KO)

Différences des téléchargements:
Le tableau suivant explique la différence entre les téléchargements "DeadTime", "S_Delay" et "StepZero".
 
Téléchargements: DeadTime S_Delay StepZero
Application: retard temporel de signaux REAL retard temporel de signaux BOOL retard temporel de signaux REAL
Nombre des entrées: 1 32 3
Nombre des sorties: 1 32 1
Type de donnée des entrées et sorties: REAL BOOL REAL, TIME
Réalisation du retard temporel: avec un OB d'alarme cyclique comme l'OB35 avec déclenchement (SE) par ex. T1 OB1, (OB35)

Condition et environnement de test:
Les exemples sont chargeables dans toutes les variantes de CPU des gammes SIMATIC S7-300, S7-400 , C7 et WinAC. Dans le tableau suivant sont indiquées les conditions dans lesquelles cette contribution a été créée et a été vérifiée fonctionnellement:
 
Environnement de test Version
Plateforme PC Processeur Intel(R) Pentium(R) M 1,73 GHz, 1,49 GO RAM
Système d'exploitation du PC MS Windows XP Professional SP2
STEP7 V5.3 SP3
Paquet logiciel optionnel S7-PLCSIM V5.3 SP1

Note :
Le nombre de temporisation est limité selon la CPU et dans certains cas, plus de temporisations sont nécessaires. Le bloc fonctionnel système SFB 4 (TON) n'utilise pas le type de données S5-Time mais le type "TIME" qui est également plus simple à manipuler en millisecondes (pas de base de temps). Avec ce bloc, des temporisations plus longues peuvent être réalisées.

 ID contribution:1005801   Date:2006-12-21 
Cette contribution...m´a aidéne m´a pas aidé                                 
mySupport
My Documentation Manager 
Lettre d'information 
CAx-Download-Manager 
Demande d'assistance technique
A propos de cet article
Imprimer
Créer PDF 
Envoyer l'article
QuickLinks
Outil de compatibilité 
Aide
Aide en ligne
Guided Tour