Показать сообщение отдельно
Старый 30.03.2011, 10:18   #14
ujin
Senior Member
 
Аватара для ujin
 
Регистрация: May 2010
Адрес: Novosibirsk
Сообщения: 761
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Фреоновый охладитель с аналоговым управлением

Делал алгоритм каскадного регулирования для котлов
В кратце (по памяти) суть такова:
1 Регулируем значение температуры на выходе установки - "стратегический" датчик
2 Заданное значение температуры на выходе каскада установок рассчитываем одним регулятором, устанавливаем для всех установок (учитывается наружная температура, заданная температура на выходе каскада установок, фактическая температура на выходе каскада)
3 Устанавливаем очередь из установок (по наработке)
4 Очередь меняем раз в сутки (двое, трое)
5 Первая установка по череди включается первой. Регулируем значение температуры на выходе из первой установки регулятором первой установки.
У алгорита управления установкой есть выходы - состояние, мощность максимальная, мощность фактическая, мощность минимальная.
6 Алгоритм каскадного управления разбит на ступени. Первая ступень (по очереди) активна всегда (если включена вся установка). Следующая ступень включается, если суммарная мощность всех включенных ступеней достигнет 0,9 (0,95) от их максимального значения. Ступень выключается если суммарная мощность всех включенных ступеней снизится менее 0,6 (либо можно вычислить более сложно) от максимального значения мощности ступеней, исключая последнюю. Причем в качестве фактической мощности выбирается либо фактическое значение, либо заданное значение регулятором соответствующей установки (чтобы не было ловушек в виде принудительного ограничения мощности вручную). При оценке на повышение выбираем максимальное значение. При оценке на понижение минимальное значение.
Когда установка включается к счетчику включенных установок добавляется единица
В случае отклонения температуры по сигналу стратегического датчика на величину более например 5 С к счетчику включенных установок так же добавляется 1. Если температура на стратегическом датчике приблизилась к заданной - стала меньше на 1 С (0,5) от номера включенных установок отнимается 1.
7 Между включением отключением установок необходимо установить время запрета изменений, чтобы все установки не включились резко.
8 Если установка находится в состоянии останов, отказ, ручной - она пропускается и ее мощность не учитывается ни в максимальной ни в текущей мощности. К счетчику включенных установок добавляется 1.
9 Если текущий номер установки по очереди меньше чем счетчик включенных, установка включается независимо от заданной, фактической мощности.
Этот алгоритм опробован, работает.
Разделены функции.
Главный регулятор вычисляет заданную температуру. Алгоритм каскадного регулирования рассчитывает количество включенных установок.
Каждая установка самостоятельно, по своим параметрам пытается выйти на заданное значение температуры, при этом если она неправильно настроена, может всех тормознуть, так как решение о включении следующей принимается исходя из мощности, которую задала сама установка. Для устранения этой ловушки предусмотрено увеличение номера счетика включенных установок от главного регулятора, однако при этом скорость выхода на режим всего каскада уменьшается. При выключении ступени надо бы поднять мощность оставшихся сразу, не дожидаясь пока сработает пид регулятор установки.

Если возможен как нагрев, так и охлаждение, регуляторы установок должны быть от -100% до 100% (а не от 0 до 100%). Каждая установка также выдает централизованно заданную температуру на своем выходе. И соответственно в алгоритм каскадного регулирования надо добавлять отрицательную ветку. Этого нету

Более подробно и как это сделано фактически, только для контроллеров TAC. В переложении для Segnetics пока нет.
ujin вне форума   Ответить с цитированием