pb régulation vanne
Posté : 01 mars 2017, 17:58
bonjour,
sous Unity et M340, je cherche à réguler une vanne de dosage avec un signal de commande en 0-10V.
j'ai fais un bout de code mais je bloque sur un endroit précis:
A l'ouverture d'une lance, je donne une consigne précise à ma vanne et ensuite au bout de 5 secondes, je voudrais rentrer dans ma boucle de régulation pour affiner. La partie affectation de consigne fonctionne bien, la partie affinage de la régulation aussi.
Que mettre comme code entre les deux pour laisser le temps à la vanne pour atteindre sa consigne et ensuite affiner le réglage.
je me doute bien que c'est une tempo, mais je ne vois pas comment faire.
Merci pour l'aide
if R_trig.Q (lance1) then consigne_auto := 1280;
elsif R_trig.Q (lance2) then consigne_auto := 1350;
elsif R_trig.Q (lance3) then consigne_auto := 2700;
elsif consigne_auto <> 0 then
ATTENTE de 5s
if dosage_auto = 1 and debit_reel < (Q_calcule - hysteresis)
then consigne_auto := consigne_auto + 5;
String_dos5 := 'Dose +';
elsif dosage_auto = 1 and debit_reel > (Q_calcule + hysteresis)
then consigne_auto := consigne_auto - 5;
String_dos5 := 'Dose -';
elsif dosage_auto = 1 then
consigne_auto := consigne_auto;
String_dos5 := 'Zone morte';
end_if;
end_if;
sous Unity et M340, je cherche à réguler une vanne de dosage avec un signal de commande en 0-10V.
j'ai fais un bout de code mais je bloque sur un endroit précis:
A l'ouverture d'une lance, je donne une consigne précise à ma vanne et ensuite au bout de 5 secondes, je voudrais rentrer dans ma boucle de régulation pour affiner. La partie affectation de consigne fonctionne bien, la partie affinage de la régulation aussi.
Que mettre comme code entre les deux pour laisser le temps à la vanne pour atteindre sa consigne et ensuite affiner le réglage.
je me doute bien que c'est une tempo, mais je ne vois pas comment faire.
Merci pour l'aide
if R_trig.Q (lance1) then consigne_auto := 1280;
elsif R_trig.Q (lance2) then consigne_auto := 1350;
elsif R_trig.Q (lance3) then consigne_auto := 2700;
elsif consigne_auto <> 0 then
ATTENTE de 5s
if dosage_auto = 1 and debit_reel < (Q_calcule - hysteresis)
then consigne_auto := consigne_auto + 5;
String_dos5 := 'Dose +';
elsif dosage_auto = 1 and debit_reel > (Q_calcule + hysteresis)
then consigne_auto := consigne_auto - 5;
String_dos5 := 'Dose -';
elsif dosage_auto = 1 then
consigne_auto := consigne_auto;
String_dos5 := 'Zone morte';
end_if;
end_if;