Exemple de fonctionnement PTO
Conseil
Dans la description suivante des séquences d'initialisation et de fonctionnement de PTO, nous vous
recommandons d'utiliser le mémento Premier cycle (SM0.1) pour initialiser la sortie d'impulsions. En effet,
l'utilisation de ce mémento pour appeler un sous-programme d'initialisation réduit le temps de cycle, car
les cycles suivants n'appellent pas ce sous-programme (le mémento "Premier cycle" est mis à 1
uniquement lors du premier cycle suivant un passage à l'état "Marche"). Toutefois, votre application peut
présenter d'autres contraintes vous imposant d'initialiser ou de réinitialiser la sortie d'impulsions. Dans ce
cas, vous pouvez utiliser une autre condition pour appeler le programme d'initialisation.
Initialisation de PTO pour un fonctionnement en mode segment unique
Typiquement, vous utilisez un sous-programme pour configurer et initialiser la fonction PTO pour la sortie
d'impulsions. Vous appelez le sous-programme d'initialisation dans le programme principal. Initialisez la
sortie utilisée par la fonction PTO à 0 à l'aide du mémento "Premier cycle" (SM0.1) et appelez un
sous-programme pour exécuter les commandes d'initialisation. L'appel d'un sous-programme permet de
mieux structurer le programme et, comme il n'est pas exécuté lors des cycles suivants, le temps de cycle
n'est pas allongé.
Une fois que vous avez créé l'appel du sous-programme d'initialisation dans le programme principal,
procédez comme suit pour créer la logique de commande servant à configurer la sortie d'impulsions Q0.0
dans le sous-programme d'initialisation :
1.
Chargez l'une des valeurs suivantes dans l'octet de commande SMB67 : 16#85 (pour sélectionner la
microseconde comme unité de temps) ou 16#8D (pour sélectionner la milliseconde comme unité de
temps).
Ces deux valeurs valident PTO/PWM, sélectionnent le mode PTO, demandent la mise à jour de la
valeur de comptage des impulsions et de la période et sélectionnent l'unité de temps (microseconde
ou milliseconde).
2.
Chargez une valeur de mot pour la période dans SMW68.
3.
Chargez une valeur de double mot pour la valeur de comptage des impulsions dans SMD72.
4.
Facultatif : Pour exécuter une fonction associée dès que la sortie de trains d'impulsions est achevée,
vous pouvez programmer une interruption en associant, via l'opération ATCH, l'événement "Train
d'impulsions achevé" (événement d'interruption 19) à un programme d'interruption, puis exécuter
l'opération ENI (Valider tous les événements d'interruption).
5.
Exécutez l'opération PLS afin que le S7-200 programme le générateur PTO/PWM.
6.
Quittez le sous-programme.
Modification de la période PTO (mode segment unique)
En mode PTO à segment unique, vous pouvez utiliser un programme d'interruption ou un sous-programme
pour modifier la période. Procédez comme suit pour modifier la période PTO dans un programme
d'interruption ou un sous-programme lorsque vous utilisez le mode PTO segment unique :
1.
Définissez l'octet de commande (validation de la fonction PTO/PWM, sélection du mode PTO,
sélection de l'unité de temps et mise à jour de la période) en chargeant une des valeurs suivantes
dans l'octet SMB67 : 16#81 (microseconde comme unité de temps) ou 16#89 (milliseconde comme
unité de temps).
2.
Chargez une valeur de mot pour la nouvelle période dans SMW68.
3.
Exécutez l'opération PLS afin que le S7-200 programme le générateur PTO/PWM. Le S7-200 achève
toute fonction PTO en cours avant de commencer à générer le signal PTO avec la période mise à
jour.
4.
Quittez le sous-programme ou le programme d'interruption.
Jeu d'opérations S7-200
Chapitre 6
6
135