Contenido principal

RespConfig

R2026b

(No recomendado) Opciones para respuestas al escalón o al impulso

Desde R2023a

RespConfig no se recomienda. Utilice en su lugar argumentos nombre-valor con las correspondientes funciones de respuesta. Para obtener más información, consulte No recomendado.

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,t≥T0+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,t≥T0+Td,

    donde ej es el j-ésimo vector de la base.

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 base de la entrada.

  • 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(PropertyName=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 base de señal de entrada, 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 en espacio de estados con desplazamientos, establezca Bias = 'u0' para aplicar el cambio en escalón o de impulso en relación con los desplazamientos 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.

  • Para sistemas complejos, puede especificar una amplitud del escalón compleja. (desde R2025a)

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 en 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 en espacio de estados, InitialState es un vector de longitud Nx, donde Nx es el número de estados.

  • Para modelos en espacio de estados con desplazamientos, también puede establecer InitialState en 'x0'. Este valor utiliza el valor de desplazamiento de estado x0 para modelos en espacio de estados, x0(T0) para modelos LTV o x0(T0,p(T0)) para modelos LPV. En modelos LTV y LPV, el valor de desplazamiento 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 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)

Cree un modelo en 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)

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

Cree un modelo en espacio de estados aleatorio con desplazamientos.

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 en espacio de estados con desplazamientos, 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")

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

Historial de versiones

Introducido en R2023a

expandir todo

Consulte también

| | |