Vous êtes sur la page 1sur 11

Formation d'impulsions avec SFB43/FB43 "PULSEGEN"

Introduction
Le bloc SFB43/FB43 "PULSEGEN" (pulse generator) sert construire un rgulateur PID sortie
d'impulsion pour actionneurs proportionnels.
Le manuel lectronique se trouve sous Dmarrer > Simatic > Documentation > Franais >
Rgulateurs PID.

Utilisation
Le bloc SFB43/FB43 "PULSEGEN" permet de construire des rgulateurs PID deux ou trois
chelons avec modulation de la dure d'impulsion. Ce bloc fonctionnel est combin le plus souvent
avec le rgulateur continu "CONT_C".

CONT_C PULSEGEN
LMN INV

Nota
Le calcul des valeurs dans les blocs de rgulation n'est effectu correctement que si le bloc
est appel intervalles rguliers. C'est pourquoi il convient d'appeler les blocs de rgulation
dans un OB d'alarme cyclique (OB30 OB38). Prcisez la priode dans le paramtre
CYCLE.

Description
PULSEGEN transforme la grandeur d'entre INV (= LMN du rgulateur PID) par modulation de la
dure d'impulsion en un train d'impulsions dure de priode constante correspondant au temps de
cycle selon lequel la grandeur d'entre est mise jour, priode que vous indiquez au paramtre
PER_TM.
La dure d'une impulsion par dure de priode est proportionnelle la grandeur d'entre. Mais le
cycle paramtr au moyen de PER_TM n'est pas identique au cycle de traitement du bloc SFB/FB
"PULSEGEN". Un cycle PER_TM se compose de plusieurs cycles de traitement du SFB/FB
"PULSEGEN", le nombre d'appels du SFB/FB "PULSEGEN" par cycle PER_TM tant une mesure de
la prcision de la dure d'impulsion.
INV 100
(LMN) 80

50
50
30

0 t

QPOS_P
1

0 t
Cycle PULSEGEN
PER_TM (=cycle CONT_C)

Modulation de la dure d'impulsion


Une grandeur d'entre de 30% et 10 appels du bloc SFB/FB "PULSEGEN" par cycle PER_TM
signifient donc :
1 la sortie QPOS pour les trois premiers appels du SFB/FB "PULSEGEN" (30% de 10 appels),
0 la sortie QPOS pour les sept appels suivants du SFB/FB "PULSEGEN" (70% de 10 appels).

Schma fonctionnel

POS_P_ON

NEG_P_ON

SYN_ON,
STEP3_ON, MAN_ON
ST2BI_ON
1
#
QPOS_P
INV QNEG_P

PER_TM,
P_B_TM,
RATIOFAC

Prcision de la valeur de rglage


Dans cet exemple, un "rapport d'chantillonnage" de 1:10 (1 appel de CONT_C pour 10 appels de
PULSEGEN) limite la prcision de la valeur de rglage 10%, c'est--dire que les valeurs d'entre
INV donnes ne peuvent tre reprsentes sur une dure d'impulsion la sortie QPOS que dans une
trame de 10%.
La prcision augmente avec le nombre d'appels du SFB/FB "PULSEGEN" par appel de CONT_C.
Par exemple, en appelant PULSEGEN 100 fois plus souvent que CONT_C, on atteint une rsolution
de 1% de la plage de valeur de rglage.

Nota
Vous devez programmer vous-mme la rduction de la frquence des appels.

Synchronisation automatique
Il est possible de synchroniser automatiquement la sortie d'impulsion avec le bloc qui met jour la
grandeur INV (par exemple CONT_C). Cette manire de procder garantit qu'une grandeur d'entre
modifiante sera sortie en tant qu'impulsion aussi rapidement que possible.
Le formateur des impulsions value toujours la grandeur d'entre INV intervalles dtermins par la
dure de priode PER_TM et il transforme la valeur en une impulsion de la dure correspondante.
Mais comme INV est calcule le plus souvent dans un niveau d'alarme d'horloge plus lent, il
conviendrait que le formateur d'impulsions commence le plus vite possible aprs la mise jour de
INV transformer la valeur discrte en une impulsion.
A cet effet, le bloc peut synchroniser lui-mme le dmarrage de la priode selon le procd suivant :
Quand INV a chang et que l'appel de bloc ne se trouve pas dans le premier ou dans les deux
derniers cycles d'appel d'une priode, une synchronisation est effectue. La dure d'impulsion est
calcule de nouveau et la sortie commence ds le cycle suivant avec une nouvelle.
LMN = INV = 30,0 LMN = INV = 80,0 LMN = INV = 50,0
Traitement de CONT_C ....
t

