Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Переходная функция ПИ-регулятора
Форум разработчиков электроники ELECTRONIX.ru > Силовая Электроника - Power Electronics > Обратная Связь, Стабилизация, Регулирование, Компенсация
Diusha
Мало имел дела с регуляторами, так что, возможно, ерунду спрашиваю...
Из формулы, которую везде приводят, явно следует, что переходная функция не может быть без колебаний (что вижу и на практике).
Ведь когда регулируемая величина доползет до требуемого значения, ошибка станет =0, но из-за интегрального члена она обязана перескочить требуемое значение, и только тогда значение интеграла начнет уменьшаться по модулю. Дальше перескок в обратную сторону –> затухающие колебания, сходящиеся к требуемому значению.
Откуда на картинках берутся графики без перерегулирования?
Tanya
Цитата(Diusha @ Jan 30 2017, 14:24) *
Мало имел дела с регуляторами, так что, возможно, ерунду спрашиваю...
Из формулы, которую везде приводят, явно следует, что переходная функция не может быть без колебаний (что вижу и на практике).

Это не так. Вот тут долго обсуждалось -https://electronix.ru/forum/index.php?s=&showtopic=73921&view=findpost&p=730199
Diusha
Обсуждалось действительно долго, но все-таки другое. То, что «это то не так», там только констатировалось. Буду признателен, если разжуете или подкинете ссылочку, где я найду ответ на мой вопрос.
Tanya
Цитата(Diusha @ Jan 30 2017, 17:02) *
Обсуждалось действительно долго, но все-таки другое. То, что «это то не так», там только констатировалось. Буду признателен, если разжуете или подкинете ссылочку, где я найду ответ на мой вопрос.

Не другое. Обратите внимание на мою дискуссию с Oldring. Он как раз и утверждал, что невязка (разбаланс) в любом случае будет знакопеременной. Но был переубежден.
Чисто математически - дифференциальное уравнение второго порядка, описывающее такую систему, может иметь три решения (одно из них (второе) является граничным и нереализуемо практически). Третье - с затухающими осцилляциями, а первое - апериодическое движение.
На пальцах - легко представить печку, нагреваемую ПИ-регулятором с большой постоянной времени интегратора и малым усилением. При приближении к равновесию пропорциональный член очень мал, а интегральный медленно и печально увеличивает нагрев, который выходит на стационар через бесконечно большое время. Асимптотически.
HardEgor
Цитата(Diusha @ Jan 30 2017, 18:24) *
Откуда на картинках берутся графики без перерегулирования?

Процесс без перерегулирования будет апериодическим - всё зависит от коэффициентов регулятора.
Есть разные методики расчет коэффициентов в зависимости от желаемого компромисса между скоростью регулирования и допустимым перерегулированием, ищите по ключевым словам: Ziegler-Nichols, Cohen-Coon, Wang-Juang-Chan, Chien-Hrones-Reswick
ViKo
Например, для роботов-манипуляторов перерегулирование недопустимо.
Diusha
Я, кажется, понял, что не с тем маслом курил эти регуляторы.
Tanya, я правильно (теперь) понимаю, что величина kp*err(t)+ki*integral(0,t)err(s)ds и является (если «плясать от печки») тем самым напряжением, которое мы подаем на нагреватель печки?
До сих пор я думал, что эта величина – добавка к напряжению на предыдущем шаге.

Цитата(Tanya @ Jan 30 2017, 18:50) *
Чисто математически - дифференциальное уравнение второго порядка, описывающее такую систему, может иметь три решения (одно из них (второе) является граничным и нереализуемо практически). Третье - с затухающими осцилляциями, а первое - апериодическое движение.

Не понял, что Вы имеете в виду. Чисто математически, по теореме единственности, это ДУ имеет единственное решение. Я его даже нашел для пресловутой печки с ПИ-регулятором. Оно состоит из двух слагаемых: константа и exp*sin.

Цитата(HardEgor @ Jan 30 2017, 18:57) *
ищите по ключевым словам: Ziegler-Nichols, Cohen-Coon, Wang-Juang-Chan, Chien-Hrones-Reswick

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

