S7-200 и PID
Vladimir; 5.8.04

Возможно ли сделать 2 ПИД-регулятора с помощью Instruction Wizard на двух системных прерываниях?

Буду очень признателен за ответ!
Re: S7-200 и PID
Андр; 6.8.04

я вот тут тоже этой темой занимаюсь...

под системными преррываниями имелось ввиду прерывания по времени 0 и 1 ??

...имхуется мне, что невозможно,
на мой взгляд надо вручную делать.
есть такая команда PID называется, если по ней хелп посмотреть - сразу все ясно (стало мне, по крайней мере)

я вот все как там написано так и сделал.
Re: S7-200 и PID
Vladimir; 6.8.04

Такая команда есть ;)...однако примеры в документациях и хелпах ориентированы на аналоговый выход. Мне необходимо чтобы выход ПИД-регулятора воздействовал на два встроенных цифровых выхода S7-200 для открытия и закрытия соответствующего ИЭМ, управляющего процессом. Есть ли примеры реализации ПИД-регулятора с таким выходом?

Re: S7-200 и PID
Vladimir; 6.8.04

Такая команда есть ;)...однако примеры в документациях и хелпах ориентированы на аналоговый выход. Мне необходимо чтобы выход ПИД-регулятора воздействовал на два встроенных цифровых выхода S7-200 для открытия и закрытия соответствующего ИЭМ, управляющего процессом. Есть ли примеры реализации ПИД-регулятора с таким выходом?

Re: S7-200 и PID
Андр; 9.8.04

и я вот тоже пытаюсь воздействовать на два электромеханизма...

имхо надо смотреть на выход пи регулятора если он положительный то к примеру закрывать, а если отрицательный то открывать, а вообще все не так просто.
Re: S7-200 и PID
JP MIMARD; 9.8.04

If your PID output is between -100% to 100%, you can try to do something

like this :

Compare output with Zero, and wire as case box


If greater put your first relay ( for heating) to ON (or off depend on
your process), and wait a time of X.Pid output
(for example PID = 50% waiting = 500 ms, PID = 100% waiting 1000 ms, and so
on ...)
After waiting invert the digital ouput


If lower make the same action with the second relay (for cooling if exist)
and wait the absolute value of Pid.


You can have better result with a third state case, for example :
Less than -10 : R1 On, wait Pid.X, R1 Off
Between -10 to +10 : Nothing, the system is stable and the control loop can
terminate
greater than +10 : R2 On, wait Pid.x, R2 Off


good luck



Re: S7-200 и PID
JP MIMARD; 9.8.04

If your PID output is between -100% to 100%, you can try to do something

like this :

Compare output with Zero, and wire as case box


If greater put your first relay ( for heating) to ON (or off depend on
your process), and wait a time of X.Pid output
(for example PID = 50% waiting = 500 ms, PID = 100% waiting 1000 ms, and so
on ...)
After waiting invert the digital ouput


If lower make the same action with the second relay (for cooling if exist)
and wait the absolute value of Pid.


You can have better result with a third state case, for example :
Less than -10 : R1 On, wait Pid.X, R1 Off
Between -10 to +10 : Nothing, the system is stable and the control loop can
terminate
greater than +10 : R2 On, wait Pid.x, R2 Off


good luck


<<br>