Page 1 sur 1
Questions très basiques sur STEP7 (Débutant)
Posté : 01 juil. 2019, 10:41
par gladoul
Bonjour,
Je suis un étudiant en Master Génie Electrique et Informatique Industrielle.
Je suis en plein stage dans une usine de production où Je travaille sur un système de régulation PID en cascade.
Mon encadreur m'a demandé de décrypter le programme automate sur Step7, et comme j'en ai fais peu j'aimerais poser quelques questions basiques..
Sur la photo suivante, on a le premier bloc FC60 qui traite de la conversion d'une variable type INT en type TIME.
J'ai compris qu'on a utilisé un bloc FC car on a juste besoin d'une fonction pour convertir et qu'on a donc pas besoin de mémoire.
J'ai un problème dans ma compréhension sur l'entrée qu'on doit declarer. sur la liste des mnémoniques du programme automate c'est INT_TO_TIME_OBJ qui est déclaré et non #OB35_EXC_FREQ.
dans ma compréhension actuelle: INT_TO_TIME_OBJ est le nom du bloc et #OB35_EXC_FREQ la variable d'entrée qu'on doit déclarer.
Est-ce-que quelqu’un peut m'apporter plus d'explication?

Re: Questions très basiques sur STEP7 (Débutant)
Posté : 01 juil. 2019, 11:07
par djé
gladoul a écrit : ↑01 juil. 2019, 10:41
J'ai compris qu'on a utilisé un bloc FC car on a juste besoin d'une fonction pour convertir et qu'on a donc pas besoin de mémoire.
J'ai un problème dans ma compréhension sur l'entrée qu'on doit declarer. sur la liste des mnémoniques du programme automate c'est INT_TO_TIME_OBJ qui est déclaré et non #OB35_EXC_FREQ.
dans ma compréhension actuelle: INT_TO_TIME_OBJ est le nom du bloc et #OB35_EXC_FREQ la variable d'entrée qu'on doit déclarer.
INT_TO_TIME_Obj c'est le mnémonique du bloc FC60
#OB35_EXC_FREQ c'est une variable locale auto-déclarée à la création du bloc OB35 (bloc d'alarme cyclique) qui contient la valeur de la période d'exécution d'appel du bloc (valeur paramétrée dans la configuration matérielle, propriétés de la CPU -> onglet alarmes cyclique, )
Re: Questions très basiques sur STEP7 (Débutant)
Posté : 02 juil. 2019, 09:54
par gladoul
djé a écrit : ↑01 juil. 2019, 11:07
gladoul a écrit : ↑01 juil. 2019, 10:41
J'ai compris qu'on a utilisé un bloc FC car on a juste besoin d'une fonction pour convertir et qu'on a donc pas besoin de mémoire.
J'ai un problème dans ma compréhension sur l'entrée qu'on doit declarer. sur la liste des mnémoniques du programme automate c'est INT_TO_TIME_OBJ qui est déclaré et non #OB35_EXC_FREQ.
dans ma compréhension actuelle: INT_TO_TIME_OBJ est le nom du bloc et #OB35_EXC_FREQ la variable d'entrée qu'on doit déclarer.
INT_TO_TIME_Obj c'est le mnémonique du bloc FC60
#OB35_EXC_FREQ c'est une variable locale auto-déclarée à la création du bloc OB35 (bloc d'alarme cyclique) qui contient la valeur de la période d'exécution d'appel du bloc (valeur paramétrée dans la configuration matérielle, propriétés de la CPU -> onglet alarmes cyclique, )
Bonjour,
Impecable, j'ai bien compris
sur l'onglet alarmes cyclique j'ai pu voir que mon programme s'effectue chaque 100ms.. par contre juste à coté, il y a marqué: priorité 12. avez vous plus de details à m'apporter?
Une autre question:
sur l'image du bloc que j'ai posté, il y a marqué comme entrée base_de_temps, pouvez vous me dire à quoi cela sert?
Re: Questions très basiques sur STEP7 (Débutant)
Posté : 02 juil. 2019, 12:23
par djé
Bonjour,
Il y a beaucoup de contenu explicatif dans l'aide de STEP7 (touche F1).
La priorité gère le fonctionnement du déclenchement d'une OB par rapport à l'autre lors de l’exécution du programme :
Les blocs d'organisation définissent l'ordre (événements de déclenchement) dans lequel les différentes parties du programme sont traitées. L'exécution d'un OB peut être interrompue par l'appel d'un autre OB. Cette interruption se fait selon la priorité : les OB de priorité plus élevée interrompent les OB de priorité plus faible. La priorité la plus faible est celle de l'OB d'arrièreplan.
Comme les teutons aiment bien se compliquer la tache, l'OB d'arrière plan OB90 à une classe de priorité 29 mais subtilité:
A la classe de priorité 29 correspond la priorité 0.29. La priorité du cycle en arrière-plan et donc inférieure à celle du cycle libre.
Pour ton entrée base de temps, faut regarder à l’intérieur du bloc FC60 pour comprendre à quoi il sert.