Цитата(ViKo @ Jan 30 2017, 22:27) *
Например, для роботов-манипуляторов перерегулирование недопустимо.

Предполагаю, что Вы не тот смысл вложили в слова «не может быть без колебаний», «обязана»
ViKo
Цитата(Diusha @ Jan 31 2017, 07:21) *
Предполагаю, что Вы не тот смысл вложили в слова «не может быть без колебаний», «обязана»

Я?
Diusha
Цитата(ViKo @ Jan 31 2017, 10:16) *
Я?

Да. Не тот смысл, который я в них вкладывал. Иначе не понятно, к чему такое очевидное замечание sm.gif

Цитата(Tanya @ Jan 30 2017, 18:50) *
Чисто математически - дифференциальное уравнение второго порядка, описывающее такую систему, может иметь три решения (одно из них (второе) является граничным и нереализуемо практически). Третье - с затухающими осцилляциями, а первое - апериодическое движение.

Ааа, кажется догадываюсь. Нумерация, показавшаяся поначалу странной (второе, третье, первое), навела на мысль, что подразумевается «решение ДУ, в зависимости от комбинации коэффициентов, может иметь 3 вида...».
Уменя, правда, получилось, что общий вид всегда один

ViKo
Цитата(Diusha @ Jan 31 2017, 09:53) *
Да. Не тот смысл, который я в них вкладывал. Иначе не понятно, к чему такое очевидное замечание sm.gif

Очевидно, к тому, что в некоторых случаях перерегулирование допустимо, чтобы быстрее установиться, а в некоторых нет. И в тех, в которых нет, его нет.
Tanya
Цитата(Diusha @ Jan 31 2017, 07:21) *
Я, кажется, понял, что не с тем маслом курил эти регуляторы.
Tanya, я правильно (теперь) понимаю, что величина kp*err(t)+ki*integral(0,t)err(s)ds и является (если «плясать от печки») тем самым напряжением, которое мы подаем на нагреватель печки?

Не напряжением, а мощностью. если для печки. И знаки не те.
Вот для печки мощность (два ваших члена) равна температура с точкой (производная от температуры по времени), умноженная на теплоемкость. Если взять еще раз производную получится дифференциальное уравнение второго порядка - уравнение колебательного контура. Если навниматиться, то можно увидеть, что получено уравнение для грузика на пружинке, где пропорциональный член представляет трение, а интегральный - пружинку.
Цитата(Diusha @ Jan 31 2017, 07:21) *
Не понял, что Вы имеете в виду. Чисто математически, по теореме единственности, это ДУ имеет единственное решение. Я его даже нашел для пресловутой печки с ПИ-регулятором. Оно состоит из двух слагаемых: константа и exp*sin.

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

Цитата(Diusha @ Jan 31 2017, 09:53) *
У меня, правда, получилось, что общий вид всегда один

Вы не один так заблуждаетесь... https://electronix.ru/forum/index.php?s=&am...st&p=175147
Не знаю, радоваться этому или...
iosifk
Цитата(ViKo @ Jan 31 2017, 11:56) *
Очевидно, к тому, что в некоторых случаях перерегулирование допустимо, чтобы быстрее установиться, а в некоторых нет. И в тех, в которых нет, его нет.

И в "некоторых" случаях применяется еще и нелинейное регулирование... Например в усилителях с быстрым откликом. При большом рассогласовании между входом и выходом включается генератор накачки тока в каскады, что дает усилителю малую постоянную времени переходного процесса. А когда быстрая часть переходного процесса пройдет и напряжение рассогласования уменьшится, то генератор отключается и далее идет чисто апериодический процесс... Еще так же ходят лифты. Быстро подъезжают к этажу, а потом медленно подходят к уровню пола...
AlexandrY
Цитата(Diusha @ Jan 30 2017, 13:24) *
Откуда на картинках берутся графики без перерегулирования?


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

Однако это просто везение, когда удается иметь дело с системами второго порядка.
Для систем более 4-го порядка никто вам уверенно не скажет можно ли получить гладкую переходную без затухающей осцилляции в принципе. Ибо там только численные решения.

