Questions très basiques sur STEP7 (Débutant)

Forum traitant des automates industriels de marque Siemens.
Répondre
gladoul
Code sa première boucle
Code sa première boucle
Messages : 14
Enregistré le : 24 avr. 2019, 11:39

Questions très basiques sur STEP7 (Débutant)

Message 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?

Image
Avatar du membre
djé
Dieu du process
Dieu du process
Messages : 780
Enregistré le : 20 oct. 2015, 09:55
Localisation : Bretagne, Pays de la Loire, Nantes

Re: Questions très basiques sur STEP7 (Débutant)

Message 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, )
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.

Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
gladoul
Code sa première boucle
Code sa première boucle
Messages : 14
Enregistré le : 24 avr. 2019, 11:39

Re: Questions très basiques sur STEP7 (Débutant)

Message 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?
Avatar du membre
djé
Dieu du process
Dieu du process
Messages : 780
Enregistré le : 20 oct. 2015, 09:55
Localisation : Bretagne, Pays de la Loire, Nantes

Re: Questions très basiques sur STEP7 (Débutant)

Message 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ère­plan.
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.
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.

Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
Répondre