CYCLE de CONT_C

Dmarrage de
la priode
1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1
....
t

PER_TM PER_TM
CYCLE de
PULSEGEN Synchronisation du Synchronisation pas
dmarrage de la priode ncessaire

PULSEGEN reconnat que INV PULSEGEN reconnat que INV


a chang et que l'appel ne se est devenu 80,0 ou 50,0 et que
trouve pas dans le premier ou l'appel se trouve dans le premier
dans les deux derniers cycles ou dans les deux derniers cycles
de la priode. de la priode.

Traitement de PULSEGEN Traitement de PULSEGEN dans le premier ou dans les deux derniers
cycles de la priode

Vous pouvez dsactiver la synchronisation automatique l'entre SYN_ON (=FALSE).

Nota
Une fois la synchronisation effectue, la valeur ancienne de INV (c'est--dire de LMN) est
reprsente avec plus ou moins de prcision sur le signal d'impulsion cause du dbut de la
nouvelle priode.

Modes de fonctionnement
Selon le paramtrage du formateur des impulsions, vous pouvez configurer des rgulateurs PID avec
soit une action trois chelons, soit une sortie deux chelons bipolaire ou unipolaire. Le tableau
ci-aprs montre comment valoriser les commutateurs pour obtenir les diffrents modes.

Mode de fonctionnement MAN_ON STEP3_ON ST2BI_ON


Rgulation trois chelons FALSE TRUE quelconque
Rgulation deux chelons avec plage FALSE FALSE TRUE
de valeur de rglage bipolaire
(100 % 100 %)
Rgulation deux chelons avec plage FALSE FALSE FALSE
de valeur de rglage unipolaire
(0 % 100 %)
Mode manuel TRUE quelconque quelconque

Rgulation trois chelons


En mode de fonctionnement "Rgulation trois chelons", il est possible de gnrer trois tats du
signal de rglage. A cet effet, les tats des sorties binaires QPOS_P et QNEG_P sont affects aux
tats de fonctionnement respectifs de l'actionneur. Le tableau ci-dessous propose l'exemple d'une
rgulation thermique :

Signal de sortie Chauffer Dsactiv Refroidir


QPOS_P TRUE FALSE FALSE
QNEG_P FALSE FALSE TRUE

A partir de la grandeur d'entre, la dure d'impulsion est calcule au moyen d'une caractristique. Le
trac de cette caractristique est dfini par la dure minimum d'impulsion ou de pause et par le
facteur de rapport.
La valeur normale du facteur de rapport est 1.
Les points d'inflexion des caractristiques sont causs par la dure minimum d'impulsion ou de
pause.
Dure minimum d'impulsion ou de pause
Une dure minimum d'impulsion ou de pause P_B_TM, paramtre correctement, peut viter les
dures brves de mise en circuit ou hors circuit qui ont une influence nfaste sur la dure de vie des
composants de commutation et des dispositifs de rglage.

Nota
Les valeurs absolues basses de la grandeur d'entre LMN, qui creraient une dure d'impulsion
infrieure P_B_TM, sont rprimes. Les grandeurs d'entre leves, qui creraient une dure
d'impulsion suprieure (PER_TM - P_B_TM), sont forces 100% ou 100%.

La dure des impulsions positives ou ngatives est obtenue en multipliant la grandeur d'entre (en
%) par la dure de priode :

INV
Dur. impuls. = PER_TM
100

La figure suivante montre la caractristique symtrique d'une rgulation 3 chelons (facteur de


rapport = 1) :
Dure de Activation
l'impulsion continue
positive
PER_TM
PER_TM - P_B_TM

P_B_TM
-100 %

