Can I use ''PLACE'' matlab function to find feedback gain for discrete state space controller?

18 次查看(过去 30 天)
I am using PLACE function in MATLAB to find feedback gain for continuous system and I am getting desired output. But when I am using PLACE function for discrete system then I am not getting correct feedback gain. Can I use PLACE function for discrete? If not then suggest me some another way to find feedback gain matrix for discrete system.
  6 个评论
Ankitkumar Viradiya
Ankitkumar Viradiya 2017-11-17
C=eye(4) and D=[0 0 0 0] I have directly usesd these matrices in simulink state-space block. I have chosen my pole with assumption of damping factor and natural frequency. I have used P= [-0.811 -1.622 -0.811+1.84j -0.811-1.84j] for my system. Using these same poles I am getting different output for continuous and discrete system.

请先登录,再进行评论。

采纳的回答

Birdman
Birdman 2017-11-17
Hi Ankitkumar,
I have checked every possible situation to make sure that we are not doing any mistake at the beginning. I checked the validity of the sample time you have chosen and etc. When I plotted the Bode diagram for your system, I found out that we have to sample the system with at least T=0.023 seconds and since your sampling is faster than this, we will not encounter any problem. All the things are valid but one thing that is not valid is that you try to calculate K matrix for discrete time system by trying to assign s-domain poles in z-domain poles. Firstly, you have to convert s-domain poles to z-domain poles by a mathematical calculation and then you can easily implement the feedback matrix. Here is the following code:
A=[0 1 0 0;0 -2.470 -0.7568 0.0006897;0 0 0 1;0 4.7568 20.3250 -0.01852]; B=[0;0.2470 ;0 ;-0.4756];C=eye(4);D=zeros(4,1);
sys=ss(A,B,C,D);%continuous system
Ts=0.01;
sysDisc=c2d(sys,Ts,'tustin');%discrete system
pCont=[-5 -7 -0.811+1.84j -0.811-1.84j];%poles in s-domain
pDisc=exp(pCont.*Ts);%poles in z-domain
cont=place(A,B,pCont)
disc=place(sysDisc.A,sysDisc.B,pDisc)
When you run the code, you will see that cont and disc matrices are almost the same. Note that disc matrix will change according to the sampling time of yours which means sampling your system faster is not an smart choice. Be careful with that.
  5 个评论
dengyi
dengyi 2024-5-19
hi birdman,Your response has been incredibly helpful to me, and I'm not sure how to express my gratitude

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dynamic System Models 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by