Bloc fonction FB_PWM

Schéma d'affectation des broches

La figure ci-dessous présente le schéma d'affectation des broches du bloc fonction FB_PWM :

G-SG-0030563.3.gif-high.gif

 

 

Description fonctionnelle

Le bloc fonction FB_PWM est conçu pour fournir une sortie PWM (modulation de largeur d'impulsion) en fonction du paramètre d'entrée.

La sortie PWM est générée avec un temps d'activation ON et un temps de désactivation OFF conformes à l'entrée indiquée dans le premier chronogramme ci-dessous.

Par rapport au deuxième chronogramme :

oSi i_rIput est une valeur positive, la sortie PWM est disponible dans q_xPstv. L'entrée i_rIput doit être comprise entre -100 et 100. Le temps d'activation du bloc fonction PWM est calculé comme suit : Temps d'activation de PWM = (i_rIput x tPwmPeriod) / 100.

oSi i_rIput a une valeur négative, la sortie PWM est disponible dans q_xNgtv.

oSi i_rIput est supérieur à 100, la valeur est limitée à 100. Si i_rIput est inférieur à –100, la valeur est limitée à –100.

oSi i_xPwmInstUpdt a la valeur TRUE, la variation du paramètre d'entrée est mise à jour dans le cycle PWM en cours, comme indiqué sur le chronogramme.

oSi i_xPwmInstUpdt a la valeur FALSE, la variation d'entrée n'est mise à jour qu'au démarrage d'un nouveau cycle PWM.

q_xEn a la valeur TRUE tant que l'entrée i_xEn a la valeur TRUE, quelle que soit l'erreur détectée.

Cette figure présente le chronogramme du calcul de FB_PWM :

G-SG-0030564.1.gif-high.gif

 

 

Chronogramme

Cette figure présente le chronogramme du bloc fonction FB_PWM :

G-SG-0030565.2.gif-high.gif

 

 

Exemple avec un signal de fréquence

Le programme crée un signal sinusoïdal avec une période définie (5 secondes/0,2 Hz). Ce signal sinusoïdal est l'entrée de FB_PWM.

G-SE-0005728.1.gif-high.gif

 

 

Définition du bloc fonction SinGen :

G-SE-0005729.1.gif-high.gif

 

 

L'entrée stPwmPara.tCycTime du bloc fonction FB_PWM doit avoir exactement la même valeur que la période du POU dans la tâche MAST, ici 10 millisecondes (voir la zone encadrée en rouge).

G-SE-0005731.1.gif-high.gif

 

 

G-SE-0005730.1.gif-high.gif

 

 

Résultat du POU précédent :

G-SE-0005701.1.gif-high.gif

 

Bleu   Signal sinusoïdal de i_rIput à 0,2 Hz (bloc fonction My_Filter_PT1_1).

Vert   q_xPstv (un décalage est ajouté pour le tracé).

Rouge   q_xNgtv (le signal est inversé pour le tracé).

Etat d'erreur détectée

Un paramètre non valable aux entrées du bloc fonction conduit à une erreur détectée et à la génération d'un ID d'erreur détectée correspondant.

Pendant l'état d'erreur détectée, la sortie est mise à zéro.

L'erreur détectée ne peut être réinitialisée que par un front montant de l'entrée i_xErrRst. La sortie q_xBusy a la valeur TRUE, chaque fois que le bloc fonction est activé et qu'il n'y a pas d'erreur détectée.