summaryrefslogtreecommitdiff
path: root/3432/CH7/EX7.31/Ex7_31.sce
diff options
context:
space:
mode:
Diffstat (limited to '3432/CH7/EX7.31/Ex7_31.sce')
-rw-r--r--3432/CH7/EX7.31/Ex7_31.sce83
1 files changed, 83 insertions, 0 deletions
diff --git a/3432/CH7/EX7.31/Ex7_31.sce b/3432/CH7/EX7.31/Ex7_31.sce
new file mode 100644
index 000000000..7e5955621
--- /dev/null
+++ b/3432/CH7/EX7.31/Ex7_31.sce
@@ -0,0 +1,83 @@
+//Example 7.31
+// Reduced-Order Estimator Design for DC Servo.
+
+xdel(winsid())//close all graphics Windows
+clear;
+clc;
+//------------------------------------------------------------------
+
+// State space representation
+//Transfer function model for DC Servo
+s=poly(0,'s');
+num=10;
+den=s*(s+2)*(s+8);
+Gs=syslin('c',num/den);
+// State space representation
+F=[-10 1 0;-16 0 1;0 0 0]
+G=[0 0 10]';
+H=[1 0 0];
+J=0;
+n=sqrt(length(F));
+//Desired poles for the DC Servo system.
+Pc=[-1.42 -1.04+2.14*%i -1.04-2.14*%i ]
+// State feedback gain
+K=ppol(F,G,Pc)
+disp(K,'K=',"State feedback gain")
+
+//------------------------------------------------------------------
+//Estimator - error roots are at
+//partioned system
+Faa=F(1,1); Fab=F(1,2:3);
+Fba=F(3,1); Fbb=F(2:3,2:3);
+Ga=G(1);Gb=G(2:3);
+
+Pe=[-4.24+4.24*%i, -4.24-4.24*%i]
+// Observer gain matrix for system
+L=ppol(Fbb',Fab',Pe);
+L=L';
+disp(L,"L=" );
+//------------------------------------------------------------------
+
+//State feedback control law u=-Kx=-(K+[L*k2 0])[y xc]';
+k1=K(1); k2=K(2:3);
+
+//------------------------------------------------------------------
+//compensator transfer function
+s=poly(0,'s');
+num=(-0.735+s)*(1.871+s);
+den=poly([-0.990 + 6.12* %i, -0.990 - 6.12* %i] ,'s','roots')
+Dcr=syslin('c',num/den);
+disp(Dcr,'Dcr','compensator transfer function')
+//------------------------------------------------------------------
+//Root locus with reduced order compensator
+evans(-Dcr*Gs)
+zoom_rect([-8 -9 3 9])
+
+f=gca();
+f.x_location = "origin"
+f.y_location = "origin"
+xset("color",2);
+h=legend('');
+h.visible = "off"
+
+//Title, labels and grid to the figure
+exec .\fig_settings.sci; // custom script for setting figure properties
+title('Root locus for DC servo reduced order controller','fontsize',3);
+//------------------------------------------------------------------
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+