Contenido principal

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.

RespConfig

Opciones para respuestas al impulso y escalón

Desde R2023a

Descripción

Use un objeto RespConfig para especificar opciones para representar respuestas al escalón (step, stepplot), respuestas al impulso (impulse, impulseplot) y respuestas iniciales (initial y initialplot).

Las respuestas al escalón aplican la configuración de la siguiente forma.

  • En el caso del sistema SISO

    u(t)={U,t<T0+TdU+dU,tT0+Td.

  • En el caso del sistema MIMO, la respuesta al escalón del j-ésimo canal de entrada se obtiene estableciendo

    u(t)={U,t<T0+TdU+dUj*ej,tT0+Td,

    donde ej es el j-ésimo vector básico.

Las respuestas al impulso aplican la configuración de la siguiente forma.

u(t)=U+dU*δ(t(T0+Td))

En este caso:

  • U es el valor de entrada de referencia.

  • dU es el cambio de nivel de entrada en relación con U.

  • T0 es el tiempo de inicio.

  • Td es el tiempo en el que se produce el cambio en relación con T0.

Creación

Descripción

respOpt = RespConfig crea un objeto de configuración de respuesta con valores de propiedad predeterminados.

ejemplo

respOpt = RespConfig(Name=Value) crea un objeto de configuración de respuesta y establece sus propiedades usando uno o varios argumentos nombre-valor.

ejemplo

Propiedades

expandir todo

Valor de señal de entrada de referencia, especificado como escalar o vector.

  • En sistemas de una entrada, Bias es un valor escalar.

  • En sistemas de varias entradas, Bias es un vector de longitud Nu, donde Nu es el número de canales de entrada. Cada valor de vector se corresponde con el valor de señal de ese canal de entrada. Las funciones calculan las respuestas de una en una para cada canal de entrada.

  • En modelos de espacio de estados con compensaciones, establezca Bias = 'u0' para aplicar el cambio de escalón o de impulso en relación con las compensaciones de modelo u0, u0(t) del modelo LTV o u0(t,p) del modelo LPV. Para modelos LTV y LPV, esta es la salida u0 de la función de datos. La señal de entrada total es u0 + u(t).

Cambio de nivel de entrada en relación con el sesgo de la señal de entrada, especificado como escalar o vector.

  • En sistemas de una entrada, Amplitude es un valor escalar.

  • En sistemas de varias entradas, Amplitude es un vector de longitud Nu, donde Nu es el número de canales de entrada. Cada valor de vector se corresponde con la amplitud del cambio de nivel de ese canal de entrada. Las funciones calculan las respuestas de una en una para cada canal de entrada.

Retardo de señal de entrada, especificado como valor escalar no negativo. Este valor especifica cuándo ocurre el cambio en relación con el tiempo de inicio T0 de la simulación.

Valores del estado inicial, especificados como vector u objeto initialCondition.

De forma predeterminada, la simulación empieza a partir de la condición de estado estacionario obtenida para un nivel de entrada constante igual al sesgo de entrada U. En modelos de espacio de estados sin retardos internos, el estado inicial xinit se obtiene resolviendo:

  • Tiempo continuo: 0 = Axinit + BU

  • Tiempo discreto: xinit = Axinit + BU

Para iniciar la simulación desde otro estado inicial, use una de las siguientes opciones.

  • Para modelos de espacio de estados, InitialState es un vector de longitud Nx, donde Nx es el número de estados.

  • Para modelos de espacio de estados con compensaciones, también puede establecer InitialState en 'x0'. Este valor utiliza el valor de compensación de estado x0 para modelos de espacio de estados, x0(T0) para modelos LTV o x0(T0,p(T0)) para modelos LPV. En modelos LTV y LPV, el valor de compensación de estado es la salida x0 de la función de datos evaluada en t = T0.

  • En modelos LTI identificados, como modelos idtf (System Identification Toolbox), idss (System Identification Toolbox), idproc (System Identification Toolbox), idpoly (System Identification Toolbox) e idgrey (System Identification Toolbox), puede usar un objeto initialCondition (System Identification Toolbox) para especificar el estado inicial. El uso de modelos identificados requiere System Identification Toolbox™.

Valores de parámetro inicial para modelos LPV, especificados como escalar o vector.

Esta propiedad solo es obligatoria cuando especifica Bias = 'u0' o InitialState = [] o 'x0'. De lo contrario, este valor se ignora.

Funciones del objeto

impulseGráfica de la respuesta al impulso del sistema dinámico; datos de la respuesta al impulso
impulseplotPlot impulse response of dynamic system
stepRespuesta al escalón de un sistema dinámico
stepplotPlot step response of dynamic system

Ejemplos

contraer todo

Cree un modelo de función de transferencia.

sys = tf([1 5],[1 10 50]);

Cree un conjunto de opciones para especificar el sesgo, la amplitud y el retardo de la entrada en escalón.

Config = RespConfig(Bias=-2,Amplitude=5,Delay=2);

Calcule la respuesta al escalón utilizando las opciones especificadas.

step(sys,Config)

MATLAB figure

Cree un modelo de espacio de estados.

A = [-0.8429,-0.2134;-0.5162,-1.2139];
B = [0.7254,0.7147;0,-0.2050];
C = [-0.1241,1.4090;1.4897,1.4172];
D = [0.6715,0.7172;-1.2075,0];
sys = ss(A,B,C,D);

Cree un conjunto de opciones predeterminadas y utilice la notación de puntos para especificar los valores.

respOpt = RespConfig;
respOpt.Bias = [-2,3];
respOpt.Amplitude = [2,-0.5];
respOpt.InitialState = [0.1,-0.1];
respOpt.Delay = 5;

Calcule la respuesta al impulso.

t = 0:0.1:20;
impulse(sys,t,respOpt)

MATLAB figure

Este ejemplo muestra cómo aplicar un cambio de escalón a un modelo de espacio de estados en relación con sus compensaciones de modelo.

Cree un modelo de espacio de estados aleatorio con compensaciones.

rng(0)
sys = rss(3,1,1); 
xoff = randn(3,1);
sys.Offsets = struct("x",xoff,"u",2,"y",-1);

Cree un objeto de configuración de respuesta. Para modelos de espacio de estados con compensaciones, especifique "u0" para el argumento Bias y "x0" para el argumento InitialState.

Config = RespConfig(Bias="u0",InitialState="x0");

Simule el modelo.

t = 0:0.01:15;
y = step(sys,t,Config);

Simule sin configuración de respuesta.

y2 = step(sys,t);

Compare las respuestas.

plot(t,y,t,y2,"r--")
legend("With offsets","Without offsets",Location="best")

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent With offsets, Without offsets.

Las respuestas no coinciden. Por lo tanto, es importante inicializar correctamente los modelos con compensaciones para obtener respuestas precisas.

Historial de versiones

Introducido en R2023a

expandir todo

Consulte también

| | |