Цитата(iosifk @ Jan 31 2017, 13:28) *
Быстро подъезжают к этажу, а потом медленно подходят к уровню пола...

В современных лифтах идет отработка траектории строго по PID.
Diusha
Цитата(Tanya @ Jan 31 2017, 14:53) *
И знаки не те.

Те или не те – зависит от того, что понимать под err. Ну это так...

Спасибо, Tanya.
А также всем неравнодушным.

На самом деле, соль, которую я отсюда вынес, – вот она:
Цитата(Diusha @ Jan 31 2017, 08:21) *
я правильно (теперь) понимаю, что величина kp*err(t)+ki*integral(0,t)err(s)ds и является ... тем самым напряжением, которое мы подаем на нагреватель?

Цитата(Tanya @ Jan 31 2017, 14:53) *
Не напряжением, а мощностью.

AlexandrY
Цитата(Diusha @ Jan 31 2017, 14:59) *
На самом деле, соль, которую я отсюда вынес, – вот она:

Как только в вашей модели управления появляется мощность вы теряете ее линейность.
И вся теория усложняется многократно.
Так что подумайте.
Diusha
По-моему все усложнение заключается в том, чтобы извлечь квадратный корень
Tanya
Цитата(AlexandrY @ Jan 31 2017, 16:10) *
Как только в вашей модели управления появляется мощность вы теряете ее линейность.
И вся теория усложняется многократно.
Так что подумайте.

Думать полезно.
Только подача мощности в данном случае (печка) делает систему линейной. Для мотора - ток.
Я так думаю.

Цитата(Diusha @ Jan 31 2017, 16:20) *
По-моему все усложнение заключается в том, чтобы извлечь квадратный корень

Но это не сложность, а необходимость.
Обычно возводится в квадрат напряжение и подается в обратную связь после интегрирования.
Точнее - управляющее воздействие (вычисленное) складывается (вычитается) с квадратом напряжения и интегрируется.
Diusha
Цитата(Tanya @ Jan 31 2017, 18:02) *
Только подача мощности в данном случае (печка) делает систему линейной.

Согласен. А для того чтобы подать мощность, нужно из нее (вычисленной по вышеупомянутой формуле) извлечь корень и подать его (этот корень) в виде напряжения.
Ну это если пренебречь изменением сопротивления грелки от температуры.

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

Цитата(Diusha @ Jan 31 2017, 18:17) *
Ну это если пренебречь изменением сопротивления грелки от температуры.

Собственно, и пренебрегать не надо. Если R(T) известно, то можно учесть, оставаясь в линейной задаче.
AlexandrY
Цитата(Diusha @ Jan 31 2017, 16:48) *
Собственно, и пренебрегать не надо. Если R(T) известно, то можно учесть, оставаясь в линейной задаче.

С печками никогда не бывает линейной задачи, поскольку там есть задержка.
Tanya
Цитата(AlexandrY @ Jan 31 2017, 18:02) *
С печками никогда не бывает линейной задачи, поскольку там есть задержка.

Никогда... "Никогда не говори "никогда"" и не горячитесь. Вот проволочка из чистого металла - нагреватель и термометр в одном флаконе.
И в печке задержки нет. Есть динамическое распределение тепла, тепловые волны...
Надо правильно располагать нагреватель и датчик.

Цитата(Diusha @ Jan 31 2017, 17:48) *
Согласен. А для того чтобы подать мощность, нужно из нее (вычисленной по вышеупомянутой формуле) извлечь корень и подать его (этот корень) в виде напряжения.
Ну это если пренебречь изменением сопротивления грелки от температуры.

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

А что у Вас за "печка"? Если меняется неконтролируемо, то есть такой путь - измерять динамику быстро.
Корень в некоторых случаях медленно вычисляется процессором. Помогают аналоговые умножители.
Diusha
Цитата(AlexandrY @ Jan 31 2017, 19:02) *
С печками никогда не бывает линейной задачи, поскольку там есть задержка.

Вроде сама по себе задержка линейность не портит.

Цитата(Tanya @ Jan 31 2017, 19:20) *
А что у Вас за "печка"?

