design feedback state controller
3 次查看(过去 30 天)
显示 更早的评论
hi,
I have a pressing system which it's input is the "press velocity" and the output is "exit temperature".SISO system
the matrices for the state space model are scalar and like this: A = [0] B = [16.6] C = [475] D = [0]
I need to design a state controller to keep the exit temperature in a range like 500-600°C by changing the press velocity during the pressing. the desired pole is let say -10.
I appreciate any idea.
0 个评论
回答(1 个)
Sam Chak
2023-2-24
编辑:Sam Chak
2023-2-24
You can try the following design approach if it works for your application.
A = 0;
B = 16.6;
C = 475;
D = 0;
sys = ss(A, B, C, D)
The design task is to analytically compute the control gain K, or tune it
K = 10/16.6
until the desired pole is obtained
eig(A - B*K) % eigenvalue of compensated system
If you understand the theory behind the design, then this place() function is not needed:
place(A, B, -10) % should return the same value as K
sysD = ss(A-B*K, B, C, D); % dummy
scale = 1/dcgain(sysD) % scale for input signal
Td = 550; % Desired Temperature (input signal)
input = Td*scale % scaled input signal
Compensated System:
sysC = ss(A-B*K, B*(input), C, D);
step(sysC, 1)
S = stepinfo(sysC)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Classical Control Design 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!