100 %
Dsactivation
continue
Dure de
l'impulsion
ngative

Rgulation trois chelons, dissymtrique


Vous pouvez modifier le rapport de la dure des impulsions positives celle des impulsions
ngatives grce au facteur de rapport RATIOFAC. Dans un processus thermique, cela permet, par
exemple, de faire intervenir des constantes de temps diffrentes pour le chauffage et le
refroidissement.
Le facteur de rapport a aussi une influence sur la dure minimum d'impulsion ou de pause. Un
facteur de rapport < 1 signifie que la valeur de seuil pour impulsions ngatives est multiplie par le
facteur de rapport.
Facteur de rapport < 1
La dure d'impulsion la sortie d'impulsion ngative, obtenue en multipliant la grandeur d'entre par
la dure de priode, est diminue du facteur de rapport.

INV
Dure impulsion pos. = PER_TM
100

INV
Dure impulsion ng. = PER_TM RATIOFAC
100

La figure suivante montre la caractristique dissymtrique d'une rgulation 3 chelons (facteur de


rapport = 0.5)
Dure de
l'impulsion positive
PER_TM
PER_TM P_B_TM

-200% P_B_TM

P_B_TM 100%

PER_TM P_B_TM
PER_TM
Dure de
l'impulsion negative

Facteur de rapport > 1


La dure d'impulsion la sortie d'impulsion positive, obtenue en multipliant la grandeur d'entre par
la dure de priode, est diminue du facteur de rapport :

INV
Dure d'impulsion ng. = PER_TM
100

INV PER_TM
Dure d'impulsion pos. =
100 RATIOFAC

Rgulation deux chelons


Pour la rgulation deux chelons, seule la sortie d'impulsion positive QPOS_P de PULSEGEN est
relie l'actionneur entre-sortie appropri. Selon le mode de fonctionnement paramtr, le
rgulateur deux chelons a une plage de valeur de rglage bipolaire ou unipolaire.
Rgulateur deux chelons avec plage de valeur de rglage bipolaire
(100% 100%)
Dure de l'impulsion positive Activation
continue
PER_TM
PER_TM - P_B_TM

Dsactivation
continue
P_B_TM

-100,0 % 0,0 % 100,0 %

Rgulateur deux chelons avec plage de valeur de rglage unipolaire


(0% 100%)

Dure de l'impulsion positive

PER_TM
PER_TM - P_B_TM

P_B_TM

0,0 % 100,0 %

QNEG_P fournit la sortie inverse au cas o la connexion du rgulateur deux chelons dans la
boucle de rgulation exigerait un signal binaire logiquement invers pour les impulsions de rglage.

Impulsion Activ Dsactiv


QPOS_P TRUE FALSE
QNEG_P FALSE TRUE

Mode manuel en rgulation deux ou trois chelons


En mode manuel (MAN_ON = TRUE), les sorties binaires du rgulateur deux ou trois chelons
peuvent tre forces au moyen des signaux POS_P_ON et NEG_P_ON indpendamment de INV.

Rgulation POS_P_ON NEG_P_ON QPOS_P QNEG_P


Rgulateur trois chelons FALSE FALSE FALSE FALSE
TRUE FALSE TRUE FALSE
FALSE TRUE FALSE TRUE
TRUE TRUE FALSE FALSE
Rgulateur deux chelons FALSE quelconque FALSE TRUE
TRUE quelconque TRUE FALSE

Initialisation
Le bloc SFB43/FB43 "PULSEGEN" dispose d'un sous-programme d'initialisation qui est excut
quand le paramtre d'entre COM_RST est 1.
Toutes les sorties sont mises zro.

Informations d'erreur
Le mot d'indication d'erreur RET_VAL n'est pas employ.

Paramtres d'entre

Paramtre Type de Valeurs Par Description


