Попробовал в работе дифференциальный ПИД-регулятор им. Л.И.Ридико. Впечатления от него несколько противоречивые: с одной стороны, он очень быстро реагирует на изменение, но с другой – там глубина буфера состояний всего на 2 интерации, что, по-моему, скорее мешает, чем помогает.
Реверсил его по вот этому краткому описанию:
..Полученное значение температуры t поступает на PID-регулятор. Регулятор реализован в дифференциальной форме, т.е. пропорциональная составляющая превращается в дифференциальную, интегральная - в пропорциональную, а дифференциальная - во вторую производную. На выходе получаем дифференциал воздействия. Такой подход позволяет избавится от интегральной составляющей вместе с проблемой ее ограничения:
dP = Kp*(t[i]-t[i-1]) - Ki*(tset-t[i]) + Kd*(t[i]-2*t[i-1] + t[i-2])
Из дифференциала мощности и предыдущего значения мощности получаем текущее значение мощности, которую нужно подать на нагреватель:
P[i] = P[i-1] - dP
Правда, я сознательно упростил решение и не стал ставить КИХ-фильтр с децимацией на входе ПИД, а просто сделал оверсемплинг на 2 разряда (x16) с децимацией. Возможно, что причина в этом – у Ридико стоит КИХ с периодом 100 мс, который (насколько я понимаю) ослабляет влияние шумовых сигналов >5 Гц. Но не полностью уверен – надо будет почитать теорию КИХ-фильтров.
Надо будет попробовать: а) увеличить оверсемплинг до 3 разрядов (x64) и б) применить ПИД-регулятор из C-приложения к апноту AVR221 компании Atmel.
UPD. И еще из наблюдений. Так как это дифференциальный регулятор, он не реагирует на статическое состояние. Поэтому контролируемый параметр должен отличаться от уставки не менее чем на 1 . Что, впрочем, имеет значение только при использовании имитатора WSP 80.
Надо будет попробовать: а) увеличить оверсемплинг до 3 разрядов (x64) и б) применить ПИД-регулятор из C-приложения к апноту AVR221 компании Atmel.
UPD. И еще из наблюдений. Так как это дифференциальный регулятор, он не реагирует на статическое состояние. Поэтому контролируемый параметр должен отличаться от уставки не менее чем на 1 . Что, впрочем, имеет значение только при использовании имитатора WSP 80.
Комментариев нет:
Отправить комментарий
Ваш комментарий откроется после проверки и подтверждения.
Благодарю за понимание необходимости проверки!