Using LQR with external disturbance vector

26 次查看(过去 30 天)
I am going through Matlab tutorials on modeling an A and B matrix for a linearized boost converter, and then using the Matlab lqr function to generate good Kgain values:
Kgain = lqr(A, B, Q, R)
So far, so good!
Now, in our actual system, we have an extra vector that models external disturbances:
X[n+1] = A*X[n] + B*U[n] + D
Our linearized system is a boost converter, so there are two states (x1 = input current, x2 = output voltage), and the disturbance vector D(2x1) represents [a sudden change in the input voltage], and [a sudden change in the output current] (I.E. a new load is switched in or out to the converter).
--> Is there a way to calculate Kgain, using the lqr function, with this external disturbance vector considered?

采纳的回答

Amey Waghmare
Amey Waghmare 2023-4-17
Hi,
As per my understanding, you are able to tune LQR controller for your system using ‘lqr’ command. Now, you want to tune LQR controller by incorporating external disturbance vector.
In order to tune the controller with external disturbances, you can use the ‘Control System Tuner’. Please refer the following documentation which describes how to minimize LQR cost with external disturbance/ noise inputs:
The following documentation explains how to use ‘TuningGoal.LQG’ class for tuning. ‘w(t)’ refers to external disturbance, noise or command to the system.
I hope this helps.

更多回答(0 个)

标签

产品


版本

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by