🎛️ ПІД-регулятор
Робоча кінь промислового керування: u = Kp·e + Ki·∫e + Kd·ė. Ведіть нагрівач, пружину-демпфер чи бак до завдання; дивіться, як змінюються перерегулювання, осциляції та усталена похибка зі зміною коефіцієнтів.
Про цю симуляцію
Ця симуляція моделює ПІД-регулятор (пропорційно-інтегрально-диференціальний), що керує одним із трьох реальних об'єктів: тепловою масою першого порядку, механічною системою пружина-демпфер другого порядку або рідинним баком з клапаном. На кожному такті керування регулятор вимірює похибку e = r − y між завданням r та виходом об'єкта y, потім обчислює u = Kp·e + Ki·∫e·dt + Kd·de/dt, обмежене межами виконавчого механізму з протинасиченням (anti-wind-up), щоб інтегральний член переставав накопичуватися, коли вихід насичується. Осцилограф показує завдання та відгук за останні 20 секунд, а Step, Disturb і автоналаштування Циглера–Нікольса дозволяють дослідити класичний компроміс налаштування між часом наростання, перерегулюванням, часом усталення та усталеною похибкою.
🔬 Що показано
Живий контур зворотного зв'язку: графіка об'єкта (термометр, візок на рейці або бак) показує керовану величину y, що прямує до завдання r, дві бічні шкали показують миттєвий керуючий сигнал u та похибку e, а осцилограф малює r (пунктиром) проти y (суцільно) за плинне 20-секундне вікно. Показники нижче повідомляють час наростання, відсоток перерегулювання, час усталення та усталену похибку, обчислені наживо з кожного тесту Step.
🎮 Як користуватись
Оберіть об'єкт (Теплова маса, Пружина-демпфер або Бак+клапан), потім перетягуйте повзунки Kp, Ki та Kd, щоб змінювати пропорційний, інтегральний та диференціальний коефіцієнти, та повзунок Setpoint, щоб перемістити ціль. Натисніть Step, щоб задати стрибок завдання й виміряти наростання/перерегулювання/усталення, Disturb, щоб внести раптове зовнішнє збурення (втрата тепла, поштовх або витік залежно від об'єкта), і ZN autotune, щоб автоматично заповнити Kp/Ki/Kd за правилами граничного коефіцієнта Циглера–Нікольса. Увімкніть Вимірювальний шум, щоб побачити, як диференціальна дія підсилює шум датчика, і використовуйте Масштаб часу, щоб пришвидшити або сповільнити симуляцію.
💡 Чи знали ви?
Метод Циглера–Нікольса, опублікований у 1942 році, налаштовує ПІД-регулятор лише за двома числами — граничним коефіцієнтом Ku та граничним періодом Tu, при якому П-регулятор починає осцилювати — даючи Kp = 0,6·Ku, Ki = 1,2·Ku/Tu, Kd = 0,075·Ku·Tu. ПІД-контури повсюди: круїз-контроль, домашні термостати, стабілізація польоту дронів та промислове керування процесами — усі покладаються на той самий трикомпонентний закон зворотного зв'язку, що реалізує ця симуляція.
Часті запитання
Що насправді роблять члени P, I та D у ПІД-регуляторі?
Пропорційний член Kp·e реагує на поточну похибку й забезпечує більшу частину миттєвої корекції, але лише П-регулятор усталюється з постійною усталеною похибкою, оскільки йому потрібна певна залишкова похибка, щоб продовжувати видавати вихідний сигнал. Інтегральний член Ki·∫e·dt накопичує минулу похибку з часом і зводить цю усталену похибку до нуля, ціною додаткового перерегулювання й повільнішого відгуку при завеликому коефіцієнті. Диференціальний член Kd·de/dt реагує на швидкість зміни похибки, демпфуючи осциляції й пришвидшуючи усталення, але також підсилює шум вимірювання, тому ця симуляція має перемикач шуму.
Що таке протинасичення (anti-wind-up) і навіщо воно цій симуляції?
Насичення інтегратора відбувається, коли виконавчий механізм досягає межі (uMin/uMax), а похибка все ще має той самий знак, змушуючи інтегральний член зростати далеко за межі того, що об'єкт насправді може використати. Коли похибка нарешті змінює знак, регулятору доводиться «розкручувати» цей надлишковий інтеграл, перш ніж він зможе відреагувати, спричиняючи велике перерегулювання. Логіка протинасичення цієї симуляції заморожує оновлення інтеграла щоразу, коли пробний керуючий сигнал штовхав би далі в насичення в тому самому напрямку, що й наявна похибка, тож інтеграл зростає лише тоді, коли він все ще може виконувати корисну роботу.
Що таке час наростання, перерегулювання, час усталення та усталена похибка?
Ці чотири числа, всі виміряні автоматично при натисканні Step, підсумовують ступінчастий відгук контуру керування. Час наростання — це час, за який вихід проходить від 10% до 90% шляху до нового завдання. Перерегулювання — це наскільки вихід перевищує ціль, у відсотках від величини стрибка. Час усталення — це час, необхідний виходу, щоб увійти й залишитися в межах 2%-ної смуги навколо цілі щонайменше одну секунду. Усталена похибка — це залишковий розрив між завданням і виходом після завершення перехідного процесу, зведений до нуля інтегральним членом.
Чому три об'єкти в цій симуляції поводяться настільки по-різному?
Тепловий об'єкт першого порядку, тож він може лише плавно наближатися до своєї цілі без природного перерегулювання самого об'єкта; будь-яке перерегулювання, яке ви бачите, походить виключно від регулятора. Візок-пружина-демпфер другого порядку, тож він має власну природну осциляцію й може перерегулювати та коливатися навіть при добре налаштованому регуляторі. Об'єкт-бак нелінійний, оскільки витік залежить від квадратного кореня рівня рідини, тому швидкість його відгуку змінюється залежно від рівня заповнення, що є хорошим тестом того, наскільки надійним є фіксований набір коефіцієнтів ПІД.
Як автоналаштування Циглера–Нікольса обирає Kp, Ki та Kd?
Класичний метод Циглера–Нікольса знаходить граничний коефіцієнт Ku та граничний період осциляції Tu — точку, в якій контур лише з пропорційним регулятором перебуває на межі сталої осциляції — а потім виводить коефіцієнти ПІД за простими співвідношеннями: Kp = 0,6·Ku, Ki = 1,2·Ku/Tu, Kd = 0,075·Ku·Tu. Кнопка автоналаштування ZN цієї симуляції використовує репрезентативні значення Ku/Tu для кожного об'єкта замість запуску живого релейного тесту, а потім застосовує ті самі класичні формули, щоб миттєво заповнити повзунки Kp/Ki/Kd, тож ви можете порівняти ручне налаштування з підручниковим правилом.