Печка как раз такая:
Цитата(Tanya @ Jan 31 2017, 19:20) *
Вот проволочка из чистого металла - нагреватель и термометр в одном флаконе.

И на нее дует ветер... или не дует.
По-моему это в модели сводится к изменению теплоемкости.

Цитата(Tanya @ Jan 31 2017, 19:20) *
Если меняется неконтролируемо, то есть такой путь - измерять динамику быстро.

Динамику чего?
Если я правильно понял, то учет динамики превратит в ПИД.

Цитата(Tanya @ Jan 31 2017, 19:20) *
Корень в некоторых случаях медленно вычисляется процессором. Помогают аналоговые умножители.

Проще аппроксимировать полиномом.
Tanya
Цитата(Diusha @ Jan 31 2017, 19:20) *
Печка как раз такая:

И на нее дует ветер... или не дует.
По-моему это в модели сводится к изменению теплоемкости.

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

Постоянный ток. Измеряется температура. По сопротивлению мостовым способом.

Постоянная температура. Измеряется подводимая мощность.
Может. есть еще какие-нибудь.
Если проволока тонкая, то в первом случае ее небольшая теплоемкость несколько замедляет отклик.
Во втором - мощность подводимая равна отводимой. Но реализовать такое сложнее. Тут уже ПИД нужен.
Diusha
Цитата(Tanya @ Jan 31 2017, 21:12) *
Теплоемкость проволоки не меняется. Меняется теплоотдача, которую и нужно измерять.

Мне поначалу показалось, что можно к теплоемкости свести – ошибся.

Цитата(Tanya @ Jan 31 2017, 21:12) *
Во втором - мощность подводимая равна отводимой. Но реализовать такое сложнее. Тут уже ПИД нужен.

У мну второй. Но тут из кожи лезть бессмысленно, поскольку из-за дурацкой конструкции (долго бодался с начальством, но не проломить) присутствует утечка, которую вообще не учесть и еще есть бяки. Все равно хорошо сделать не получится (по вышеупомянутой причине), так что, думаю, с ПИД заморачиваться не стоит того.
Tanya
Цитата(Diusha @ Jan 31 2017, 20:29) *
Мне поначалу показалось, что можно к теплоемкости свести – ошибся.


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

Какая разница ПИ или ПИД... Если не использовать аналоговый регулятор, то на контроллере, например, STM32F303 можно уложиться в микросекундный диапазон. Там есть ПИД-библиотека. Д-член добавит скорости. А вот корень лучше аналоговым способом.
Какая утечка? Что и куда течет?
AlexandrY
Цитата(Diusha @ Jan 31 2017, 18:20) *
Вроде сама по себе задержка линейность не портит.

Ну если экспонента в операторном полиноме вам ничего не портит, то да.
Но народ обычно задержку апроксимирует дополнительной рациональной дробью, которая повышает порядок системы и вносит ошибку в модель.
Цитата(Tanya @ Jan 31 2017, 19:43) *
А вот корень лучше аналоговым способом.

Нет, ну это кощунство!
Обычный MK66 семейства Kinets (Cortex-M4) от NXP делает корень в double за 3.75 мкс
И между прочим некоторые представители в серии Kinetis имеют специальный сопроцессор для операций извлечения корня.
Diusha
Цитата(Tanya @ Jan 31 2017, 21:43) *
Какая утечка? Что и куда течет?

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

Цитата(Tanya @ Jan 31 2017, 21:43) *
Какая разница ПИ или ПИД...

Лишняя возня с доп. коэффициентом. Не потому что я пофигист, а потому что овчинка выделки (при упомянутом выше). Плюс еще по техническим причинам во всем диапазоне нормально подобрать нет возможности. Начнутся еще колебания страшные.

Цитата(Tanya @ Jan 31 2017, 21:43) *
например, STM32F303

Контроллер другой, железо уже есть.

Цитата(AlexandrY @ Feb 1 2017, 11:43) *
Ну если экспонента в операторном полиноме вам ничего не портит, то да.
Но народ обычно задержку апроксимирует дополнительной рациональной дробью, которая повышает порядок системы и вносит ошибку в модель.

