Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

tf2ss

Convertir los parámetros del filtro de la función de transferencia a la forma del espacio de estados

Descripción

ejemplo

[A,B,C,D] = tf2ss(b,a) convierte una función de transferencia de una entrada en tiempo continuo o en tiempo discreto en una representación equivalente del espacio de estados.

Ejemplos

contraer todo

Considere el sistema descrito por la función de transferencia

H(s)=[2s+3s2+2s+1]s2+0.4s+1.

Conviértalo en forma de espacio de estados utilizando tf2ss.

b = [0 2 3; 1 2 1];
a = [1 0.4 1];
[A,B,C,D] = tf2ss(b,a)
A = 2×2

   -0.4000   -1.0000
    1.0000         0

B = 2×1

     1
     0

C = 2×2

    2.0000    3.0000
    1.6000         0

D = 2×1

     0
     1

Un sistema oscilante unidimensional de tiempo discreto consiste en una masa unitaria, m, unida a una pared por un muelle de constante elástica unitaria. Un sensor muestrea la aceleración, a, de la masa a Fs=5 Hz.

Genere 50 muestras de tiempo. Defina el intervalo de muestreo Δt=1/Fs.

Fs = 5;
dt = 1/Fs;
N = 50;
t = dt*(0:N-1);
u = [1 zeros(1,N-1)];

La función de transferencia del sistema tiene una expresión analítica:

H(z)=1-z-1(1+cosΔt)+z-2cosΔt1-2z-1cosΔt+z-2.

El sistema se estimula mediante un impulso unitario en sentido positivo. Calcule la evolución temporal del sistema utilizando la función de transferencia. Represente el resultado.

bf = [1 -(1+cos(dt)) cos(dt)];
af = [1 -2*cos(dt) 1];
yf = filter(bf,af,u);

stem(t,yf,'o')
xlabel('t')

Figure contains an axes object. The axes object with xlabel t contains an object of type stem.

Busque la representación del espacio de estados del sistema. Calcule la evolución temporal partiendo de un estado inicial totalmente nulo. Compárelo con la predicción de la función de transferencia.

[A,B,C,D] = tf2ss(bf,af);

x = [0;0];
for k = 1:N
    y(k) = C*x + D*u(k);
    x = A*x + B*u(k);
end

hold on
stem(t,y,'*')
hold off
legend('tf','ss')

Figure contains an axes object. The axes object with xlabel t contains 2 objects of type stem. These objects represent tf, ss.

Argumentos de entrada

contraer todo

Coeficientes de numerador de función de transferencia, especificados como vector o matriz. Si b es una matriz, cada fila de b corresponde a una salida del sistema.

  • Para los sistemas de tiempo discreto, b contiene los coeficientes en potencias descendentes de z.

  • Para los sistemas de tiempo continuo, b contiene los coeficientes en potencias descendentes de s.

Para los sistemas de tiempo discreto, b debe tener un número de columnas igual a la longitud de a. Si los números difieren, iguálelos añadiendo ceros. Puede utilizar la función eqtflength para hacerlo.

Coeficientes de la función de transferencia del denominador, especificados como un vector.

  • Para los sistemas de tiempo discreto, a contiene los coeficientes en potencias descendentes de z.

  • Para los sistemas de tiempo continuo, a contiene los coeficientes en potencias descendentes de s.

Argumentos de salida

contraer todo

Matriz de estados, devuelta como una matriz. Si el sistema viene descrito por n variables de estado, A es n por n.

Tipos de datos: single | double

Matriz de entrada a estado, devuelta como una matriz. Si el sistema viene descrito por n variables de estado, B es n por 1.

Tipos de datos: single | double

Matriz de estado a salida, devuelta como una matriz. Si el sistema tiene q salidas y está descrito por n variables de estado, C es q por n.

Tipos de datos: single | double

Matriz de alimentación, devuelta como una matriz. Si el sistema tiene q salidas, D es q por 1.

Tipos de datos: single | double

Más acerca de

contraer todo

Función de transferencia

tf2ss convierte los parámetros de una representación de la función de transferencia de un sistema dado en los de una representación equivalente del espacio de estados.

  • Para los sistemas de tiempo discreto, las matrices del espacio de estados relacionan el vector de estados x, la entrada u y la salida y:

    x(k+1)=Ax(k)+Bu(k),y(k)=Cx(k)+Du(k).

    La función de transferencia es la transformada Z de la respuesta al impulso. Se puede expresar en términos de matrices del espacio de estados como

    H(z)=C(zIA)1B+D.

  • Para los sistemas de tiempo continuo, las matrices del espacio de estados relacionan el vector de estados x, la entrada u y la salida y:

    x˙=Ax+Bu,y=Cx+Du.

    La función de transferencia es la transformada de Laplace de la respuesta al impulso. Se puede expresar en términos de matrices del espacio de estados como

    H(s)=B(s)A(s)=b1sn1++bn1s+bna1sm1++am1s+am=C(sIA)1B+D.

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido antes de R2006a

Consulte también

| | | | |