how to design LQR controller with time-variable parameters ?

Technical Source
2 min readMar 15, 2022

hi,

i am trying to design LQR controller for a system but one variable for matrix A is changing with time (it is a vector of 10001x1)so the error in matlab is matrix dimension and i heard that interpreted matlab function could be useful but still i have doubts. can anyone help me with this problem?

NOTE:-

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

Yes, a MATLAB Function block would indeed do the trick. Suppose you make a function:

function output = myLQR(error,param)

Where param is the the value of that one element of A (let’s say, A(5,5)) passed in as a time-varying signal to the MATLAB function. So, in the function, you can say something like:

A(5,5) = param;

Then, the command to design an LQR contoller given A and B matrices, and Q/R/N noise covariance matrices, is as follows (or look at the lqr documentation for other ways to call it).

K = lqr(A,B,Q,R,N)

Finally, you want to multiply the resulting K matrix with your error signal, and that’s your control law!

SEE COMPLETE ANSWER CLICK THE LINK

--

--

Technical Source

Simple! That is me, a simple person. I am passionate about knowledge and reading. That’s why I have decided to write and share a bit of my life and thoughts to.