Simulando un sistema no lineal en Simulink

0

Tengo un conjunto de ecuaciones no lineales, que me gustaría modelar en Simulink para compararlas con su contraparte lineal.

Aquí está el diagrama de bloques de mi configuración. El bloque de espacio de estado representa el modelo lineal, mientras que la función Matlab contiene las ecuaciones no lineales.

Respuestalinealizada:

Respuestanolineal:

Estoytratandodesimularlassiguientesecuacionesnolineales:

  

Lafunción \ $ \ dot {\ vec x} = f (\ vec x, u) \ $ está generando resultados    derivado de \ $ \ vec x \ $ , no \ $ \ vec x \ $ sí mismo. El bloque de función que encuentra \ $ \ dot {\ vec x} \ $ de \ $ \ vec x \ $ y \ $ u \ $ , luego   lo alimenta a un integrador y devuelve al \ $ \ vec x \ $ al bloque,   y extrae \ $ y \ $ de él.

con estos parámetros:

g = 9.81;
m = 0.05;
R = 1;
L = 0.01;
C = 0.0001; 
x1 = 0.012; %initial condition 1: displacement
x2 = 0;     %initial condition 2: velocity
x3 = 0.84;  %initial condition 3: acceleration

Así es como codifico la función de Matlab para representar mi sistema no lineal:

    function [xdot,y] = fcn(x,u)

    % define your constants
    g = 9.81;
    m = 0.05;
    R = 1;
    L = 0.01;
    C = 0.0001; 
%   x1 = 0.012; %initial condition 1: displacement
%   x2 = 0;     %initial condition 2: velocity
%   x3 = 0.84;  %initial condition 3: acceleration


    % nonlinear set of equations
    xdot = [x(2); g-((C/m)*(x(3)/x(1))^2); -((R/L) +(((2*C)/L)*(((x(2)*x(3))/((x(1))^2)))))] + [0;0;1/L]*u;

    y = x';

Mi pregunta es: ¿Dónde entran en juego las condiciones iniciales con el modo no lineal? Para calcular la Matriz A en el bloque de espacio de estado para los sistemas lineales, se utilizan las condiciones iniciales.

¿Cómo deberían incluirse en el modelo no lineal codificado arriba? Como se definen, nunca se utilizarán dentro del código.

    
pregunta Rrz0

1 respuesta

1

Si desea utilizar las condiciones iniciales para las variables \ $ X_i \ $ en el modelo no lineal, simplemente asignelas al integrador externo (1 / s ) bloque, o agréguelos como un vector constante después del integrador.

Tal como está, no estoy seguro de cómo funciona la simulación, ya que el sistema no lineal no está definido para \ $ X_1 = 0 \ $ .

    
respondido por el Edgar Brown

Lea otras preguntas en las etiquetas