Vous êtes sur la page 1sur 16

Curso: Laboratorio de Sistemas de

Control I
Informe Previo Guía Nº5
Tema: Identificación de Sistemas

Alumno: Silva Espinoza Carlos Alejandro

Código: 15190028

Docente: Ing. Jean Carlos Malca Fernán

Universidad: Universidad Nacional Mayor de San Marcos

Semestre: 2018 – I

CUESTIONARIO PREVIO
a. ¿Cuál es la diferencia entre Modelado e Identificación?
b. Presente un método de identificación para sistemas de segundo orden sub y sobre
amortiguados, diferentes a los presentados en esta guía.
c. Describa las principales características de System Identification Toolbox de Matlab.

DIFERENCIA ENTRE MODELADO E IDENTIFICACIÓN DE SISTEMAS


El modelado normalmente se trata de una serie de ecuaciones diferenciales que describen el
comportamiento de un sistema, es decir: Representar el conocimiento de un sistema

Mientras la identificación de sistemas usa métodos estadísticos para crear modelos matemáticos de
sistemas dinámicos a partir de valores medidos.

Esto significa que en el Modelado podemos tener un modelado basado en leyes y principios, y un
modelado experimental, por identificación de sistemas (obtener datos mediante la medición)
Paramétricas

No Paramétricas

 Curva de reacción
 Respuesta en frecuencia

De una caja negra:

Caja
Step Respuesta
Negra
La salida puede ser:

 Estable
o 1er Orden
o 2do Orden
 Sobreamortiguada
 Críticamente amortiguada
 Subamortiguada
 Inestable

2
MÉTODOS DE IDENTIFICACIÓN DE SISTEMAS

3
SYSTEM IDENTIFICATION TOOLBOX
System Identification Toolbox proporciona funciones MATLAB, bloques Simulink y una aplicación
para construir modelos matemáticos de sistemas dinámicos a partir de datos medidos de entrada-
salida. Le permite crear y usar modelos de sistemas dinámicos que no se modelan fácilmente a partir
de los primeros principios o especificaciones. Puede usar datos de entrada y salida de dominio de
tiempo y de dominio de frecuencia para identificar funciones de transferencia de tiempo discreto y
tiempo continuo, modelos de proceso y modelos de espacio de estado. La caja de herramientas
también proporciona algoritmos para la estimación de parámetros integrados en línea.

La caja de herramientas proporciona técnicas de identificación tales como máxima verosimilitud,


minimización de error de predicción e identificación del sistema subespacial. Para representar la
dinámica no lineal del sistema, puede estimar los modelos de Hammerstein-Wiener y los modelos
ARX no lineales con la red wavelet, partición de árbol y no linealidades de redes sigmoideas. La caja
de herramientas realiza la identificación del sistema de caja gris para estimar los parámetros de un

4
modelo definido por el usuario. Puede usar el modelo identificado para la predicción de respuesta
del sistema y el modelado de plantas en Simulink. La caja de herramientas también es compatible
con modelos de datos de series de tiempo y pronósticos de series de tiempo.

CARACTERÍSTICAS
 Función de transferencia, modelo de proceso e identificación de modelo de espacio de
estado utilizando datos de dominio de tiempo y respuesta de dominio de frecuencia
 Estimación del modelo autoregresivo (ARX, ARMAX), Box-Jenkins y Output-Error utilizando la
máxima probabilidad, la minimización del error de predicción (PEM) y las técnicas de
identificación del sistema subespacial
 Estimación de parámetros de modelo en línea
 Modelado de series de tiempo (AR, ARMA) y previsión
 Identificación de modelos ARX no lineales y modelos Hammerstein-Wiener con no
linealidades de entrada-salida como saturación y zona muerta
 Identificación del sistema de caja gris lineal y no lineal para la estimación de modelos
definidos por el usuario
 Estimación de retardo, desviación, filtrado, remuestreo y reconstrucción de datos faltantes

5
Parte I
SISTEMA 1

Es de Primer Orden

Usaremos:

Sistemas ecuación para Primer Orden sin retardo


𝑘
𝐺(𝑠) =
𝜏𝑠 + 1

6
6

0
0 0.5 1 1.5 2 2.5 3

>> dy=max(Vout)
dy =

5.0000

>> du=max(Vin)

du =

7
5

>> k=dy/du

k=

1.0000

>> indice=find(Vout>=3.16,1)

indice =

2176

>> tao=Tiempo(indice)

tao =

0.2175

>> G=tf(k,[tao 1])

G=

1
------------
0.2175 s + 1

Continuous-time transfer function.

>> [Ye,t]=step(5*G,Tiempo);
>> plot(Tiempo,Vout,t,Ye)

>> error=Vout-Ye;
>> e_cuadrado=error.^2;
>> s_e_c=sum(e_cuadrado)

s_e_c =

0.2877

𝑌𝑢
𝑌𝑢 = 5 𝑉 ∆𝑢 = 5 𝑉 0.632 𝑌𝑢 = 3.16 𝑉 𝐾= =1
∆𝑢
Modelo matemático Vs datos experimentales:

8
6
data1
data2
5

0
0 0.5 1 1.5 2 2.5 3

Calcular suma error cuadrático: 0.2877

SISTEMA 2

Es de 2do Orden

Usaremos:

Sistemas ecuación para 2do Orden

𝑘𝑒 −𝑡𝑚𝑠
𝐺(𝑠) =
𝜏𝑠 + 1

9
6

0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

dy2 =

5.0042

du2 =

k=

1.0008

tau =

0.6095

tm =

0.1826

G2 =

10
1.001
exp(-0.183*s) * ------------
0.6095 s + 1

Continuous-time transfer function.

>> error=Vout-Ye;
>> e_cuadrado=error.^2;
>> s_e_c=sum(e_cuadrado)

s_e_c =

313.1712

0
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Calcular suma error cuadrático: 313.1712

Parte II
SISTEMA 1

>> tf1

tf1 =

11
From input "u1" to output "y1":
4.619
---------
s + 4.618

Name: tf1
Continuous-time identified transfer function.

Parameterization:
Number of poles: 1 Number of zeros: 0
Number of free coefficients: 2
Use "tfdata", "getpvec", "getcov" for parameters and their uncertainties.

Status:
Estimated using TFEST on time domain data "sys1".
Fit to estimation data: 99.79% (stability enforced)
FPE: 3.445e-06, MSE: 3.444e-06

m=step(tf1,Tiempo);
>> m=step(5*tf1,Tiempo);
>> plot(Tiempo,Vout,Tiempo,m)
>> error=Vout-m;
>> e_cuadrado=error.^2;
>> s_e_c=sum(e_cuadrado)

s_e_c =

0.4062

12
SISTEMA 2

13
>> tf1

tf1 =

14
From input "u1" to output "y1":
7.92
--------------------
s^2 + 5.87 s + 7.915

Name: tf1
Continuous-time identified transfer function.

Parameterization:
Number of poles: 2 Number of zeros: 0
Number of free coefficients: 3
Use "tfdata", "getpvec", "getcov" for parameters and their uncertainties.

Status:
Estimated using TFEST on time domain data "sys2".
Fit to estimation data: 99.83% (stability enforced)
FPE: 5.038e-06, MSE: 5.037e-06

m=step(tf1,Tiempo);
>> m=step(5*tf1,Tiempo);
>> plot(Tiempo,Vout,Tiempo,m)
>> error=Vout-m;
>> e_cuadrado=error.^2;
>> s_e_c=sum(e_cuadrado)

s_e_c =

5.2804

15
16

Vous aimerez peut-être aussi