How to use LQR for finding the control gain matrix K in presence of constraints?

17 次查看(过去 30 天)
I am using the Linear quadratic Regulator (LQR), more specifically dlqr function to obtain a control gain matrix for my ss model of the form xdot=Ax+Bu and u=-Kx. However, my control value (u) is constrained by physical limits. How can i include that in the program in order to obtain appropriate K?
  2 个评论
neha
neha 2018-8-3
Yes the Q and R matrices are for weightage. But what I mean is, I have an external constraint on the input that is, u=-Kx<u_max. And the optimization needs to take this into consideration while giving out the K matrix. The LQR method directly doesn't give this external constraint option. I was looking for some other function which allows this additional constraint.
Aquatris
Aquatris 2018-8-3
I do not think you can define it the way you think in LQR. The only way is by trial and error choosing Q and R such that it gives you desired performance.
If you want to include the control input limits in problem formulation, I recommend you use Hinfinity or mu-synthesis control instead.

请先登录,再进行评论。

回答(1 个)

Aquatris
Aquatris 2018-8-3
编辑:Aquatris 2018-8-3
That is what Q and R matrices are for. Increasing the values in the R matrix will result in a decrease in control input however it might increase the magnitude of your states. So there is a trade-off between Q and R matrices.
Increasing Q will decrease the magnitude of the state vector and increase the magnitude of the control vector. Increasing R will decrease the magnitude of the control vector and increase the magnitude of state vector. It is engineers job to find the sweet spot for Q and R to achieve desired performance

标签

Community Treasure Hunt

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

Start Hunting!

Translated by