Sei sulla pagina 1di 19

Controlador simulado en Matlab

Respuesta del Controlador


Ecuación del Controlador

𝐾𝐷 (1 − 𝑧 −1 ) 𝐾𝐼 𝑇
𝐾𝑃 [ + + 1]
𝑇 + 𝑇𝑒(1 − 𝑧 ) 1 − 𝑧 −1
−1

Desarrollando

𝐾𝐷 (1 − 𝑧 −1 )(1 − 𝑧 −1 ) + 𝐾𝐼 𝑇 ∗ [𝑇 + 𝑇𝑒(1 − 𝑧 −1 )] + [𝑇 + 𝑇𝑒(1 − 𝑧 −1 )] ∗ [1 − 𝑧 −1 ]


𝐾𝑃 [ ]
[𝑇 + 𝑇𝑒(1 − 𝑧 −1 )] ∗ [1 − 𝑧 −1 ]

𝐾𝐷 (1 − 𝑧 −1 − 𝑧 −1 + 𝑧 −2 ) + 𝐾𝐼 𝑇 ∗ [𝑇 + 𝑇𝑒 − 𝑇𝑒𝑧 −1 ] + [𝑇 + 𝑇𝑒 − 𝑇𝑒𝑧 −1 ] ∗ [1 − 𝑧 −1 ]
𝐾𝑃 [ ]
[𝑇 + 𝑇𝑒 − 𝑇𝑒𝑧 −1 ] ∗ [1 − 𝑧 −1 ]

𝐾𝐷 − 2𝐾𝐷 𝑧 −1 + 𝐾𝐷 𝑧 −2 + 𝐾𝐼 𝑇 2 + 𝐾𝐼 𝑇𝑇𝑒 − 𝐾𝐼 𝑇𝑇𝑒𝑧 −1 + 𝑇 + 𝑇𝑒 − 𝑇𝑒𝑧 −1 − 𝑇𝑧 −1 − 𝑇𝑒𝑧 −1 + 𝑇𝑒𝑧 −2


𝐾𝑃 [ ]
𝑇 + 𝑇𝑒 − 𝑇𝑒𝑧 −1 − 𝑇𝑧 −1 − 𝑇𝑒𝑧 −1 + 𝑇𝑒𝑧 −2

(𝐾𝐷 + 𝑇𝑒)𝑧 −2 − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1 + [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]


𝐾𝑃 [ ]
𝑇𝑒𝑧 −2 − [2𝑇𝑒 + 𝑇]𝑧 −1 + [𝑇 + 𝑇𝑒]

Función de Transferencia

𝐶(𝑍)
𝐸(𝑍)
(𝐾𝐷 + 𝑇𝑒)𝑧 −2 − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1 + [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]
= 𝐾𝑃 [ ]
𝑇𝑒𝑧 −2 − [2𝑇𝑒 + 𝑇]𝑧 −1 + [𝑇 + 𝑇𝑒]

𝐶(𝑍) ∗ {𝑇𝑒𝑧 −2 − [2𝑇𝑒 + 𝑇]𝑧 −1 + [𝑇 + 𝑇𝑒]}

= 𝐸(𝑍) ∗ 𝐾𝑃 {(𝐾𝐷 + 𝑇𝑒)𝑧 −2 − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]}

{𝑇𝑒𝑧 −2 𝑐(𝑍) − [2𝑇𝑒 + 𝑇]𝑧 −1 𝑐(𝑍) + [𝑇 + 𝑇𝑒] 𝑐(𝑍)}

= 𝐾𝑃 {(𝐾𝐷 + 𝑇𝑒)𝑧 −2 𝑒(𝑍) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1 𝑒(𝑍)


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)] 𝑒(𝑍)}
{𝑇𝑒 𝑐(𝑘 − 2) − [2𝑇𝑒 + 𝑇]𝑐(𝑘 − 1) + [𝑇 + 𝑇𝑒]𝑐(𝑘)}

= 𝐾𝑃 {(𝐾𝐷 + 𝑇𝑒) 𝑒(𝑘 − 2) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇] 𝑒(𝑘 − 1)


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)] 𝑒(𝑘)}