donnes admises dfaut
INV REAL -100,0 0,0 INPUT VARIABLE / Variable d'entre
100,0 (%) Une grandeur rglante analogique est applique ce
paramtre d'entre.
PER_TM TIME >=20*CYCLE T#1s PERIOD TIME / Dure de priode
La dure de priode constante de la modulation de
largeur d'impulsion est entre ce paramtre d'entre.
Elle quivaut la priode d'chantillonnage du
rgulateur. Le rapport de la priode d'chantillonnage du
formateur d'impulsions celle du rgulateur dtermine la
prcision de la modulation de dure d'impulsion.
P_B_TM TIME >= CYCLE T#0ms MINIMUM PULSE/BREAK TIME / Dure minimum
d'impulsion ou de pause
Ce paramtre d'entre permet de paramtrer une largeur
minimale d'impulsion ou de pause.
RATIOFAC REAL 0,1 10,0 1,0 RATIO FACTOR / Facteur de rapport
Ce paramtre d'entre permet de modifier le rapport de
la dure des impulsions ngatives celle des impulsions
positives. Dans un processus thermique, ceci permet de
compenser des constantes de temps diffrentes pour le
chauffage et le refroidissement (ex.: processus avec
chauffage lectrique et refroidissement l'eau).
STEP3_ON BOOL TRUE THREE STEP CONTROL ON / Activation de la rgulation
trois chelons
Ce paramtre d'entre permet d'activer le mode de
fonctionnement concern. Pour une rgulation trois
chelons, les deux sorties travaillent.
ST2BI_ON BOOL FALSE TWO STEP CONTROL FOR BIPOLAR MANIPULATED
VALUE RANGE ON / Activation de la rgulation deux
chelons pour plage bipolaire de valeur de rglage
Ce paramtre d'entre permet de choisir entre plage de
valeur de rglage bipolaire ou unipolaire.
Il faut que STEP3_ON = FALSE.
MAN_ON BOOL FALSE MANUAL MODE ON / Activation du mode manuel
Quand ce paramtre d'entre est 1, les sorties peuvent
tre forces la main.
POS_P_ON BOOL FALSE POSITIVE PULSE ON / Activation de l'impulsion positive
En mode manuel de rgulation trois chelons, ce
paramtre d'entre permet de forcer la sortie QPOS_P.
En mode manuel de rgulation deux chelons,
QNEG_P est toujours force l'inverse de QPOS_P.
NEG_P_ON BOOL FALSE NEGATIVE PULSE ON / Activation de l'impulsion
ngative
En mode manuel de rgulation trois chelons, ce
paramtre d'entre permet de forcer la sortie QNEG_P.
En mode manuel de rgulation deux chelons,
QNEG_P est toujours force l'inverse de QPOS_P.
SYN_ON BOOL TRUE SYNCHRONISATION ON / Activation de la
synchronisation
En mettant 1 ce paramtre d'entre, vous pouvez
synchroniser automatiquement la sortie d'impulsion avec
le bloc qui met jour la grandeur de sortie INV. Ceci
garantit que les changements de la grandeur de sortie
seront sortis le plus vite possible sous forme d'impulsion.
COM_RST BOOL FALSE COMPLETE RESTART
Le bloc a un sous-programme d'initialisation qui est
excut quand cette entre est 1.
CYCLE TIME >= 1ms T#10ms SAMPLE TIME / Priode d'chantillonnage
Le temps s'coulant entre les appels de bloc doit tre
constant. Ilest indiqu par cette entre.

Nota
Les valeurs des paramtres d'entre ne sont pas limites dans le bloc, les paramtres ne sont
pas vrifis.

Paramtres de sortie

Paramtre Type de Valeurs Par Description


donnes admises dfaut
QPOS_P BOOL FALSE OUTPUT POSITIVE PULSE / Sortie d'impulsion positive
Ce paramtre de sortie est 1 quand il s'agit de sortir
une impulsion. En rgulation trois chelons, c'est
l'impulsion positive. En rgulation deux chelons,
QNEG_P est toujours force l'inverse de QPOS_P.
QNEG_P BOOL FALSE OUTPUT NEGATIVE PULSE / Sortie d'impulsion ngative
Ce paramtre de sortie est 1 quand il s'agit de sortir
une impulsion. En rgulation trois chelons, c'est
l'impulsion ngative. En rgulation deux chelons,
QNEG_P est toujours force l'inverse de QPOS_P.

Voir aussi
Exemple avec le bloc PULSEGEN