Перейти к содержанию
    

Оптимизация системы регулирования

Добрый день,

 

нужен совет от более опытных товарищей по вопросу оптимизации системы регулирования температуры.

 

Есть два исполнительных механизма - Нагреватель и Холодильник (теплообменник), которые должны обеспечивать на объекте заданную температуру с погрешностью +/-1K.

 

Диапозон рабочих температур +15 - +150°C.

 

На каждый исполнительный элемент стоит свой ПИ регулятор.

 

post-83211-1432025000_thumb.jpg

 

Проблема заключена в том, что по схеме они включены параллельно и работают друг против друга на некоторых температурных режимах.

Например при регулировании 35°C, колебания в системе довольно ощутимы, уход температуры +/-2K.

 

Данная схема напоминает трехпозиционное регулирование, за тем отличием, что в этом включении не предусмотрено контактное расстояние...

 

Подскажите, как и что здесь можно оптимизировать?

 

У меня у самого есть следующая идея:

 

1. На температуре выше комнатной, сделать ПИ регулятор нагревателя - главным, а ПИ регулятор холодильника вспомогательным. Т.е. включать охлаждение только тогда, когда ПИ регулятор нагревателя генерирует отрицательное значение управляющего воздействия на объект и отключать холодильник, когда ПИ регулятор нагрева снова генерирует положительную мощность нагрева.

 

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

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. На температуре выше комнатной, сделать ПИ регулятор нагревателя - главным, а ПИ регулятор холодильника вспомогательным. Т.е. включать охлаждение только тогда, когда ПИ регулятор нагревателя генерирует отрицательное значение управляющего воздействия на объект и отключать холодильник, когда ПИ регулятор нагрева снова генерирует положительную мощность нагрева.

Хммм... А как бы случай, что температура соответствует заданному (в заданных пределах) и ТЭН и холодильник вырубить - Вы вообще не рассматриваете??

Или жарить или морозить и без вариантов!... :smile3046:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как мне кажется, регулятор (контур регулирования с обратной связью) должен быть один, просто выход регулятора, в зависимости от знака, преобразовывать во включение ТЭНа или холодильника с разными коэффициентами. Более того, ПИ-регулятора тут недостаточно, и нужно вводить диффернциальную составляющую (ПИД), без неё система будет колебаться, что Вы и наблюдаете.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хммм... А как бы случай, что температура соответствует заданному (в заданных пределах) и ТЭН и холодильник вырубить - Вы вообще не рассматриваете??

Или жарить или морозить и без вариантов!... :smile3046:

 

Отчего же, такой вариант вполне возможен, но наступает он только при некоторых особенных обстоятельствах.

Я не полностью, к сожалению, дал представление об объекте...

Это гидравлическая система регулирования, в которой должно осуществляться регулирование, как и расхода (до 400 л/мин), так и температуры теплоносителя. Причем теплоноситель проходит по "замкнутому" контуру - бак - труба - испытательный образец - труба - бак.

 

Поэтому на систему регулирования температуры сушественное влияние оказывает давление в системе и расход, - практически вся гидравлическая энергия уходит в тепло.

При комнатной температуре в 20°C, после запуска стенда на уровне 50 л/мин расхода, рост температуры составляет порядка 15°.

Т.е. только если нужно регулировать на этой температуре ничего не нужно греть и охлаждать...

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

 

 

На самом деле и ПИ регуляторы ведут себя хорошо, после того, как была сделана идентификация параметров объекта по нагреву и охлаждению.

И, по сути все регулирование осуществляется не через hardware регуляторы, а через software (т.е. программы) написанные мной лично в LabVIEW, в которой и осуществляется слежение за всем чем только можно и обработкой данных.

 

Вопрос мой был несколько в ином, на рисунке - то состояние, которое я получил на момент выполнения работы, - а в тексте ниже те идеи к которым я пришел. Мне нужно понять, правильно ли я осознал проблему и ее устранил таким подходом..

 

Просто есть некоторые сомнения, что можно сделать еще лучше...

 

 

Из пока не решенной проблемы осталась проблема, когда нужно охладить систему скажем со 150°C до 17°C, - в этом случае холодильник дает слишком сильный перелет, и врубается нагреватель, - хотя на этом режиме требуется лишь охлаждение...

 

Если охлаждать с темп. 35°C - точка стационарного состояния при расходе 50 l/min до 17°C то все ОК - регулятор корректно выходит на задание.

(Идентификация параметров холодильника, как раз была осуществленна на этом режиме)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

