Перетворення компонентів контролера PID із зворотним зв'язком стану в єдину функцію передачі та дискретну форму простору стану


9

Я боровся з цією проблемою вже близько тижня, як частина багаторічного проекту. Ми розробляємо контролер для конкретного реактора на основі моделі. Переглянувши це деякий час, я все ще не можу змусити це працювати - тому я дуже вдячний, якщо зможу отримати допомогу.

Один з опублікованих оглядів літератури, який ми ґрунтуємось на списках PID-контролера для кожного окремого компонента замість комбінованого рівняння, наприклад:

{P(n)=Kp[G(n)−target]I(n)=I(n−1)+KpTI[G(n)−target]D(n)=KpTDdGdt(n)

Просто поєднуючи три компоненти у вихід PID-контролера:

PID(n)=P(n)+I(n)+D(n)

І звідси автор додає додатковий шар зворотного зв’язку стану поверх PID-сигналу, щоб отримати кінцевий вихід контролера, застосований у системі.

{Q(n)=K0R(n−1)+K1Q(n−1)−K2Q(n−2)R(n)=(1+γ)PID(n)−γQ(n−1)

А R - кінцевий "вихід контролера". Тут Kp - посилення процесу, TI і TD - це інтегральні та похідні посилення, K_0 K0,K1 і K2 - " посилення ", налаштовані на зворотний стан (незмінний), а γ - константа, 0,5. G(n) - стан системи, Q(n) - оціночний стан, який впливає на динаміку моделі, а R(n) - фактичний кінцевий вихід, який надсилається на завод.

Я намагався спочатку перетворити все на функцію передачі єдиного контролера, але мені сказали, що просто додати їх разом не вийде.

Я також мав завдання знайти дискретний представлення простору стану цього контролера. Для цього я спробував змінити на щоб позбутися цієї проблеми.dGdt(n)G(n)−G(n−1)

Далі я спробував визначити нову змінну стану для щоб і можна було перетворити в перший порядок.Q(n)Q(n−1)Q(n−2)

Потім я спробував замінити значення на контролер PID, щоб отримати як змінну стану. Усі ці зусилля базувалися на рекомендаціях мого професора.G(n)

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

Я дуже розчарований, тому що після тижневих зусиль я все ще спотикаюся тим, що видається простою проблемою.

Якщо можливо, я можу покірно попросити вашої допомоги з цих двох конкретних питань?

  1. Перетворіть цей контролер в єдину функцію передачі контролера (як це зазвичай видно в будь-якому представленні функції передачі, тобто )G(s)=1s+1
  2. Перетворити цей контролер в дискретний представлення простору стану, залишивши частоту вибірки як змінну?

MATLAB і Maple можуть вирішити ці проблеми. У мене є обидві програми. Я надрукував вашу публікацію і спробую їх опрацювати. Я щось із цього робив у коледжі.
— Веслі Вортман

Чи можете ви дати назву видання?
— Хазем

Відповіді:


1

Це не повна відповідь, але я сподіваюся, що це може допомогти.

Ви можете переписати першу систему як

{P(n)=KPE(n)I(n)=I(n−1)+KPTIE(n)ΔtD(n)=KPTDE(n)−E(n−1)Δt

Де і - ваш інтервал вибірки. Зауважте, що і не визначаються як . і це відповідно інтегральний коефіцієнт підсилення та похідне посилення.E(n)=G(n)−target(n)ΔtTDTIKI=KPTIKD=KPTI

Тепер ви можете переписати систему як єдину функцію помилки.

PID(n)=P(n)+I(n)+D(n)

I(n−1)=PID(n−1)−P(n−1)−D(n−1)=PID(n−1)−KPE(n−1)−KPTDE(n−1)−E(n−2)Δt

PID(n)=KPE(n)+PID(n−1)−KPE(n−1)−KPTDE(n−1)−E(n−2)Δt+KPTIE(n)Δt+KPTDE(n)−E(n−1)Δt=PID(n−1)+KP((1+ΔtTI+TDΔt)E(n)−(1+2TDΔt)E(n−1)+TDΔtE(n−2))

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

R(n)=K1R(n−1)−(γK0+K2)R(n−2)+(1+γ)(PID(n)−K1PID(n−1)+K2PID(n−2))

Тепер вам потрібно лише замінити рівняння PID, щоб отримати рівняння регулятора як функції помилки.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.