Despejando c(k)

𝑐(𝑘)
𝐾𝑃 {(𝐾𝐷 + 𝑇𝑒) 𝑒(𝑘 − 2) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇] 𝑒(𝑘 − 1) + [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)] 𝑒(𝑘)} − 𝑇𝑒 𝑐(𝑘 − 2) + [2𝑇𝑒 + 𝑇]𝑐(𝑘 − 1)
=
[𝑇 + 𝑇𝑒]

Desarrollando la ecuación en LabView


Intoduciendo valores en e(k) igual a 1, 0, -1.

Simulación en Matlab del Sistema de Segundo Orden


Respuesta del Sistema de Segundo Orden

Creando una Co-simulación con la planta analógica en Multisim


Tenemos la siguiente respuesta del sistema
Añadiendo el controlador

Respuesta del Sistema


Simulación en Matlab

Grafica de la Salida del Sistema


Desarrollo del Controlador en PIC C Compiler
Ecuación de la Planta Discreta

𝑐(𝑍) 𝑊𝑛𝑇 2
= −2
𝑒(𝑍) 𝑧 − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1 + [1 + 2𝜉𝑊𝑛𝑇]

𝑐(𝑍){𝑧 −2 − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1 + [1 + 2𝜉𝑊𝑛𝑇]} = 𝑊𝑛𝑇 2 𝑒(𝑍)

{𝑧 −2 𝑐(𝑍) − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1 𝑐(𝑍) + [1 + 2𝜉𝑊𝑛𝑇]𝑐(𝑍)} = 𝑊𝑛𝑇 2 𝑒(𝑍)

𝑐(𝑘 − 2) − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑐(𝑘 − 1) + [1 + 2𝜉𝑊𝑛𝑇]𝑐(𝑘) = 𝑊𝑛𝑇 2 𝑒(𝑘)

Despejando a c(k)

𝑊𝑛𝑇 2 𝑒(𝑘) − 𝑐(𝑘 − 2) + [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑐(𝑘 − 1)


𝑐(𝑘) =
[1 + 2𝜉𝑊𝑛𝑇]

Desarrollando en LabView
Grafica de la Salida del Sistema

Multiplicación del Controlador por la Planta

(𝐾𝐷 + 𝑇𝑒)𝑧 −2 − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1 + [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)] 𝑊𝑛𝑇 2


𝐾𝑃 [ −2 −1
] 𝑋 −2
𝑇𝑒𝑧 − [2𝑇𝑒 + 𝑇]𝑧 + [𝑇 + 𝑇𝑒] 𝑧 − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1 + [1 + 2𝜉𝑊𝑛𝑇]

Numerador

𝐾𝑃 𝑊𝑛𝑇 2 {(𝐾𝐷 + 𝑇𝑒)𝑧 −2 − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]}

Denominador

{𝑇𝑒𝑧 −2 − [2𝑇𝑒 + 𝑇]𝑧 −1 + [𝑇 + 𝑇𝑒]} 𝑥 {𝑧 −2 − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1


+ [1 + 2𝜉𝑊𝑛𝑇]}

Multiplicación Termino a Termino