См. #3 + ПИД.

 

Я все равно упорно не понимаю зачем использовать ПИД регулирование, у меня и так практически идеальный выход на уставку и регулирование даже не в пределах +/-1K, а +/-0.2K.

 

post-83211-1432106736_thumb.jpg

 

Проблема при охлаждении с высокой на сверхнизкую температуру заключена, как мне кажется в том, что накапливается И-часть... Но ведь ее можно или сбросить (сделать reset регулятора при наступлении события, скажем достижении им 35°C) или добавить Wind-Up защиту от ненужного интегрирования...

 

Хотя конечно можно и добавить 3 коэффициент в регулятор, парметры объекта то мне известны...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я все равно упорно не понимаю зачем использовать ПИД регулирование, у меня и так практически идеальный выход на уставку и регулирование даже не в пределах +/-1K, а +/-0.2K.

Еще один член в регуляторе никогда не бывает лишним, если правильно им пользоваться.

Проблема при охлаждении с высокой на сверхнизкую температуру заключена, как мне кажется в том, что накапливается И-часть... Но ведь ее можно или сбросить

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

Альтернатива - задатчик не менять скачком, а адекватно максимальной скорости нагрева медленно вести к новой точке. Если нужно охладить до не очень низких температур, нужно включить холодильник на фиксированное время, которое определяется экспериментально. Так, чтобы не сильно перескочить или недоскачить. Регулятор на это время отключить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ПИД-регулятор не предназначен для отслеживания больших отклонений.

 

А, большие отклонения, это начиная от каких значений?

 

Не думаю, что следует так поступать поступать с холодильником...

Экспериментально, конечно же можно определить, что угодно... Только вот холодильник, вернее говоря его способности к охлаждению, зависят от многих параметров:

 

1. Объемного рассхода обоих потоков (хладагента, основного теплоносителя)

2. от средней разности температур обоих потоков.

 

А, ведь тогда получается, что один эксперимент будет истинным только для какого-то одного набора входных величин (охлаждение со 150°C до 100°C, будет быстрее чем со 100 до 50°C)

 

И, раз мы заговорили о физике...

 

То у меня вот какой вопрос созрел...

 

У меня носитель моторное масло, которое в зависимости от температуры обладает разной удельной теплоемкостью.

При 65°C - 2016 Дж/(кг*K)

при 90°C - 2106 Дж/(кг*K)

 

С физической точки зрения это означает, что для нагрева масла при 90°C на 1К нужно отдать в 2106/2016 = 1.044 раза, чем на тот же один градус при температуре 65°C.

 

К чему мой вопрос, - идентификация параметров теплового объекта - процесс слишком длительный...

 

Можно ли при идентифицированных параметрах при одном температурном режиме (35°C - 65°C)

W(p) = K/(Tp+1) = 6/(6500p+1)

 

Сделать вывод о том, что коеффициент усиления объекта K при температуре 90°C, будет в те 1.044 раза меньше?

 

Или такой фокус не проходит, из-за возрастающих тепловых потерь с ростом температуры в окружающую среду?

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из пока не решенной проблемы осталась проблема, когда нужно охладить систему скажем со 150°C до 17°C, - в этом случае холодильник дает слишком сильный перелет, и врубается нагреватель, - хотя на этом режиме требуется лишь охлаждение...

Вот именно для компенсации таких "перелетов" и существует дифференциальная часть в регуляторе, от которой Вы упорно отказываетесь. В формировании управляющего значения участвует не только разность уставки и текущей температуры, но и скорость её изменения. Если на пальцах - когда температура полетела вниз, дифференциал отключит холодильник раньше, чем просто ПИ, как бы предвидя и предсказывая "поведение" объекта, и перелета не произойдет (при правильной настройке коэффициентов регулятора).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А, большие отклонения, это начиная от каких значений?

Большие отклонения - это когда регулятор выходит из линейного режима - зашкаливает какой-нибудь член... или их сумма.

Непонятно, почему Вы не поняли про включение холодильника на определенное время.

Вот включаете холодильник при самой высокой температуре и регистрируете температуру от времени. Из этой зависимости можно найти необходимое время. Еще нужно учесть, что охлаждение будет продолжаться некоторое время после выключения холодильника.

Изменение теплоемкости в Вашем случае не нужно учитывать (менять коэффициенты).

Еще скажу, что при некоторой температуре стабилизация будет лучше при одновременной работе и нагревателя, и холодильника.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще скажу, что при некоторой температуре стабилизация будет лучше при одновременной работе и нагревателя, и холодильника.

 

