Finding Critical Value with Simulink
    9 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Esin Derin
      
 el 24 de Jun. de 2022
  
I have to find several values of k1 in first order inertia and find the critical value when the system is on the stability boundary with k2=2.I have to find them with simulation in order to find the critical value of k1.
In attachemnt you can find my diagram.

1 comentario
  Jon
      
 el 24 de Jun. de 2022
				You refer to an attachement with your diagram. I don't see any file attached,  just a screen shot with part of a simulink diagram. 
Also, from at least what I can see of your model, everything is linear, you would be better off doing this analysis using the linear analysis tools, included with the Control System Toolbox. Do you have this toolbox?
Respuesta aceptada
  Sam Chak
      
      
 el 24 de Jun. de 2022
        
      Editada: Sam Chak
      
      
 el 24 de Jun. de 2022
  
      Hi @Esin Derin
It's a bit confusing with all the manual switches around. You should also provide the closed-loop system for investigation. Given


With  , if my mental calculation is correct, then the closed-loop system should be (please check)
, if my mental calculation is correct, then the closed-loop system should be (please check)
 , if my mental calculation is correct, then the closed-loop system should be (please check)
, if my mental calculation is correct, then the closed-loop system should be (please check)

From this point, you can test over a range of  and find that
 and find that  should make the system stable.
 should make the system stable.
 and find that
 and find that  should make the system stable.
 should make the system stable.s = tf('s');
k1 = 0.375;
k2 = 2;
G = k1/(1.5*s^2 + s);
H = k2/(12*s + 1);
Gcl = minreal(feedback(G, H))
pole(Gcl)
damp(Gcl)       % damping ratio is practically zero, so oscillations are expected.
step(Gcl, 200)
k1 = 0.00978;               % no overshoot if k1 < 0.00979
G = k1/(1.5*s^2 + s);
Gcl = minreal(feedback(G, H))
pole(Gcl)
damp(Gcl)
step(Gcl)
Edit: To run this in Simulink, you can probably try Paul's trick as follows:
k1vec   = [0.00978 (0.00978+0.375)/2 0.375]; % choose whatever gain values from 0 < k1 <= 0.375
for ii  = 1:numel(k1vec)
    k1  = k1vec(ii);
    out = sim('Esin'); % use the actual name of the .slx file
    % do whatever processing is needed on out
end
0 comentarios
Más respuestas (0)
Ver también
Categorías
				Más información sobre Linearization en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