+ 𝑇𝑒𝑧 −4 − [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑇𝑒𝑧 −3


+ [1 + 2𝜉𝑊𝑛𝑇]𝑇𝑒𝑧 −2
− [2𝑇𝑒 + 𝑇]𝑧 −3 + [2𝑇𝑒 + 𝑇][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −2
− [2𝑇𝑒 + 𝑇][1 + 2𝜉𝑊𝑛𝑇]𝑧 −1

+ [𝑇 + 𝑇𝑒]𝑧 −2 − [𝑇 + 𝑇𝑒][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑧 −1


+ [𝑇 + 𝑇𝑒][1 + 2𝜉𝑊𝑛𝑇]

Agrupando, dependiendo del grado del exponente de Z

𝑇𝑒 𝑧 −4 − { [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [2𝑇𝑒 + 𝑇] } 𝑧 −3

+ {[1 + 2𝜉𝑊𝑛𝑇]𝑇𝑒 + [2𝑇𝑒 + 𝑇][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [𝑇 + 𝑇𝑒] } 𝑧 −2

− {[2𝑇𝑒 + 𝑇][1 + 2𝜉𝑊𝑛𝑇] + [𝑇 + 𝑇𝑒][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] } 𝑧 −1

+ [𝑇 + 𝑇𝑒][1 + 2𝜉𝑊𝑛𝑇]

Multiplicando numerador por e(Z)

𝐾𝑃 𝑊𝑛𝑇 2 {(𝐾𝐷 + 𝑇𝑒)𝑧 −2 𝑒(𝑍) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑧 −1 𝑒(𝑍)


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]𝑒(𝑍)}

𝐾𝑃 𝑊𝑛𝑇 2 {(𝐾𝐷 + 𝑇𝑒)𝑒(𝑘 − 2) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑒(𝑘 − 1)


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]𝑒(𝑘)}

Multiplicando el denominador por c(Z)

𝑇𝑒 𝑧 −4 𝑐(𝑍) − { [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [2𝑇𝑒 + 𝑇] } 𝑧 −3 𝑐(𝑍)

+ {[1 + 2𝜉𝑊𝑛𝑇]𝑇𝑒 + [2𝑇𝑒 + 𝑇][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]


+ [𝑇 + 𝑇𝑒] } 𝑧 −2 𝑐(𝑍)

− {[2𝑇𝑒 + 𝑇][1 + 2𝜉𝑊𝑛𝑇] + [𝑇 + 𝑇𝑒][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] } 𝑧 −1 𝑐(𝑍)

+ [𝑇 + 𝑇𝑒][1 + 2𝜉𝑊𝑛𝑇] 𝑐(𝑍)

𝑇𝑒 𝑐(𝑘 − 4) − { [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [2𝑇𝑒 + 𝑇] } 𝑐(𝑘 − 3)

+ {[1 + 2𝜉𝑊𝑛𝑇]𝑇𝑒 + [2𝑇𝑒 + 𝑇][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [𝑇 + 𝑇𝑒] } 𝑐(𝑘


− 2)
− {[2𝑇𝑒 + 𝑇][1 + 2𝜉𝑊𝑛𝑇] + [𝑇 + 𝑇𝑒][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] } 𝑐(𝑘 − 1)

+ [𝑇 + 𝑇𝑒][1 + 2𝜉𝑊𝑛𝑇] 𝑐(𝑘)

Despejando a c(k),

Numerador

𝐾𝑃 𝑊𝑛𝑇 2 {(𝐾𝐷 + 𝑇𝑒)𝑒(𝑘 − 2) − [2𝐾𝐷 + 𝑇𝑒(𝐾𝐼 𝑇 + 2) + 𝑇]𝑒(𝑘 − 1)


+ [𝐾𝐷 + (𝑇 + 𝑇𝑒)(𝐾𝐼 𝑇 + 1)]𝑒(𝑘)}

− 𝑇𝑒 𝑐(𝑘 − 4) + { [2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ]𝑇𝑒 + [2𝑇𝑒 + 𝑇] } 𝑐(𝑘 − 3)

− {[1 + 2𝜉𝑊𝑛𝑇]𝑇𝑒 + [2𝑇𝑒 + 𝑇][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] + [𝑇 + 𝑇𝑒] } 𝑐(𝑘


− 2)

+ {[2𝑇𝑒 + 𝑇][1 + 2𝜉𝑊𝑛𝑇] + [𝑇 + 𝑇𝑒][2(1 + 𝜉𝑊𝑛𝑇) − (𝑊𝑛𝑇)2 ] } 𝑐(𝑘 − 1)

Denominador

[𝑇 + 𝑇𝑒][1 + 2𝜉𝑊𝑛𝑇]
Función de Transferencia en LabView
Grafica de la salida del Sistema

Desarrollo del Programa en PIC C Compiler


Simulación en Proteus
Grafica de la Salida del Sistema Físico

Potrebbero piacerti anche