Дык я ж не говорю, что ничего не портит. Я говорю, что линейность не портит.
Повышение порядка не есть превращение линейности в нелинейность.

Цитата(AlexandrY @ Feb 1 2017, 11:43) *
Нет, ну это кощунство!

А вот здесь согласен!
Ну наверно можно найти случаи, где аналоговые вычисления оправданы, может даже где не обойтись... Может быть для управления каким-нибудь атомным реактором, где нужна молниеносность
Herz
Цитата(AlexandrY @ Feb 1 2017, 09:43) *
Обычный MK66 семейства Kinets..

Коллега, Вы Kinets тут рекламируете? Похоже, Вы его в каждой теме поминаете... biggrin.gif Есть и другие МК, не хуже.
AlexandrY
Цитата(Diusha @ Feb 1 2017, 12:25) *
Дык я ж не говорю, что ничего не портит. Я говорю, что линейность не портит.

Линейность портит. Нарушено правило гомогенности.
Цитата(Herz @ Feb 1 2017, 13:27) *
Коллега, Вы Kinets тут рекламируете? Похоже, Вы его в каждой теме поминаете... biggrin.gif Есть и другие МК, не хуже.

Да ну?
А что же их никто не рекламирует? biggrin.gif
Реклама Kinetis для понимающих это все равно что реклама воздуха.
Поэтому это не реклама. laughing.gif
Tanya
Цитата(AlexandrY @ Feb 1 2017, 10:43) *
Нет, ну это кощунство!
Обычный MK66 семейства Kinets (Cortex-M4) от NXP делает корень в double за 3.75 мкс
И между прочим некоторые представители в серии Kinetis имеют специальный сопроцессор для операций извлечения корня.

Неплохой аналоговый умножитель (не буду рекламировать) имеет полосу 250МГц.
Я вот не хочу, чтобы вычислитель вносил транспортную задержку.
AlexandrY
Цитата(Tanya @ Feb 1 2017, 13:47) *
Неплохой аналоговый умножитель (не буду рекламировать) имеет полосу 250МГц.

А вот тут пишут что делали цифровые умножители на 40 ГГц еще в 2005 году.
Tanya
Цитата(Diusha @ Feb 1 2017, 13:25) *
Тепло из нагревателя в конструкцию, нагревает ее, и при следующем включении девайса условия уже другие.

Лишняя возня с доп. коэффициентом. Не потому что я пофигист, а потому что овчинка выделки (при упомянутом выше). Плюс еще по техническим причинам во всем диапазоне нормально подобрать нет возможности. Начнутся еще колебания страшные.

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

Цитата(AlexandrY @ Feb 1 2017, 14:51) *
А вот тут пишут что делали цифровые умножители на 40 ГГц еще в 2005 году.

А делители? Ведь я имела в виду такое простое устройство. На вход ОУ - управляющий сигнал, в обратной связи стоит умножитель. На выходе получается корень.
Diusha
Цитата(AlexandrY @ Feb 1 2017, 15:45) *
Линейность портит. Нарушено правило гомогенности.

Критерий нелинейности – появление на выходе частот, которых не было на входе (при разомкнутой петле). Задержка их не родит.

Цитата(Tanya @ Feb 1 2017, 15:47) *
Неплохой аналоговый умножитель (не буду рекламировать) имеет полосу 250МГц.
Я вот не хочу, чтобы вычислитель вносил транспортную задержку.

Цитата(AlexandrY @ Feb 1 2017, 15:51) *
А вот тут пишут что делали цифровые умножители на 40 ГГц еще в 2005 году.

Мне не нужны ни 250МГц ни 40 ГГц sm.gif,
и внесенная задержка тут не страшна

Цитата(Tanya @ Feb 1 2017, 15:58) *
Если боитесь колебания, то сделайте все максимально мееедленным. Только зачем?

Конечно, специально делать мееедленнее, чем возможно, не нужно. Но у системы постоянная времени где-то порядка 1 сек, и мощности АВР-ки за глаза хватит.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.