% X3] 0 -8 10] x3] 1]
%
% [x1
% y=[7 2 -4] x2
% x3]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%vectores
clc
clear all
A=[0 1 -2
0 -16 21
0 -8 10]
B=[0
2
1]
C=[7 2 -4]
%%%%%%%%%%%%%%%%%%Teorema de controlabilidad%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ContM=[B A*B A^2*B]
R=rank(ContM)%rango es 3, el sistema es controlable
%%%%el sistemas es completamente controlable
if R==3
disp('como su rango es 3 el sistema es controlable')
else
disp('sistema no controlable')
end
%%
%%metodo alternativo para la controlabilidad
ContM1=ctrb(A,B)%retorna controlabilidad de la matriz
R1=rank(ContM1) %rango es 3, comprobado
%%%%%%%%%%%%%%%%%%teorema de Observabilidad%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ObsM=[C
C*A
C*A^2]%rank calcula el # ecuaciones independientes representadas
%por las filas de la matriz
O=rank(ObsM)%rango es 3, el sistema es observable
%%%%el sistema es completamente observable
if O==3
disp('como su rango es 3 el sistema es controlable')
else
disp('sistema no controlable')
end
%%
%%metodo alternativo para observabilidad
ObsM1=obsv(A,C) %retorna la observabilidad de la matriz
O1=rank(ObsM1) %rango es 3, comprobado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PROGRAMA DE CONTROL ON/OFF
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%Ejemplo de controlador ON OFF ante una entrada senoidal%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x = [0:0.1:8*pi]; %desde 0 hasta 8*pi en incrementos de 0.1 radianes
y = sin(x); %vector y con los valores del seno del vector x
plot (x, y) %gráfico del seno
[fil, col] = size(y); %filas y columnas (# de elementos) del vector y
for i=1:col %i toma valores desde 1 hasta el número de elementos de y
if y(i)>=0
y(i)=0.5; %cualquier valor positivo de y se convierte en +0.5
elseif y(i)<0
y(i)=-0.5; %cualquier valor negativo de y se convierte en -0.5
end
end
hold
plot(x,y),title('Controlador ON/OFF'),grid %superponemos el gráfico del seno modificado
return
Autor:
Carlos Aparza Alfaro
Página anterior | Volver al principio del trabajo | Página siguiente |