PDA

Просмотр полной версии : Программное ограничение мощности ТЭНа, ПИД+ШИМ.



mabu
10.09.2016, 23:51
Добрый вечер.

Есть система, которая должна нагреваться за определенное время.
Регулирование ТЭНов осуществляется твердотельным реле с помощью ФБ ПИД-регулятора из OSCAT и PWM (ШИМ) оттуда же.
Проблема в том, что ТЭНы в системе слишком мощные и при небольшой температуре дают очень большой перегрев от уставки. ТЭНы поменять нельзя. Пробовали их переключать по другой схеме, получается слишком большое время нагрева.

Вопрос - есть ли готовые ФБ для управления (ограничения) мощностью чего-либо? Насколько я понимаю, в моем случае (сигнал с ШИМа идет дискретный), мне нужно уменьшить частоту подачи импульса, то есть "проскакивать" каждый n-ый импульс.

Подобные настройки есть в каждом железном ПИД-регуляторе, а вот в кодесисе нету...

murdemon
11.09.2016, 10:06
Просто увеличь время цикла ШИМ и увеличь интегральную составляющую ПИД. Он будет работать так что видит при данной мощности изменения температуры идет слишком быстро и будет уменьшать мощность (пока еще не дошел до уставки более медленно) и перегрева не будет, но на уставку будет выходить дольше. (или сделай чтобы коэфф интегральный менялся в зависимости от уставки температуры) Если маленькая температура, то большой коэфф и наоборот.

mabu
11.09.2016, 14:06
Просто увеличь время цикла ШИМ и увеличь интегральную составляющую ПИД. Он будет работать так что видит при данной мощности изменения температуры идет слишком быстро и будет уменьшать мощность (пока еще не дошел до уставки более медленно) и перегрева не будет, но на уставку будет выходить дольше. (или сделай чтобы коэфф интегральный менялся в зависимости от уставки температуры) Если маленькая температура, то большой коэфф и наоборот.

Спасибо за ответ.

С интегральной составляющей понятно, придется делать ее динамическую в зависимости от уставки.

А время цикла увеличить - это уменьшить частоту?

Сейчас в CTRL_PWM частота равна 10 Гц, хотя модуль вывода может ШИМ только с частотой 1 Гц.

lara197a
11.09.2016, 14:27
нагрев - процесс не очень быстрый сделайте период 5-10сек.
т.е мин будет 20 -10% соответственно.

murdemon
11.09.2016, 17:20
Да частоту сделай 0.1Гц - это 10 сек (если ты через OSCAT делаешь то скорее всего не используешь ШИМ модуля вывод) просто надо время записи в модуль вывода сделать 100мс или меньше

Alex_Chuy
29.09.2016, 18:06
Увидел похожую тему по моему вопросу, просветите, пожалуйста!
На ПЛК323 нужно реализовать регулятор температуры через дискретный выход, к которому подключается оптопара твердотельного реле или силового блока с симистором.
В библиотеке OSCAT есть блок CTRL_PWM, но нет описания входов-выходов, как с ним работать?