design feedback state controller
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposte (1)
Sam Chak
il 24 Feb 2023
Modificato: Sam Chak
il 24 Feb 2023
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 Commenti
Vedere anche
Categorie
Scopri di più su Classical Control Design in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!