Да, такой эффект я уже наблюдал, до начала своих работ.

Тогда регулятор был настроен на нагрев с немыслимым Kp = 25, и Ti = 120s. И, в нем существовало такое понятие, как рабочая зона, т.е. интегрирование наступало только тогда, когда регулируемая величина входила в эту самую рабочую зону.

(Сейчас у меня Kp = 3.47, Ti = 7879)

 

Но при такой стабилизации, энергия расходуется неоптимально...

Например при 35°C,несмотря на то, что комнатная температура = 20°C, не требуется ни охлаждения, ни нагрев... Жидкость в диапозоне от комнатной до 35°C нагреется лишь за счет гидравлической энергии течения жидкости..

 

А, с тем немыслимым Kp = 25, чтобы поддерживать эту температуру, с одновременных охлаждением, приходилось выделять 12% от макс. мощности нагрева (17kW)

 

А, если установка должна нарабатывать 1.000.000 часов для испытания лишь одного элемента... То от показаний счетчика, за счет за эл. энергию явно никто радоваться не будет... :rolleyes:

 

А, почему коеффициенты регулятора не нужно менять?

 

Если я делаю идентификацию от 35°C на 5% мощности нагрева то температура вырастет до 65°C, то есть коеф. усиления контура =6

Если я делаю идентификацию от 65°С на 5% мощности то температура вырастет до 88°C, то есть коеффицент усиления контура = 4.6, т.е. станет меньше, из-за тепловых потерь, которых станет больше...

 

 

В таком случае, как мне кажется, чтобы объект как и прежде быстро выходил на задание, нужно повысить Kp регулятора. (Конечно он и с теми параметрами выйдет, но ведь ему тогда больше на то потребуется времени... когда он там наинтегрирует, то что нужно)

 

Или я в чем-то неправ?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В таком случае, как мне кажется, чтобы объект как и прежде быстро выходил на задание, нужно повысить Kp регулятора. (Конечно он и с теми параметрами выйдет, но ведь ему тогда больше на то потребуется времени... когда он там наинтегрирует, то что нужно)

 

Или я в чем-то неправ?

Максимальная скорость перехода к другой температуре (при ее увеличении) зависит только от максимальной мощности нагревателя при правильной настройке ПИД-регулятора. Дифференциальная составляющая дает возможность увеличить коэффициент усиления и вместе с этим и скорость установления.

В этом деле еще очень важно в нужном месте установить датчик температуры. От этого будет зависеть устойчивость. По поводу экономии электроэнергии... Вы должны определить целевую функцию. Если кардинально экономить, - выключить все совсем, а данные брать с потолка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дифференциальная составляющая дает возможность увеличить коэффициент усиления и вместе с этим и скорость установления.

 

Все, вы меня уговорили.. Завтра включу для тестов D часть :rolleyes:

 

Может быть и действительно окажется зря, что я gain sheduling неделю программировал :rolleyes:

 

По регулированию, у меня еще остался еще один вопрос

1. Необходимо ли использовать фитрацию сигнала задающего воздения; регулируемой величины от шумов измерений?

 

До меня коллеги использовали фильтр скользящего среднего для защиты от шумов измерений, - но я его удалил, так как он менял параметры звена до неузнаваемости ( PTt звено с его помощью превращалось в подобие PTt с увеличеным значением запаздывания)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все, вы меня уговорили.. Завтра включу для тестов D часть :rolleyes:

 

 

По регулированию, у меня еще остался еще один вопрос

1. Необходимо ли использовать фитрацию сигнала задающего воздения; регулируемой величины от шумов измерений?

 

До меня коллеги использовали фильтр скользящего среднего для защиты от шумов измерений, - но я его удалил, так как он менял параметры звена до неузнаваемости ( PTt звено с его помощью превращалось в подобие PTt с увеличеным значением запаздывания)

Вы в натуре экспериментируете или в Лабвью?

Естественно, фильтрация такого вида увеличивает задержку. Нужна ли она, сказать нельзя. Все зависит от пространственного положения датчика(ов?) и нагревателя(ей).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы в натуре экспериментируете или в Лабвью?

 

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

 

Проблема заключена в шестереночной помпе (она дает сильные пульсации при прокачке жидкости).

Ну, и по всей видимости в частоте дискретизации (200ms), нужно бы конечно уменьшить до 50ms, но тогда счетчик расхода начинает сходить с ума...

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...