SlideShare una empresa de Scribd logo
Departamento de Ingeniería Electrónica

SISTEMAS DIGITALES DE
INSTRUMENTACIÓN Y CONTROL

TEMA 6
Sistemas Digitales de
Control en Tiempo
Discreto

DAC

ADC

1 − e −Ts
s

D(s)
D(z)

Rafael Ramos Lara
Febrero 2007
TEMA 6
Sistemas Digitales de Control en
Tiempo Discreto

1

Índice (I)
6.1. Sistemas de control digital
6.1.1. Introducción al diseño de sistemas de control digital
6.1.2. Discretización de sistemas analógicos
6.1.3. Ejemplo: modelo discreto de un motor DC
6.2. Diseño de un control digital PID
6.2.1 Introducción al control PID digital
6.2.2 Aproximación rectangular del control PID
6.2.3 Aproximación trapezoidal del control PID
6.3. Arquitecturas de realización de controladores digitales
6.3.1. Programación directa
6.3.2. Programación estándar
6.3.3. Programación serie
6.3.4. Programación paralelo
6.3.5. Programación en escalera
Tema 6: Sistema Digitales de Control en Tiempo Discreto

2

1
Índice (II)
6.4. Ejemplo de diseño: control de un motor DC mediante el driver L293E
6.4.1. Introducción al sistema de control digital de un motor
6.4.2. Modelo equivalente eléctrico del motor DC
6.4.3. Interface con el motor: L293E
6.4.4. Control en lazo abierto de la velocidad de giro
6.4.5. PWM digital
6.4.6. Monitorización de la velocidad de giro
6.4.7. Regulación de la velocidad de giro

Tema 6: Sistema Digitales de Control en Tiempo Discreto

3

6.1 Sistemas de control digital

4

2
6.1.1 Introducción al diseño de sistemas
de control digital

5

Componentes de un sistema de control
Los componentes principales de un sistema de control son:
• Sensores
• Actuadores
• Controlador: permite obtener el comportamiento deseado del sistema
a controlar, manteniendo al mismo tiempo la estabilidad del sistema
Tipos de controladores:
• Controladores analógicos: implementados con amplificadores,
resistencias, condensadores que realizan estructuras semejantes a
filtros que modifican la respuesta frecuencial del sistema
• Controladores digitales: implementados con microprocesadores,
microcontroladores, DSP, FPGA, CPLD, etc... Necesitan
conversores ADC y DAC
Tema 6: Sistema Digitales de Control en Tiempo Discreto

6

3
Controladores analógicos vs. digitales
Controlador
Analógico

Ventajas
•
•
•

Digital

•
•
•
•

Desventajas

Elevado ancho de banda
Elevada resolución
Fácil de diseñar

•

Diseño programable
Comportamiento preciso
Implementación
algoritmos complejos
Fácilmente ampliable

•

•
•

•
•

Envejecimiento de componentes
Derivas con la temperatura
Bueno para diseños simples
Dificultad de diseño
Necesita procesadores de altas
prestaciones
Genera problemas numéricos

Tema 6: Sistema Digitales de Control en Tiempo Discreto

7

Diseño de un sistema de control digital
Pasos de diseño de un sistema de control:
• Obtención del modelo del sistema a controlar
• Diseño del controlador para obtener el comportamiento deseado del
sistema a controlar
El diseño de controles digitales implica la conversión del sistema en una
forma discreta. Dos métodos de conversión:
• Diseño analógico y conversión a discreto para su implementación
• Diseño discreto ⇒ se debe obtener el modelo de la planta en forma
discreta (transformada Z)

Tema 6: Sistema Digitales de Control en Tiempo Discreto

8

4
6.1.2 Discretización de sistemas
analógicos

9

Técnicas de discretización de sistema analógicos
Tres técnicas para convertir un sistema analógico en discreto:
• Mantenedor de orden zero (ZOH)
• Correspondencia polos-ceros
• Transformación bilineal

Tema 6: Sistema Digitales de Control en Tiempo Discreto

10

5
Mantenedor de orden cero (ZOH)
Esta técnica asume que el controlador tiene a la entrada un mantenedor de
orden cero
DAC

ADC

1− e
s

−Ts

D(s)
D(z)

 D (s ) 
D( z ) = 1 − z −1 Z 

 s 

(

)

11

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Correspondencia Polo-Cero
Los polos y ceros “si” de D(s) se mapean como polos y ceros de D(z) de
acuerdo con:

z i = e si T

T = periodo de muestreo

Si D(s) tiene más polos que ceros se añaden ceros en z=-1 en el numerador
para igualar el número de polos y ceros.
La ganancia se escoge adecuadamente para que se cumpla:

D( z ) z =1 = D(s ) s =0

Tema 6: Sistema Digitales de Control en Tiempo Discreto

12

6
Transformación Bilineal
También denominada aproximación de Tustin o trapezoidal, utiliza la
siguiente relación

s=

2 (z − 1)
T z +1

T = periodo de muestreo

para transformar el dominio en “s” en un dominio en “z”

Tema 6: Sistema Digitales de Control en Tiempo Discreto

13

6.1.3 Modelo discreto de un motor DC

14

7
Modelo de la planta (I)
El primer paso en el diseño de un control es obtener el modelo de la planta
Ejemplo: modelo de un motor DC de imán permanente

Características eléctricas: L

di
+ Ri = V − emf
dt

L: inductancia del motor
R: resistencia
V: tensión de alimentación
i: corriente
emf: fuerza contraelectromotriz = Ke · θ
Ke: constante de fuerza contraelectromotriz

15

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Modelo de la planta (II)
Características mecánicas:

JM

d 2θ
dθ
d 2θ
+B
+ Kθ = TL − J L 2
dt
dt 2
dt
JM: inercia del motor
θ: desplazamiento angular
K: constante de rigidez
B: coeficiente de fricción viscosa
JL: inercia de la carga=Kt · i
TL: par de rotación de la carga
Kt= constante de par de rotación

Tema 6: Sistema Digitales de Control en Tiempo Discreto

16

8
Modelo de la planta (III)

Parámetros del motor
DC Pittman 9412G316

Modelo eléctrico
di
L + Ri = V − emf
dt

R = 6.4Ω
J = Jm+JL = 60 ·10-6 kg·m2
Kt = 0.0207 (N · m)/A
Ke = 0.0206 volt/(rad/s)

Modelo mecánico
dθ
dθ
d 2θ
+ Kθ = TL − J L 2
JM 2 + B
2

dt

θ (s )

dt

dt

J −1 (K t R )
G (s ) =
=
V (s ) s s + J −1 (K t K e R )

Gm (s ) =
Tema 6: Sistema Digitales de Control en Tiempo Discreto

(

θ (s )

V (s )

)

=

53.906
s(s + 1.116 )

17

Conversión a formato discreto (I)


 G (s )  

 s 

−1
−1
Transformación ZOH: G (z ) = (1 − z ) Z L 



A
G (s )
b
A A2
= 2
= 1+ 2 + 3
s
s (s + a ) s s
s+a

(

)

(

G (s ) − b a 2 (b a ) b a 2
=
+ 2 +
s
s
s
s+a

(

)

(

)

b = J −1 ( K t R )

a = J −1 (K t K e R )

T: periodo de muestreo
T = 0.001

)

b a 2 e − aT − 1 + aT z −1 + b a 2 1 − e − aT − aTe − aT z −2
G (z ) =
1 − 1 + e − aT z −1 + e − aTz − 2

(

)

Tema 6: Sistema Digitales de Control en Tiempo Discreto

18

9
Conversión a formato discreto (II)
G (z ) =

(

)

(

)

b a 2 e − aT − 1 + aT z −1 + b a 2 1 − e − aT − aTe − aT z −2
1 − 1 + e − aT z −1 + e − aTz − 2

(

)

a = 1.116
b = 53.906
T = 0.001

Km: Factor de ganancia

θ (z )

0.2694 z −1 + 0.2693 z −2
=
G (z ) =
⋅ Km
V ( z ) 1 − 1.999 z −1 + 0.999 z − 2
Tema 6: Sistema Digitales de Control en Tiempo Discreto

19

6.2 Diseño de un control digital PID

20

10
Algoritmos de control
• Técnicas de compensación: el controlador añade polos y ceros al sistema para
obtener la respuesta deseada .
• PID: el control PID es la suma de tres términos: Proporcional al error + Integral del
error + Derivada del error. Es el algoritmo de control más utilizado.
• Deadbeat: Se utiliza cuando se desea una respuesta rápida. Se diseña en el dominio Z
• Modelos en el espacio de estado: describen matricialmente el modelo de sistema a
controlar. Se utiliza cuando hay muchas variables de estado a controlar.
• Control óptimo: se utiliza cuando se desea minimizar un parámetro específico del
sistema (p.e. Tiempo de establecimiento, energía, ...). El controlador o compensador
debe minimizar el parámetro.
• Control adaptativo: se utiliza en sistemas cuyos parámetros cambian con el tiempo
haciendo inestable el control. El control adaptativo sigue los cambios de la planta y
rediseña el controlador para obtener un control óptimo del sistema.
Tema 6: Sistema Digitales de Control en Tiempo Discreto

21

6.2.1 Introducción al control PID digital

22

11
Expresión general control PID

Minimiza el error
Reduce el error a cero en
régimen permanente
Kp: constante proporcional
Ki: constante integral
Kd: constante derivativa
u(t): salida del control
e(t): señal de error

• Incrementa la
estabilidad de la planta
• Acción anticipativa que
reduce el sobreimpulso

23

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Controlador PID analógico y discreto
Control PID digital

Control PID analógico
KP
e(t)
E(s)

KI/s

+
+

+

KP
u(t)

e(n)
E(z)

U(s)

+

u(n)
U(z)

DD(z)

KD·s
Función de transferencia
U (s ) = K p E (s ) + K i

DI(z)

+
+

E (s )
+ K d s E (s )
s

Función de transferencia
U ( z ) = K p E ( z ) + DI (z )E (z ) + DD ( z )E ( z )

Existen diversos modos de implementar DI(z)
Tema 6: Sistema Digitales de Control en Tiempo Discreto

24

12
Implementación del control PID discreto
Dos técnicas de implementación del control PID digital:
• Aproximación rectangular:
• El diseño se realiza en el dominio analógico y a continuación se
transfiere al dominio discreto
• Es fácil de implementar y proporciona resultados satisfactorios
• Aproximación trapezoidal:
• El diseño se realiza en el dominio discreto directamente utilizando
técnicas de ubicación de polos

Tema 6: Sistema Digitales de Control en Tiempo Discreto

25

6.2.2 Aproximación rectangular del
control PID

26

13
Aproximación rectangular del PID (I)
Término proporcional

Término derivativo

K p e(t ) = K p e(n )

Aproximación
rectangular

Si T es suficientemente pequeño se
puede aproximar por:

Término integral
K i ∫ e(t ) = K iT ∑ ei
i

Kd

Si se conoce e(n+1) se puede obtener
una mejor aproximación de la derivada:

Kd

Periodo de muestreo

e(t )
e(n ) − e(n − 1)
= Kd
dt
T

e(t )
e(n + 1) − e(n )
= Kd
dt
T

Algoritmo de posición
u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T
i

27

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Aproximación rectangular del PID (II)
Algoritmo de posición
u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T
i

Algoritmo de velocidad
∆u (n ) = u (n ) − u (n − 2 )

Inconveniente: en caso de
malfuncionamiento del sistema digital
que calcula u(n) se podría generar una
salida u(n)=0

• Es el algoritmo que se utiliza habitualmente
• El sistema de control solo calcula el incremento de la
señal de control
• Presenta mejor comportamiento en arranque y frente
a transitorios bruscos en la señal de referencia.

Tema 6: Sistema Digitales de Control en Tiempo Discreto

28

14
Algoritmo PID de velocidad
Algoritmo de velocidad

∆u (n ) = u (n ) − u (n − 2 )
n−2

u (n − 2 ) = K p e(n − 2 ) + K iT ∑ ei + K d [e(n − 1) − e(n − 2)] T
i =1

u (n ) − u (n − 2 ) = K p [e(n ) − e(n − 2 )] + K iT [e(n ) + e(n − 1)] + K d T [e(n ) − 2e( n − 1) + e( n − 2)]
u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )
K1 = K p + K d T + K i T
K 2 = K iT − 2 K d T
K3 = K d T − K p

29

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Determinación coeficientes PID
Método del margen de fase (MF) y margen de ganancia (MG)
Se escoge como parámetros de diseño:
• MF = 55º
• Frecuencia de transición (fase:-180º) = 100Hz

Aplicando técnicas de control clásico
en el dominio frecuencial se obtiene:
Kp = 4181
Kd = 9.569
Ki = 1

Tema 6: Sistema Digitales de Control en Tiempo Discreto

MG = 77dB (f=100Hz)
K1 = 13751
K2 = -19138
K3 = 5387

30

15
Implementación digital del PID
u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )
z-1

e(n)
K1

X

K2

+

e(n-1)

X

z-1
K3

e(n-2)

X

+

u(n-2) z-1

z-1

+

u(n)
Tema 6: Sistema Digitales de Control en Tiempo Discreto

31

Respuesta al escalón con el control PID
u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )

Tema 6: Sistema Digitales de Control en Tiempo Discreto

32

16
Respuesta al escalón con el control PID

Tema 6: Sistema Digitales de Control en Tiempo Discreto

33

6.2.3 Aproximación trapezoidal del
control PID

34

17
Aproximación trapezoidal
• Se utiliza cuando se requiere una mayor precisión en la conversión discreta
• La integral se determina con la suma de trapezoides

Área del trapezoide:

Función transferencia término integral

e(n)

e(n-1)

T
[e(n ) + e(n − 1)]
2

u (n ) = u (n − 1) + K I

(

)

U ( z ) 1 − z −1 = K I

DI ( z ) =

T
[e(n ) + e(n − 1)]
2

[

]

T
1 + z −1 E [z ]
2

(
(

U (z )
T 1 + z −1
= KI
E (z )
2 1 − z −1

)
)
35

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Aproximación trapezoidal PID
u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T
i

U (z ) = K p E (z ) + K I

Transformada Z de cada término

(
(

)
)

K
T 1 + z −1
E ( z ) + d 1 − z −1 E ( z )
−1
2 1− z
T

(

)

Función de transferencia discreta

D(z ) =

D(z ) =

(2TK

p

(
(

)
)

U (z )
T 1 + z −1 K d
= K p + KI
+
1 − z −1
−1
E (z )
2 1− z
T

) (

(

)

Reordenando términos

)

+ K I T 2 + 2 K d + K I T 2 − 2 K pT − 4 K d z −1 + 2 K d z − 2

(

2T 1 − z

Tema 6: Sistema Digitales de Control en Tiempo Discreto

−1

)

36

18
Diseño del control PID de un motor DC

K1 + K 2 z −1 + K 3 z −2
GPID ( z ) =
1 − z −1
Con: K1 = K p +

G p (z ) =

θ (z )

V (z )

=

Ki
K
K
K
2K d
T + d , K2 = −K p + i T −
, K3 = d
T
T
T
2
2

0.2694 z −1 + 0.2693z −2
⋅ Km
1 − 1.999 z −1 + 0.999 z − 2

Tema 6: Sistema Digitales de Control en Tiempo Discreto

37

Determinación coeficientes PID
Gs ( z ) =

G p ( z )Gc (z )

1 + G p (z )Gc ( z )

Función de transferencia global del sistema

Matlab ⇒ ubicación de polos en 0.96, 0.95, 0.2 y 0.15
Resolviendo el denominador para la
ubicación de polos propuesta se obtiene:
K1 = 1.4795
K1 + K 2 z −1 + K 3 z −2
GPID ( z ) =
K2 = -2.845
1 − z −1
K3 = 1.3636

u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )
Tema 6: Sistema Digitales de Control en Tiempo Discreto

38

19
Respuesta al escalón con el control PID
u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )

39

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Respuesta al escalón con el control PID

Polos cerca del círculo unidad:
• Aumenta el tiempo de respuesta
• El sistema puede hacerse inestable
Tema 6: Sistema Digitales de Control en Tiempo Discreto

Polos cerca del origen:
• Disminuye el tiempo de respuesta
• Aumenta el sobre impulso
40

20
Implementación digital del PID
u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 )
z-1

e(n)
K1

X

K2

+

e(n-1)

X

z-1
K3

+

e(n-2)

X

u(n-1) z-1

+

u(n)
Tema 6: Sistema Digitales de Control en Tiempo Discreto

41

6.3 Arquitecturas de realización de
controladores digitales

42

21
Diagrama de bloques de un controlador digital

e1(t)

e1(n)
T

E1(z)

D(s)

e2(t)

e2(n)
T

E2(z)

D(z)
Expresión general de la función de transferencia del controlador digital

E2 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m
D(z ) =
=
E1 (z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p

43

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Elementos para realizar de un controlador digital
D(z ) =

Elementos de retardo
e1(n)

Z-1

e1(n-1)

Registro de “n” bits

E2 (z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m
=
E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p

Sumadores c.a.2
+
+

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Multiplicadores c.a.2
e1(n-m)
bm
a0

44

22
Estructuras de implementación
• Programación directa: implementa la ecuación en diferencias
• Programación estándar: reduce el número de registros a utilizar
• Programación en serie
• Programación en paralelo
• Programación en escalera

La función de transferencia se descompone
en funciones de primer y segundo orden
para disminuir los errores de truncado de
coeficientes

Tema 6: Sistema Digitales de Control en Tiempo Discreto

45

6.3.1 Programación directa

46

23
Descomposición de la función de transferencia
E2 (z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m
D( z ) =
=
E1 (z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p

[

]

[

E2 ( z ) a0 + a1 z −1 + a2 z −2 + L + a p z − p = E1 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m

]

Transformada “z” inversa
p

m

i =1

i =0

a0 ⋅ e2 (n ) + ∑ ai e2 (n − i ) = ∑ bi e1 (n − i )

1
e2 (n ) =
a0

Salida actual

m

1
∑ bi e1 (n − i ) − a
i =0
0

p

∑ a e (n − i )
i =1

i 2

Salidas anteriores

Entradas
Tema 6: Sistema Digitales de Control en Tiempo Discreto

47

Implementación directa
e1(n)

Z-1

b0
a0

e1(n-1)

e1(n-2)

e1(n-m)

b2
a0

Z-1

bm
a0

b1
a0

+

+

+

+

+

+

Los coeficientes ai y bi aparecen de
forma directa
Recursos utilizados:
• M+P elementos de retraso “Z-1”
• M+P+1 multiplicadores
• M+P sumadores

+

e2(n)

+
e2(n)

Z-1

e2(n-1)
− a1
a0

e2(n-2)

e2(n-p)

− a2
a0

Z-1

− ap
a0

+
+

+
+

Tema 6: Sistema Digitales de Control en Tiempo Discreto

48

24
6.3.2 Programación estándar

49

Descomposición de la función de transferencia
D(z ) =

E2 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m E2 ( z ) H ( z )
=
=
E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p H ( z ) E1 ( z )

E2 ( z )
= b0 + b1 z −1 + b2 z − 2 + L + bm z − m
H (z )

H (z )
1
=
−1
E1 (z ) a0 + a1 z + a2 z − 2 + L + a p z − p
Transformada “z” inversa

[

]

m

E2 ( z ) = b0 + b1 z −1 + b2 z − 2 + L + bm z − m ⋅ H ( z )
H (z ) =

[

⇒ e2 (n ) = ∑ bi h(n − i )
i =0

]

1
1
1
1
E1 ( z ) −
a1 z −1 + a2 z − 2 + L + a p z − p ⋅ H ( z ) ⇒ h(n ) = e1 (n ) −
a0
a0
a0
a0

Tema 6: Sistema Digitales de Control en Tiempo Discreto

p

∑ a h(n − i )
i =1

i

50

25
Implementación estándar
Recursos utilizados:
• P elementos de retraso “Z-1”
• P+M+2 multiplicadores
• P+M+1 sumadores

+

+

2

1

0

b

b

Z-1

b

-

h(n)

b

+

m

+
−
a0 1

+

e1(n)

+

a1
a0

+
+

ap

am
a0

a2
a0

+

h(n-p)

Z-1

Z-1

e2(n)

+

a0

+
+

+

Tema 6: Sistema Digitales de Control en Tiempo Discreto

51

Fuentes de error
La precisión en la implementación de controles digitales es importante para
obtener un buen resultado.
Hay tres fuentes de error que afectan a la precisión:
• El error de cuantificación de los ADC
• Redondeo en las operaciones aritméticas
• Truncamiento de los coeficientes ai y bi ⇒ este error aumenta al
aumentar el orden de la función de transferencia ⇒ un pequeño error
en los coeficientes de un filtro de orden elevado provoca un gran error
en la ubicación de polos y ceros
Este error se puede reducir matemáticamente descomponiendo las funciones
de transferencia de orden elevado en combinaciones de funciones de primer
y segundo orden
Tema 6: Sistema Digitales de Control en Tiempo Discreto

52

26
6.3.3 Programación serie

53

Descomposición de la función de transferencia
La función de transferencia se descompone en un producto de funciones sencillas
de primer o segundo orden
r
E ( z ) b + b z −1 + b z −2 + L + bm z − m
D( z ) = 2 = 0 1 −1 2 − 2
= D1 ( z ) ⋅ D2 ( z )L Dr ( z ) = ∏ Dk ( z )
E1 ( z ) a0 + a1 z + a2 z + L + a p z − p
k =1
e1(n)

D1(z)

D2(z)

Dr(z)

e2(n)

Las funciones de transferencia Di(z) dependen de los polos y ceros de D(z):
Polo y cero reales
1 + bi z −1
Di ( z ) =
1 + ai z −1

Polos y ceros complejo conjugados
1 + ei z −1 + f i z −2
Di ( z ) =
1 + ci z −1 + d i z − 2

Tema 6: Sistema Digitales de Control en Tiempo Discreto

54

27
Implementación estándar
+
+
1

b
−
a0 1

h(n)

+

Z-1

Z-1

h(n-1)
h(n-1)

Z-1

h(n-2)
h(n-2)

a1
a0

-

Z-1
Z-1

+
+

h(n-m)
h(n-m)

e2(n)

h(n-p)
ap

am
a0

a2
a0

+

+

b

0

b

e1(n)

Z-1

b

h(n)

+

2

i =0

m

e2 (n ) = ∑ bi h(n − i )

+
+

m

a0

+
+
h(n ) =

Tema 6: Sistema Digitales de Control en Tiempo Discreto

+
1
1
e1 (n ) −
a0
a0

p

∑ a h(n − i )
i =1

i

55

Implementación funciones Di(z) (I)
Polo y cero reales
Y ( z ) 1 + bi z −1
=
X ( z ) 1 + ai z −1

Z-1

b

+

i

x(n)

+

+
y(n)

ai

Tema 6: Sistema Digitales de Control en Tiempo Discreto

56

28
Implementación funciones Di(z) (II)
Polos y ceros complejo conjugados
Y ( z ) 1 + ei z −1 + f i z −2
=
X ( z ) 1 + ci z −1 + d i z − 2
+

Z-1

f

e

Z-1

i

i

x(n)

+

+
+

+
y(n)

ci

+
+

di

Tema 6: Sistema Digitales de Control en Tiempo Discreto

57

6.3.4 Programación paralelo

58

29
Descomposición de la función de transferencia
La función de transferencia se descompone en suma de fracciones parciales de
primer y segundo orden:
E ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m
D(z ) = 2
=
= A + D1 ( z ) + D2 ( z ) + L + Dq ( z )
E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p
j

= A + ∑ Di ( z ) +
i =1

q

∑ Di (z ) = A +

i = j +1

j

b
∑ 1 + ai z −1
i =1
i

+

Polos reales

ei + f i z −1
∑
−1
+ di z −2
i = j +1 1 + ci z
q

Polos complejos

A
e1(n)

D1(z)

e2(n)

Dq(z)
59

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Implementación funciones Di(z) (I)
Polos reales
bi
Y (z )
=
X ( z ) 1 + ai z −1

i

b

x(n)

+

y(n)

Z-1
ai

Tema 6: Sistema Digitales de Control en Tiempo Discreto

60

30
Implementación funciones Di(z) (II)
Polos complejos conjugados
Y (z )
ei + f i z −1
=
X ( z ) 1 + ci z −1 + d i z − 2

i

e

+
f

+

Z-1

i

x(n)

+

y(n)

Z-1

ci

+
+

di

Tema 6: Sistema Digitales de Control en Tiempo Discreto

61

6.3.5 Programación en escalera

62

31
Descomposición de la función de transferencia
1
con i = 1,2,..., p − 1
Bi z + Gi( A ) ( z )
1
Di( A ) ( z ) =
con i = 1,2,..., p − 1
B
Ai + Gi(+1) ( z )
1
D (pB ) ( z ) =
1
Bp z +
Ap

Di( B ) ( z ) =

D( z ) = A0 + D1( B ) ( z )

D( z ) = A0 +

1
B1 z +

1
A1 +

1
1
M

B2 z +
Ap −1

1
Bp z +

Tema 6: Sistema Digitales de Control en Tiempo Discreto

1
Ap

63

Ejemplo de programación en escalera (I)
D( z ) = A0 +

1
B1 z +

1
A1 +

p=2

D (pB ) ( z ) =

1
B2 z +

1
A2

D( z ) = A0 +

1

B1 z +

1
(
A1 + D2B ) ( z )

= A0 +

1

Bp z +

1
Ap

1
= A0 + D1( B ) ( z )
B1 z + D1( A ) ( z )

Di(B)(z) se puede escribir como:
Di( B ) ( z ) =

1
Y (z )
=
X ( z ) Bi z + Di( A ) ( z )

Tema 6: Sistema Digitales de Control en Tiempo Discreto

X i ( z ) − Di( A )Yi ( z ) = Bi zYi ( z )

64

32
Ejemplo de programación en escalera (II)
X i ( z ) − Di( A )Yi ( z ) = Bi zYi ( z )

+

Z-1

i

B1

x(n)

y(n)

Di( A ) ( z )

65

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Ejemplo de programación en escalera (III)
Di(A)(z) se puede escribir como:

+

B
X i ( z ) − Di(+1)Yi ( z ) = AiYi ( z )

A1

x(n)

1
Y (z )
=
B
X ( z ) Ai + Di(+1) ( z )

i

Di( A ) ( z ) =

y(n)

B
Di(+1) ( z )

Tema 6: Sistema Digitales de Control en Tiempo Discreto

66

33
Ejemplo de programación en escalera (IV)

1

A1

+

6
x

(
D2B ) ( z )

x
1

5
x
+

1

6

Z-1

2

B1

-

x(n)

3

(B )

D1

y(n)

+
+

(z ) x
2

B1

+
-

5

1
(
A1 + D2B ) ( z )

1

B1 z +

1
= A0 + D1( B ) ( z )
B1 z + D1( A ) ( z )

= A0 +

A

4

1

0

D( z ) = A0 +

Z-1

2

3
x

1 A2

D1( A ) ( z )

4
x
67

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Ejemplo de programación en escalera (V)
Combinación de los diagramas de bloques
x(n)

+

0

A

+x

1 x+

2

Z-1

1

B1

-x

y(n)

3

+

x4

1

A1

+x 5

Z-1

2

B1

-

- x 6

1 A2

Tema 6: Sistema Digitales de Control en Tiempo Discreto

68

34
6.4 Ejemplo de diseño: control de un
motor DC mediante el driver L293E

69

Índice
6.4.1. Introducción al sistema de control digital de un motor
6.4.2. Modelo equivalente eléctrico del motor DC
6.4.3. Interface con el motor: L293E
6.4.4. Control en lazo abierto de la velocidad de giro
6.4.5. PWM digital
6.4.6. Monitorización de la velocidad de giro
6.4.7. Regulación de la velocidad de giro

Tema 6: Sistema Digitales de Control en Tiempo Discreto

70

35
6.4.1 Introducción al sistema de control
digital de un motor

71

Diagrama de bloques del sistema de control
Placa interface
FPGA

Elementos básicos:
• FPGA: implementa el sistema digital de control
• Interface etapa lógica-motor: etapa de potencia controlada digitalmente que
alimenta el motor DC
• Motor: sistema a controlar
• Sensor óptico: permite medir la velocidad de giro del motor
Tema 6: Sistema Digitales de Control en Tiempo Discreto

72

36
6.4.2 Modelo equivalente eléctrico del
motor DC

73

Modelo ideal del motor DC
• Transformador ideal de tensión/corriente en velocidad/fuerza
• Relaciones de transformación:
K·IS = Fm
VS = K·Um
(fuerza)

(velocidad)

Tema 6: Sistema Digitales de Control en Tiempo Discreto

74

37
Modelo real del motor DC con pérdidas

Le y Re: Inductancia y resistencia del devanado del rotor
Cm: modela la resistencia que presenta el motor a cambios de
velocidad
Rm: resistencia mecánica
RL: carga del motor
75

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Circuito eléctrico equivalente del motor
Circuito equivalente del secundario visto desde el primario

Modelo eléctrico equivalente de segundo orden
wA
1
= 2
2
VS
s + 2α s + wo
wo =

1
Leq ⋅ C eq

V = D ⋅ V REF
Tema 6: Sistema Digitales de Control en Tiempo Discreto

76

38
6.4.3 Interfase con el motor: L293E

77

Driver de cuatro canales Push-Pull

Características:
• Iout: 1A por canal
• Iout de pico: 2 A por canal
• Entrada de inhibición
• Protección contra sobre-temperatura

Tema 6: Sistema Digitales de Control en Tiempo Discreto

78

39
Diagrama de bloques
Entradas de control
Entradas de
habilitación

Modelo driver de corriente
Vss

79

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Control unidireccional del motor DC (I)
Conexión a +Vs

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Conexión a masa

80

40
Control unidireccional del motor DC (II)
Vss
Vss

Conexión a masa

1
M

Vss
M
0
Conexión a +Vs
Tema 6: Sistema Digitales de Control en Tiempo Discreto

81

Control bidireccional del motor DC (I)

Tema 6: Sistema Digitales de Control en Tiempo Discreto

82

41
Control bidireccional del motor DC (II)
Giro a la derecha
Vss

1

Giro a la izquierda
Vss

+

M

-

0

0

Va=Vss

+

M

-

1

Va=-Vss

Tema 6: Sistema Digitales de Control en Tiempo Discreto

83

6.4.4 Control en lazo abierto de la
velocidad de giro

84

42
Control en lazo abierto de la velocidad de giro
• Variando la tensión de alimentación del motor se varia su velocidad
• Con un modulador PWM se obtiene una tensión variable de valor:
D·Vcc donde D es el ciclo de trabajo de la señal PWM

85

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Diagrama de bloques del
sistema de control en lazo abierto
Modulador PWM

Motor
D·VREF

Variando el ciclo de trabajo D se varia la tensión de alimentación del
motor y con ello la velocidad de giro ωA

w A = D ·V REF ·

1
2
s 2 + 2α s + wo

Tema 6: Sistema Digitales de Control en Tiempo Discreto

86

43
Modulador de anchura de pulsos (PWM)
TON TOFF TON TOFF TON TOFF
VREF

D

Tc: periodo de conmutación
D = TON/Tc con 0 ≤ D ≤ 1
• Si el Tc es suficientemente pequeño la tensión equivalente que se aplica
al motor es el valor medio de la señal PWM: D·VREF

87

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Margen dinámico de la alimentación del motor
con driver de puente en H
Vss

D=1

0

M
+
Va=Vss

1

0

1

0

0

+

M

1

-

Va=-Vss
Vss

D = 0.5
1

Vss

D=0

+

M

1

-

0

1

0

Va=0
Tema 6: Sistema Digitales de Control en Tiempo Discreto

88

44
Forma de onda de la tensión del motor
+Vss

-Vss

Tema 6: Sistema Digitales de Control en Tiempo Discreto

89

6.4.5 PWM digital

90

45
Estructura del PWM analógico
Rampa

Comparador
PWM

Tc

+

D

Ciclo de trabajo
D

PWM
91

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Estructura del PWM digital de 8 bits de precisión
CLK

Contador
8 bits

8

Comparador
A 8 bits
LT

D

Tc = 28·TCLK

8

1

PWM

B

Tc

D1
D2
PWM2
PWM1
Tema 6: Sistema Digitales de Control en Tiempo Discreto

92

46
Diseño Xilinx del PWM digital
Contador

Comparador

Divisor de
frecuencia

Salidas de
activación
del puente

P80

Ciclo de
trabajo

Salida de habilitación
del puente

93

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Divisor de frecuencia
• Diseñar el divisor de frecuencia para que Tc=1ms
• Tc = 28·TCLK

TCLK
P80
50MHz

Tema 6: Sistema Digitales de Control en Tiempo Discreto

94

47
Ciclo de trabajo
• El valor del ciclo de trabajo se introduce mediante los switches
• La precisión es de 8 bits
El SW1 es el bit de mayor peso

Tema 6: Sistema Digitales de Control en Tiempo Discreto

95

Señales de control del puente en H

PWM

PWM1
ENABLE

Tema 6: Sistema Digitales de Control en Tiempo Discreto

96

48
6.4.6 Monitorización de la velocidad de
giro

97

Fotointerruptor
4

3

1

2
4

3
Vista inferior

1
Tema 6: Sistema Digitales de Control en Tiempo Discreto

2
98

49
Esquema de conexión
+Vcc

10kΩ
180Ω

+Vcc
4

3

Pin
FPGA

560Ω
1

2
99

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Algoritmo de medida de la velocidad de giro
La velocidad se obtiene contando el nº de pulsos por unidad de tiempo:

vrps =

Np
Nv ⋅T

Vrps: velocidad en revoluciones por segundo
Np: número de pulsos contados
Nv: número de ventanas del disco
T: tiempo de cuenta en segundos

A la FPGA
1
1
0
0
Tema 6: Sistema Digitales de Control en Tiempo Discreto

Simplificación del cálculo:
Si T = 1/Nv ⇒ vrps = Np

100

50
Implementación digital del algoritmo

Pulsos del
fotointerruptor

CK

Contador
de pulsos

Registro
de Np

Reset Asíncrono
CK

50MHz

CK

Temporizador
T segundos

T
101

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Dimensionado de componentes
Temporizador T
• Para Nv = 24 y con T = 1/Nv ⇒ vrps = Np
• El valor a temporizar es T = 41.66ms
• Si fCLK = 50MHz, 41.66ms equivalen a 2.083.333 pulsos
Temporizador T
50MHz

Contador de 21 bits
T0
MAX COUNT:
CK
2.083.333d = 1FCA05H

Tema 6: Sistema Digitales de Control en Tiempo Discreto

T=41.66ms

102

51
Dimensionado de componentes
Contador de pulsos, Registro Np
• Si se toma como velocidad máxima vrps_max = 100d
• El contador debe ser de 7 bits
• El registro también es de 7 bits
+Vcc

+Vcc

Pin
180Ω FPGA

10kΩ
4

560Ω
1

3
2

Contador de 7 bits
7

CK
Reset Asíncrono

T=41.66ms
Tema 6: Sistema Digitales de Control en Tiempo Discreto

Registro
7 bits

7

CK

103

Bloques de memoria RAM
en la familia Spartan 2/2E

Estructura
utilizada

Tema 6: Sistema Digitales de Control en Tiempo Discreto

104

52
Etapa de visualización
• Se debe visualizar valores entre 0 y 99 rps
• Los valores a visualizar se almacenan en la memoria RAM

Registro
7 bits

4

(MSB) B6
B5
7
B4
B3
B2
B1
(LSB) B0

D
A3, P49

9

RAM
512 x 8bits

4

U
A4, P58
ó P56 (2E)

105

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Ejemplo de visualización
Para Np=50d,
el valor del registro es
0110010b

Registro
7 bits

7

Bus de
direcciones

9

Bus de
datos
D
4
0101
RAM
[7..4]
512 x 8bits 4 U
0000
[3..0]

Los dos bits de mayor peso del bus de direcciones valen siempre 0
Tema 6: Sistema Digitales de Control en Tiempo Discreto

106

53
Contenido de la memoria RAM
INIT_00=3130292827262524232221201918171615141312111009080706050403020100
INIT_01=6362616059585756555453525150494847464544434241403938373635343332
INIT_02=9594939291908988878685848382818079787776757473727170696867666564
INIT_03=0000000000000000000000000000000000000000000000000000000099989796
INIT_04=0000000000000000000000000000000000000000000000000000000000000000
INIT_05=0000000000000000000000000000000000000000000000000000000000000000
INIT_06=0000000000000000000000000000000000000000000000000000000000000000
INIT_07=0000000000000000000000000000000000000000000000000000000000000000
INIT_08=0000000000000000000000000000000000000000000000000000000000000000
INIT_09=0000000000000000000000000000000000000000000000000000000000000000
INIT_0A=0000000000000000000000000000000000000000000000000000000000000000
INIT_0B=0000000000000000000000000000000000000000000000000000000000000000
INIT_0C=0000000000000000000000000000000000000000000000000000000000000000
INIT_0D=0000000000000000000000000000000000000000000000000000000000000000
INIT_0E=0000000000000000000000000000000000000000000000000000000000000000
INIT_0F=0000000000000000000000000000000000000000000000000000000000000000

107

Tema 6: Sistema Digitales de Control en Tiempo Discreto

Activación de los dígitos

D[7..4] 4

8

0

U[3..0] 4

4

1 S0
S0

0

BIN7SEG

Señales
habilitación
de dígitos

8
A3, P49
8

1

A3
A4

Tema 6: Sistema Digitales de Control en Tiempo Discreto

A4, P58 ó
P56 (2E)

108

54
Control de activación de los dígitos
El control de activación se puede realizar mediante un sistema secuencial

95Hz
50 MHz P80
Contador 19 bits
Clock

La frecuencia de barrido
del display es de 95Hz

Sistema S0
secuencial A4
de control A3

Estado Actual
Estado siguiente
S0
A4
A3

S0
S1
0
0
1

S1
S0
0
1
0

Tema 6: Sistema Digitales de Control en Tiempo Discreto

109

6.4.7 Regulación de la velocidad de giro

110

55
Sistema de control en lazo cerrado
El sistema de control ajusta el valor de D para que la velocidad real, wa se
mantenga igual a la velocidad deseada wd
Se compara la velocidad
real con la ideal

Con el resultado de la comparación
se ajusta el ciclo de trabajo D

Tema 6: Sistema Digitales de Control en Tiempo Discreto

111

Bibliografía (I)
www.ti.com
• Application Report SPRA083: “Implementation of PID and Deadbeat
Controllers with the TMS320 Family,” Irfan Ahmed
• Application Report SPRA009: “Control System Compensation and
Implementation with the TMS32010,” Charles Slivinsky
www.motorola.com
• AN1213/D: “16-Bit DSP Servo Control With the MC68HC16Z” David
Wilson
• AN1249/D: Bruhed DC Motor Control Using the MC68HC16Z1
• AN1712: “Get Your Motor Running” with the MC68HC708MP16
Tema 6: Sistema Digitales de Control en Tiempo Discreto

112

56
Bibliografía (II)
• Katsuhiko Ogata, “Discrete-Time Control Systems,” Ed. Prentice Hall
www.st.com
• L293B/L293E Data Sheet

Tema 6: Sistema Digitales de Control en Tiempo Discreto

113

57

Más contenido relacionado

PDF
Control digital con matlab
PDF
Control digital: Teoría y practica parte 1
PPTX
Control digital
PDF
Control digital: Tema 3. Análisis de sistemas discretos
PPTX
3.2 control on off y proporcional
DOCX
Control proporcional
PPTX
ODP
Definiciones de control
Control digital con matlab
Control digital: Teoría y practica parte 1
Control digital
Control digital: Tema 3. Análisis de sistemas discretos
3.2 control on off y proporcional
Control proporcional
Definiciones de control

La actualidad más candente (20)

PDF
Unidad III: Polos y Ceros de una función de transferencia.
DOCX
Lugar geométrico de las raices control 1
DOCX
Teorema de Kennedy
PDF
Modelación de sistemas - Función de transferencia y digramas de bloque
PDF
Teoria de control analisis de la respuesta en frecuencia
PDF
Latches y flip flops
PDF
Análisis de la respuesta transitoria. sistemas de segundo orden
PDF
Lugar geometrico de las raices
DOC
Criterio de estabilidad de Routh
PDF
Unidad 3 c2-control/DISCRETIZACION DE FUNCIONES DE TRANSFERENCIA
PPT
Filtros activos
PDF
Ingenieria de control moderna - Ogata 5ed
PDF
Unidad 3 c1-control
PPT
Unidad1 sd2
PPT
Electronica rectificadores
PDF
Muestreo y cuantificación de una señal analógica con MatLab
PDF
Modelado en espacio de estados
PPTX
Sistemas de primer orden, segundo orden y orden superior
ODP
Clase 2 - Estabilidad - Plano S - Plano Z
PDF
05 respuesta en el tiempo de un sistema de control
Unidad III: Polos y Ceros de una función de transferencia.
Lugar geométrico de las raices control 1
Teorema de Kennedy
Modelación de sistemas - Función de transferencia y digramas de bloque
Teoria de control analisis de la respuesta en frecuencia
Latches y flip flops
Análisis de la respuesta transitoria. sistemas de segundo orden
Lugar geometrico de las raices
Criterio de estabilidad de Routh
Unidad 3 c2-control/DISCRETIZACION DE FUNCIONES DE TRANSFERENCIA
Filtros activos
Ingenieria de control moderna - Ogata 5ed
Unidad 3 c1-control
Unidad1 sd2
Electronica rectificadores
Muestreo y cuantificación de una señal analógica con MatLab
Modelado en espacio de estados
Sistemas de primer orden, segundo orden y orden superior
Clase 2 - Estabilidad - Plano S - Plano Z
05 respuesta en el tiempo de un sistema de control
Publicidad

Destacado (20)

PDF
Unidad 5 - Introducción al control PID e implementación en S7-1200.
PDF
Unidad 4 control2
PDF
Control Pid
PDF
Control pid
PPT
Control digital
ODP
Estructura del Control PID
PDF
Control de posicion de un motro dccc
PDF
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
DOCX
Teoria de control (Controladores y sistemas de control)
PDF
Control pid discreto.........
PDF
digitalizacion de controladores
PPTX
Discretizar pid
PDF
Gráfica derivada e Integral de una función discreta y continua en matlab
PDF
Transformada z
PDF
Unidad 4 control2
PDF
Controladores no lineales ON-OFF - Controladores lineales P, PI, PD, PID - Pr...
PPT
22a clase generadores de pwm
PDF
91769788 modelo-y-control-de-motor-d-c-con-engranajes-2011-2
PPTX
Sintonización pid
PPTX
sintonizacion de controladores pid
Unidad 5 - Introducción al control PID e implementación en S7-1200.
Unidad 4 control2
Control Pid
Control pid
Control digital
Estructura del Control PID
Control de posicion de un motro dccc
CONTROL DE LA VELOCIDAD DE UN MOTOR DC CON ENCODER
Teoria de control (Controladores y sistemas de control)
Control pid discreto.........
digitalizacion de controladores
Discretizar pid
Gráfica derivada e Integral de una función discreta y continua en matlab
Transformada z
Unidad 4 control2
Controladores no lineales ON-OFF - Controladores lineales P, PI, PD, PID - Pr...
22a clase generadores de pwm
91769788 modelo-y-control-de-motor-d-c-con-engranajes-2011-2
Sintonización pid
sintonizacion de controladores pid
Publicidad

Similar a TEORIA PID CONTROL EN TIEMPO DISCRETO (20)

PDF
5-Control-Digital.pdfggggtttxdeyvcrkkkkkkkh
PDF
Control_discreto_para_ingenieria_mktr.pdf
PPTX
Teoria moderna de control
PDF
Control Discreto
PDF
02 introduccion
PPTX
sistemas de control abp
PPT
control digital
PPT
Introduccion a los sistemas de control digital
PPTX
Rafael solorazano 26620970_teoria_mod_10%_i_icorte
PDF
clase 6 -controladores 2023 teoria de control
PPT
Sistemas de control en tiempo discreto
PDF
Sistemas de control en tiempo discreto
PPT
diapositivas señales analogicas y digitañes
PPTX
introduccion al control digital_2011-2012 (1).pptx
PPTX
Laboratorio Sistema de control discreto.pptx
PPTX
02.CD_Introducción_Sistemas_de_Control.pptx
PDF
Control Multifrecuencia
PDF
08 controladores continuos
PDF
08 controladores continuos
5-Control-Digital.pdfggggtttxdeyvcrkkkkkkkh
Control_discreto_para_ingenieria_mktr.pdf
Teoria moderna de control
Control Discreto
02 introduccion
sistemas de control abp
control digital
Introduccion a los sistemas de control digital
Rafael solorazano 26620970_teoria_mod_10%_i_icorte
clase 6 -controladores 2023 teoria de control
Sistemas de control en tiempo discreto
Sistemas de control en tiempo discreto
diapositivas señales analogicas y digitañes
introduccion al control digital_2011-2012 (1).pptx
Laboratorio Sistema de control discreto.pptx
02.CD_Introducción_Sistemas_de_Control.pptx
Control Multifrecuencia
08 controladores continuos
08 controladores continuos

Último (20)

PDF
MANUAL de recursos humanos para ODOO.pdf
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
PPTX
modulo seguimiento 1 para iniciantes del
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PDF
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
PPTX
Curso de generación de energía mediante sistemas solares
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PDF
Ronmy José Cañas Zambrano - Potenciando la tecnología en Venezuela.pdf
PDF
Influencia-del-uso-de-redes-sociales.pdf
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
CyberOps Associate - Cisco Networking Academy
PDF
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
SAP Transportation Management para LSP, TM140 Col18
PDF
clase auditoria informatica 2025.........
PPTX
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
MANUAL de recursos humanos para ODOO.pdf
Historia Inteligencia Artificial Ana Romero.pptx
modulo seguimiento 1 para iniciantes del
TRABAJO DE TECNOLOGIA.pdf...........................
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
Curso de generación de energía mediante sistemas solares
Presentación PASANTIAS AuditorioOO..pptx
la-historia-de-la-medicina Edna Silva.pptx
Ronmy José Cañas Zambrano - Potenciando la tecnología en Venezuela.pdf
Influencia-del-uso-de-redes-sociales.pdf
Zarate Quispe Alex aldayir aplicaciones de internet .docx
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
CyberOps Associate - Cisco Networking Academy
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
SAP Transportation Management para LSP, TM140 Col18
clase auditoria informatica 2025.........
sa-cs-82-powerpoint-hardware-y-software_ver_4.pptx
Sesion 1 de microsoft power point - Clase 1
informe_fichas1y2_corregido.docx (2) (1).pdf

TEORIA PID CONTROL EN TIEMPO DISCRETO

  • 1. Departamento de Ingeniería Electrónica SISTEMAS DIGITALES DE INSTRUMENTACIÓN Y CONTROL TEMA 6 Sistemas Digitales de Control en Tiempo Discreto DAC ADC 1 − e −Ts s D(s) D(z) Rafael Ramos Lara Febrero 2007
  • 2. TEMA 6 Sistemas Digitales de Control en Tiempo Discreto 1 Índice (I) 6.1. Sistemas de control digital 6.1.1. Introducción al diseño de sistemas de control digital 6.1.2. Discretización de sistemas analógicos 6.1.3. Ejemplo: modelo discreto de un motor DC 6.2. Diseño de un control digital PID 6.2.1 Introducción al control PID digital 6.2.2 Aproximación rectangular del control PID 6.2.3 Aproximación trapezoidal del control PID 6.3. Arquitecturas de realización de controladores digitales 6.3.1. Programación directa 6.3.2. Programación estándar 6.3.3. Programación serie 6.3.4. Programación paralelo 6.3.5. Programación en escalera Tema 6: Sistema Digitales de Control en Tiempo Discreto 2 1
  • 3. Índice (II) 6.4. Ejemplo de diseño: control de un motor DC mediante el driver L293E 6.4.1. Introducción al sistema de control digital de un motor 6.4.2. Modelo equivalente eléctrico del motor DC 6.4.3. Interface con el motor: L293E 6.4.4. Control en lazo abierto de la velocidad de giro 6.4.5. PWM digital 6.4.6. Monitorización de la velocidad de giro 6.4.7. Regulación de la velocidad de giro Tema 6: Sistema Digitales de Control en Tiempo Discreto 3 6.1 Sistemas de control digital 4 2
  • 4. 6.1.1 Introducción al diseño de sistemas de control digital 5 Componentes de un sistema de control Los componentes principales de un sistema de control son: • Sensores • Actuadores • Controlador: permite obtener el comportamiento deseado del sistema a controlar, manteniendo al mismo tiempo la estabilidad del sistema Tipos de controladores: • Controladores analógicos: implementados con amplificadores, resistencias, condensadores que realizan estructuras semejantes a filtros que modifican la respuesta frecuencial del sistema • Controladores digitales: implementados con microprocesadores, microcontroladores, DSP, FPGA, CPLD, etc... Necesitan conversores ADC y DAC Tema 6: Sistema Digitales de Control en Tiempo Discreto 6 3
  • 5. Controladores analógicos vs. digitales Controlador Analógico Ventajas • • • Digital • • • • Desventajas Elevado ancho de banda Elevada resolución Fácil de diseñar • Diseño programable Comportamiento preciso Implementación algoritmos complejos Fácilmente ampliable • • • • • Envejecimiento de componentes Derivas con la temperatura Bueno para diseños simples Dificultad de diseño Necesita procesadores de altas prestaciones Genera problemas numéricos Tema 6: Sistema Digitales de Control en Tiempo Discreto 7 Diseño de un sistema de control digital Pasos de diseño de un sistema de control: • Obtención del modelo del sistema a controlar • Diseño del controlador para obtener el comportamiento deseado del sistema a controlar El diseño de controles digitales implica la conversión del sistema en una forma discreta. Dos métodos de conversión: • Diseño analógico y conversión a discreto para su implementación • Diseño discreto ⇒ se debe obtener el modelo de la planta en forma discreta (transformada Z) Tema 6: Sistema Digitales de Control en Tiempo Discreto 8 4
  • 6. 6.1.2 Discretización de sistemas analógicos 9 Técnicas de discretización de sistema analógicos Tres técnicas para convertir un sistema analógico en discreto: • Mantenedor de orden zero (ZOH) • Correspondencia polos-ceros • Transformación bilineal Tema 6: Sistema Digitales de Control en Tiempo Discreto 10 5
  • 7. Mantenedor de orden cero (ZOH) Esta técnica asume que el controlador tiene a la entrada un mantenedor de orden cero DAC ADC 1− e s −Ts D(s) D(z)  D (s )  D( z ) = 1 − z −1 Z    s  ( ) 11 Tema 6: Sistema Digitales de Control en Tiempo Discreto Correspondencia Polo-Cero Los polos y ceros “si” de D(s) se mapean como polos y ceros de D(z) de acuerdo con: z i = e si T T = periodo de muestreo Si D(s) tiene más polos que ceros se añaden ceros en z=-1 en el numerador para igualar el número de polos y ceros. La ganancia se escoge adecuadamente para que se cumpla: D( z ) z =1 = D(s ) s =0 Tema 6: Sistema Digitales de Control en Tiempo Discreto 12 6
  • 8. Transformación Bilineal También denominada aproximación de Tustin o trapezoidal, utiliza la siguiente relación s= 2 (z − 1) T z +1 T = periodo de muestreo para transformar el dominio en “s” en un dominio en “z” Tema 6: Sistema Digitales de Control en Tiempo Discreto 13 6.1.3 Modelo discreto de un motor DC 14 7
  • 9. Modelo de la planta (I) El primer paso en el diseño de un control es obtener el modelo de la planta Ejemplo: modelo de un motor DC de imán permanente Características eléctricas: L di + Ri = V − emf dt L: inductancia del motor R: resistencia V: tensión de alimentación i: corriente emf: fuerza contraelectromotriz = Ke · θ Ke: constante de fuerza contraelectromotriz 15 Tema 6: Sistema Digitales de Control en Tiempo Discreto Modelo de la planta (II) Características mecánicas: JM d 2θ dθ d 2θ +B + Kθ = TL − J L 2 dt dt 2 dt JM: inercia del motor θ: desplazamiento angular K: constante de rigidez B: coeficiente de fricción viscosa JL: inercia de la carga=Kt · i TL: par de rotación de la carga Kt= constante de par de rotación Tema 6: Sistema Digitales de Control en Tiempo Discreto 16 8
  • 10. Modelo de la planta (III) Parámetros del motor DC Pittman 9412G316 Modelo eléctrico di L + Ri = V − emf dt R = 6.4Ω J = Jm+JL = 60 ·10-6 kg·m2 Kt = 0.0207 (N · m)/A Ke = 0.0206 volt/(rad/s) Modelo mecánico dθ dθ d 2θ + Kθ = TL − J L 2 JM 2 + B 2 dt θ (s ) dt dt J −1 (K t R ) G (s ) = = V (s ) s s + J −1 (K t K e R ) Gm (s ) = Tema 6: Sistema Digitales de Control en Tiempo Discreto ( θ (s ) V (s ) ) = 53.906 s(s + 1.116 ) 17 Conversión a formato discreto (I)   G (s )     s  −1 −1 Transformación ZOH: G (z ) = (1 − z ) Z L   A G (s ) b A A2 = 2 = 1+ 2 + 3 s s (s + a ) s s s+a ( ) ( G (s ) − b a 2 (b a ) b a 2 = + 2 + s s s s+a ( ) ( ) b = J −1 ( K t R ) a = J −1 (K t K e R ) T: periodo de muestreo T = 0.001 ) b a 2 e − aT − 1 + aT z −1 + b a 2 1 − e − aT − aTe − aT z −2 G (z ) = 1 − 1 + e − aT z −1 + e − aTz − 2 ( ) Tema 6: Sistema Digitales de Control en Tiempo Discreto 18 9
  • 11. Conversión a formato discreto (II) G (z ) = ( ) ( ) b a 2 e − aT − 1 + aT z −1 + b a 2 1 − e − aT − aTe − aT z −2 1 − 1 + e − aT z −1 + e − aTz − 2 ( ) a = 1.116 b = 53.906 T = 0.001 Km: Factor de ganancia θ (z ) 0.2694 z −1 + 0.2693 z −2 = G (z ) = ⋅ Km V ( z ) 1 − 1.999 z −1 + 0.999 z − 2 Tema 6: Sistema Digitales de Control en Tiempo Discreto 19 6.2 Diseño de un control digital PID 20 10
  • 12. Algoritmos de control • Técnicas de compensación: el controlador añade polos y ceros al sistema para obtener la respuesta deseada . • PID: el control PID es la suma de tres términos: Proporcional al error + Integral del error + Derivada del error. Es el algoritmo de control más utilizado. • Deadbeat: Se utiliza cuando se desea una respuesta rápida. Se diseña en el dominio Z • Modelos en el espacio de estado: describen matricialmente el modelo de sistema a controlar. Se utiliza cuando hay muchas variables de estado a controlar. • Control óptimo: se utiliza cuando se desea minimizar un parámetro específico del sistema (p.e. Tiempo de establecimiento, energía, ...). El controlador o compensador debe minimizar el parámetro. • Control adaptativo: se utiliza en sistemas cuyos parámetros cambian con el tiempo haciendo inestable el control. El control adaptativo sigue los cambios de la planta y rediseña el controlador para obtener un control óptimo del sistema. Tema 6: Sistema Digitales de Control en Tiempo Discreto 21 6.2.1 Introducción al control PID digital 22 11
  • 13. Expresión general control PID Minimiza el error Reduce el error a cero en régimen permanente Kp: constante proporcional Ki: constante integral Kd: constante derivativa u(t): salida del control e(t): señal de error • Incrementa la estabilidad de la planta • Acción anticipativa que reduce el sobreimpulso 23 Tema 6: Sistema Digitales de Control en Tiempo Discreto Controlador PID analógico y discreto Control PID digital Control PID analógico KP e(t) E(s) KI/s + + + KP u(t) e(n) E(z) U(s) + u(n) U(z) DD(z) KD·s Función de transferencia U (s ) = K p E (s ) + K i DI(z) + + E (s ) + K d s E (s ) s Función de transferencia U ( z ) = K p E ( z ) + DI (z )E (z ) + DD ( z )E ( z ) Existen diversos modos de implementar DI(z) Tema 6: Sistema Digitales de Control en Tiempo Discreto 24 12
  • 14. Implementación del control PID discreto Dos técnicas de implementación del control PID digital: • Aproximación rectangular: • El diseño se realiza en el dominio analógico y a continuación se transfiere al dominio discreto • Es fácil de implementar y proporciona resultados satisfactorios • Aproximación trapezoidal: • El diseño se realiza en el dominio discreto directamente utilizando técnicas de ubicación de polos Tema 6: Sistema Digitales de Control en Tiempo Discreto 25 6.2.2 Aproximación rectangular del control PID 26 13
  • 15. Aproximación rectangular del PID (I) Término proporcional Término derivativo K p e(t ) = K p e(n ) Aproximación rectangular Si T es suficientemente pequeño se puede aproximar por: Término integral K i ∫ e(t ) = K iT ∑ ei i Kd Si se conoce e(n+1) se puede obtener una mejor aproximación de la derivada: Kd Periodo de muestreo e(t ) e(n ) − e(n − 1) = Kd dt T e(t ) e(n + 1) − e(n ) = Kd dt T Algoritmo de posición u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T i 27 Tema 6: Sistema Digitales de Control en Tiempo Discreto Aproximación rectangular del PID (II) Algoritmo de posición u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T i Algoritmo de velocidad ∆u (n ) = u (n ) − u (n − 2 ) Inconveniente: en caso de malfuncionamiento del sistema digital que calcula u(n) se podría generar una salida u(n)=0 • Es el algoritmo que se utiliza habitualmente • El sistema de control solo calcula el incremento de la señal de control • Presenta mejor comportamiento en arranque y frente a transitorios bruscos en la señal de referencia. Tema 6: Sistema Digitales de Control en Tiempo Discreto 28 14
  • 16. Algoritmo PID de velocidad Algoritmo de velocidad ∆u (n ) = u (n ) − u (n − 2 ) n−2 u (n − 2 ) = K p e(n − 2 ) + K iT ∑ ei + K d [e(n − 1) − e(n − 2)] T i =1 u (n ) − u (n − 2 ) = K p [e(n ) − e(n − 2 )] + K iT [e(n ) + e(n − 1)] + K d T [e(n ) − 2e( n − 1) + e( n − 2)] u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) K1 = K p + K d T + K i T K 2 = K iT − 2 K d T K3 = K d T − K p 29 Tema 6: Sistema Digitales de Control en Tiempo Discreto Determinación coeficientes PID Método del margen de fase (MF) y margen de ganancia (MG) Se escoge como parámetros de diseño: • MF = 55º • Frecuencia de transición (fase:-180º) = 100Hz Aplicando técnicas de control clásico en el dominio frecuencial se obtiene: Kp = 4181 Kd = 9.569 Ki = 1 Tema 6: Sistema Digitales de Control en Tiempo Discreto MG = 77dB (f=100Hz) K1 = 13751 K2 = -19138 K3 = 5387 30 15
  • 17. Implementación digital del PID u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) z-1 e(n) K1 X K2 + e(n-1) X z-1 K3 e(n-2) X + u(n-2) z-1 z-1 + u(n) Tema 6: Sistema Digitales de Control en Tiempo Discreto 31 Respuesta al escalón con el control PID u (n ) = u (n − 2 ) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) Tema 6: Sistema Digitales de Control en Tiempo Discreto 32 16
  • 18. Respuesta al escalón con el control PID Tema 6: Sistema Digitales de Control en Tiempo Discreto 33 6.2.3 Aproximación trapezoidal del control PID 34 17
  • 19. Aproximación trapezoidal • Se utiliza cuando se requiere una mayor precisión en la conversión discreta • La integral se determina con la suma de trapezoides Área del trapezoide: Función transferencia término integral e(n) e(n-1) T [e(n ) + e(n − 1)] 2 u (n ) = u (n − 1) + K I ( ) U ( z ) 1 − z −1 = K I DI ( z ) = T [e(n ) + e(n − 1)] 2 [ ] T 1 + z −1 E [z ] 2 ( ( U (z ) T 1 + z −1 = KI E (z ) 2 1 − z −1 ) ) 35 Tema 6: Sistema Digitales de Control en Tiempo Discreto Aproximación trapezoidal PID u (n ) = K p e(n ) + K iT ∑ ei + K d [e(n) − e(n − 1)] T i U (z ) = K p E (z ) + K I Transformada Z de cada término ( ( ) ) K T 1 + z −1 E ( z ) + d 1 − z −1 E ( z ) −1 2 1− z T ( ) Función de transferencia discreta D(z ) = D(z ) = (2TK p ( ( ) ) U (z ) T 1 + z −1 K d = K p + KI + 1 − z −1 −1 E (z ) 2 1− z T ) ( ( ) Reordenando términos ) + K I T 2 + 2 K d + K I T 2 − 2 K pT − 4 K d z −1 + 2 K d z − 2 ( 2T 1 − z Tema 6: Sistema Digitales de Control en Tiempo Discreto −1 ) 36 18
  • 20. Diseño del control PID de un motor DC K1 + K 2 z −1 + K 3 z −2 GPID ( z ) = 1 − z −1 Con: K1 = K p + G p (z ) = θ (z ) V (z ) = Ki K K K 2K d T + d , K2 = −K p + i T − , K3 = d T T T 2 2 0.2694 z −1 + 0.2693z −2 ⋅ Km 1 − 1.999 z −1 + 0.999 z − 2 Tema 6: Sistema Digitales de Control en Tiempo Discreto 37 Determinación coeficientes PID Gs ( z ) = G p ( z )Gc (z ) 1 + G p (z )Gc ( z ) Función de transferencia global del sistema Matlab ⇒ ubicación de polos en 0.96, 0.95, 0.2 y 0.15 Resolviendo el denominador para la ubicación de polos propuesta se obtiene: K1 = 1.4795 K1 + K 2 z −1 + K 3 z −2 GPID ( z ) = K2 = -2.845 1 − z −1 K3 = 1.3636 u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) Tema 6: Sistema Digitales de Control en Tiempo Discreto 38 19
  • 21. Respuesta al escalón con el control PID u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) 39 Tema 6: Sistema Digitales de Control en Tiempo Discreto Respuesta al escalón con el control PID Polos cerca del círculo unidad: • Aumenta el tiempo de respuesta • El sistema puede hacerse inestable Tema 6: Sistema Digitales de Control en Tiempo Discreto Polos cerca del origen: • Disminuye el tiempo de respuesta • Aumenta el sobre impulso 40 20
  • 22. Implementación digital del PID u (n ) = u (n − 1) + K1e(n ) + K 2 e(n − 1) + K 3e(n − 2 ) z-1 e(n) K1 X K2 + e(n-1) X z-1 K3 + e(n-2) X u(n-1) z-1 + u(n) Tema 6: Sistema Digitales de Control en Tiempo Discreto 41 6.3 Arquitecturas de realización de controladores digitales 42 21
  • 23. Diagrama de bloques de un controlador digital e1(t) e1(n) T E1(z) D(s) e2(t) e2(n) T E2(z) D(z) Expresión general de la función de transferencia del controlador digital E2 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m D(z ) = = E1 (z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p 43 Tema 6: Sistema Digitales de Control en Tiempo Discreto Elementos para realizar de un controlador digital D(z ) = Elementos de retardo e1(n) Z-1 e1(n-1) Registro de “n” bits E2 (z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m = E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p Sumadores c.a.2 + + Tema 6: Sistema Digitales de Control en Tiempo Discreto Multiplicadores c.a.2 e1(n-m) bm a0 44 22
  • 24. Estructuras de implementación • Programación directa: implementa la ecuación en diferencias • Programación estándar: reduce el número de registros a utilizar • Programación en serie • Programación en paralelo • Programación en escalera La función de transferencia se descompone en funciones de primer y segundo orden para disminuir los errores de truncado de coeficientes Tema 6: Sistema Digitales de Control en Tiempo Discreto 45 6.3.1 Programación directa 46 23
  • 25. Descomposición de la función de transferencia E2 (z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m D( z ) = = E1 (z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p [ ] [ E2 ( z ) a0 + a1 z −1 + a2 z −2 + L + a p z − p = E1 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m ] Transformada “z” inversa p m i =1 i =0 a0 ⋅ e2 (n ) + ∑ ai e2 (n − i ) = ∑ bi e1 (n − i ) 1 e2 (n ) = a0 Salida actual m 1 ∑ bi e1 (n − i ) − a i =0 0 p ∑ a e (n − i ) i =1 i 2 Salidas anteriores Entradas Tema 6: Sistema Digitales de Control en Tiempo Discreto 47 Implementación directa e1(n) Z-1 b0 a0 e1(n-1) e1(n-2) e1(n-m) b2 a0 Z-1 bm a0 b1 a0 + + + + + + Los coeficientes ai y bi aparecen de forma directa Recursos utilizados: • M+P elementos de retraso “Z-1” • M+P+1 multiplicadores • M+P sumadores + e2(n) + e2(n) Z-1 e2(n-1) − a1 a0 e2(n-2) e2(n-p) − a2 a0 Z-1 − ap a0 + + + + Tema 6: Sistema Digitales de Control en Tiempo Discreto 48 24
  • 26. 6.3.2 Programación estándar 49 Descomposición de la función de transferencia D(z ) = E2 ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m E2 ( z ) H ( z ) = = E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p H ( z ) E1 ( z ) E2 ( z ) = b0 + b1 z −1 + b2 z − 2 + L + bm z − m H (z ) H (z ) 1 = −1 E1 (z ) a0 + a1 z + a2 z − 2 + L + a p z − p Transformada “z” inversa [ ] m E2 ( z ) = b0 + b1 z −1 + b2 z − 2 + L + bm z − m ⋅ H ( z ) H (z ) = [ ⇒ e2 (n ) = ∑ bi h(n − i ) i =0 ] 1 1 1 1 E1 ( z ) − a1 z −1 + a2 z − 2 + L + a p z − p ⋅ H ( z ) ⇒ h(n ) = e1 (n ) − a0 a0 a0 a0 Tema 6: Sistema Digitales de Control en Tiempo Discreto p ∑ a h(n − i ) i =1 i 50 25
  • 27. Implementación estándar Recursos utilizados: • P elementos de retraso “Z-1” • P+M+2 multiplicadores • P+M+1 sumadores + + 2 1 0 b b Z-1 b - h(n) b + m + − a0 1 + e1(n) + a1 a0 + + ap am a0 a2 a0 + h(n-p) Z-1 Z-1 e2(n) + a0 + + + Tema 6: Sistema Digitales de Control en Tiempo Discreto 51 Fuentes de error La precisión en la implementación de controles digitales es importante para obtener un buen resultado. Hay tres fuentes de error que afectan a la precisión: • El error de cuantificación de los ADC • Redondeo en las operaciones aritméticas • Truncamiento de los coeficientes ai y bi ⇒ este error aumenta al aumentar el orden de la función de transferencia ⇒ un pequeño error en los coeficientes de un filtro de orden elevado provoca un gran error en la ubicación de polos y ceros Este error se puede reducir matemáticamente descomponiendo las funciones de transferencia de orden elevado en combinaciones de funciones de primer y segundo orden Tema 6: Sistema Digitales de Control en Tiempo Discreto 52 26
  • 28. 6.3.3 Programación serie 53 Descomposición de la función de transferencia La función de transferencia se descompone en un producto de funciones sencillas de primer o segundo orden r E ( z ) b + b z −1 + b z −2 + L + bm z − m D( z ) = 2 = 0 1 −1 2 − 2 = D1 ( z ) ⋅ D2 ( z )L Dr ( z ) = ∏ Dk ( z ) E1 ( z ) a0 + a1 z + a2 z + L + a p z − p k =1 e1(n) D1(z) D2(z) Dr(z) e2(n) Las funciones de transferencia Di(z) dependen de los polos y ceros de D(z): Polo y cero reales 1 + bi z −1 Di ( z ) = 1 + ai z −1 Polos y ceros complejo conjugados 1 + ei z −1 + f i z −2 Di ( z ) = 1 + ci z −1 + d i z − 2 Tema 6: Sistema Digitales de Control en Tiempo Discreto 54 27
  • 29. Implementación estándar + + 1 b − a0 1 h(n) + Z-1 Z-1 h(n-1) h(n-1) Z-1 h(n-2) h(n-2) a1 a0 - Z-1 Z-1 + + h(n-m) h(n-m) e2(n) h(n-p) ap am a0 a2 a0 + + b 0 b e1(n) Z-1 b h(n) + 2 i =0 m e2 (n ) = ∑ bi h(n − i ) + + m a0 + + h(n ) = Tema 6: Sistema Digitales de Control en Tiempo Discreto + 1 1 e1 (n ) − a0 a0 p ∑ a h(n − i ) i =1 i 55 Implementación funciones Di(z) (I) Polo y cero reales Y ( z ) 1 + bi z −1 = X ( z ) 1 + ai z −1 Z-1 b + i x(n) + + y(n) ai Tema 6: Sistema Digitales de Control en Tiempo Discreto 56 28
  • 30. Implementación funciones Di(z) (II) Polos y ceros complejo conjugados Y ( z ) 1 + ei z −1 + f i z −2 = X ( z ) 1 + ci z −1 + d i z − 2 + Z-1 f e Z-1 i i x(n) + + + + y(n) ci + + di Tema 6: Sistema Digitales de Control en Tiempo Discreto 57 6.3.4 Programación paralelo 58 29
  • 31. Descomposición de la función de transferencia La función de transferencia se descompone en suma de fracciones parciales de primer y segundo orden: E ( z ) b0 + b1 z −1 + b2 z −2 + L + bm z − m D(z ) = 2 = = A + D1 ( z ) + D2 ( z ) + L + Dq ( z ) E1 ( z ) a0 + a1 z −1 + a2 z − 2 + L + a p z − p j = A + ∑ Di ( z ) + i =1 q ∑ Di (z ) = A + i = j +1 j b ∑ 1 + ai z −1 i =1 i + Polos reales ei + f i z −1 ∑ −1 + di z −2 i = j +1 1 + ci z q Polos complejos A e1(n) D1(z) e2(n) Dq(z) 59 Tema 6: Sistema Digitales de Control en Tiempo Discreto Implementación funciones Di(z) (I) Polos reales bi Y (z ) = X ( z ) 1 + ai z −1 i b x(n) + y(n) Z-1 ai Tema 6: Sistema Digitales de Control en Tiempo Discreto 60 30
  • 32. Implementación funciones Di(z) (II) Polos complejos conjugados Y (z ) ei + f i z −1 = X ( z ) 1 + ci z −1 + d i z − 2 i e + f + Z-1 i x(n) + y(n) Z-1 ci + + di Tema 6: Sistema Digitales de Control en Tiempo Discreto 61 6.3.5 Programación en escalera 62 31
  • 33. Descomposición de la función de transferencia 1 con i = 1,2,..., p − 1 Bi z + Gi( A ) ( z ) 1 Di( A ) ( z ) = con i = 1,2,..., p − 1 B Ai + Gi(+1) ( z ) 1 D (pB ) ( z ) = 1 Bp z + Ap Di( B ) ( z ) = D( z ) = A0 + D1( B ) ( z ) D( z ) = A0 + 1 B1 z + 1 A1 + 1 1 M B2 z + Ap −1 1 Bp z + Tema 6: Sistema Digitales de Control en Tiempo Discreto 1 Ap 63 Ejemplo de programación en escalera (I) D( z ) = A0 + 1 B1 z + 1 A1 + p=2 D (pB ) ( z ) = 1 B2 z + 1 A2 D( z ) = A0 + 1 B1 z + 1 ( A1 + D2B ) ( z ) = A0 + 1 Bp z + 1 Ap 1 = A0 + D1( B ) ( z ) B1 z + D1( A ) ( z ) Di(B)(z) se puede escribir como: Di( B ) ( z ) = 1 Y (z ) = X ( z ) Bi z + Di( A ) ( z ) Tema 6: Sistema Digitales de Control en Tiempo Discreto X i ( z ) − Di( A )Yi ( z ) = Bi zYi ( z ) 64 32
  • 34. Ejemplo de programación en escalera (II) X i ( z ) − Di( A )Yi ( z ) = Bi zYi ( z ) + Z-1 i B1 x(n) y(n) Di( A ) ( z ) 65 Tema 6: Sistema Digitales de Control en Tiempo Discreto Ejemplo de programación en escalera (III) Di(A)(z) se puede escribir como: + B X i ( z ) − Di(+1)Yi ( z ) = AiYi ( z ) A1 x(n) 1 Y (z ) = B X ( z ) Ai + Di(+1) ( z ) i Di( A ) ( z ) = y(n) B Di(+1) ( z ) Tema 6: Sistema Digitales de Control en Tiempo Discreto 66 33
  • 35. Ejemplo de programación en escalera (IV) 1 A1 + 6 x ( D2B ) ( z ) x 1 5 x + 1 6 Z-1 2 B1 - x(n) 3 (B ) D1 y(n) + + (z ) x 2 B1 + - 5 1 ( A1 + D2B ) ( z ) 1 B1 z + 1 = A0 + D1( B ) ( z ) B1 z + D1( A ) ( z ) = A0 + A 4 1 0 D( z ) = A0 + Z-1 2 3 x 1 A2 D1( A ) ( z ) 4 x 67 Tema 6: Sistema Digitales de Control en Tiempo Discreto Ejemplo de programación en escalera (V) Combinación de los diagramas de bloques x(n) + 0 A +x 1 x+ 2 Z-1 1 B1 -x y(n) 3 + x4 1 A1 +x 5 Z-1 2 B1 - - x 6 1 A2 Tema 6: Sistema Digitales de Control en Tiempo Discreto 68 34
  • 36. 6.4 Ejemplo de diseño: control de un motor DC mediante el driver L293E 69 Índice 6.4.1. Introducción al sistema de control digital de un motor 6.4.2. Modelo equivalente eléctrico del motor DC 6.4.3. Interface con el motor: L293E 6.4.4. Control en lazo abierto de la velocidad de giro 6.4.5. PWM digital 6.4.6. Monitorización de la velocidad de giro 6.4.7. Regulación de la velocidad de giro Tema 6: Sistema Digitales de Control en Tiempo Discreto 70 35
  • 37. 6.4.1 Introducción al sistema de control digital de un motor 71 Diagrama de bloques del sistema de control Placa interface FPGA Elementos básicos: • FPGA: implementa el sistema digital de control • Interface etapa lógica-motor: etapa de potencia controlada digitalmente que alimenta el motor DC • Motor: sistema a controlar • Sensor óptico: permite medir la velocidad de giro del motor Tema 6: Sistema Digitales de Control en Tiempo Discreto 72 36
  • 38. 6.4.2 Modelo equivalente eléctrico del motor DC 73 Modelo ideal del motor DC • Transformador ideal de tensión/corriente en velocidad/fuerza • Relaciones de transformación: K·IS = Fm VS = K·Um (fuerza) (velocidad) Tema 6: Sistema Digitales de Control en Tiempo Discreto 74 37
  • 39. Modelo real del motor DC con pérdidas Le y Re: Inductancia y resistencia del devanado del rotor Cm: modela la resistencia que presenta el motor a cambios de velocidad Rm: resistencia mecánica RL: carga del motor 75 Tema 6: Sistema Digitales de Control en Tiempo Discreto Circuito eléctrico equivalente del motor Circuito equivalente del secundario visto desde el primario Modelo eléctrico equivalente de segundo orden wA 1 = 2 2 VS s + 2α s + wo wo = 1 Leq ⋅ C eq V = D ⋅ V REF Tema 6: Sistema Digitales de Control en Tiempo Discreto 76 38
  • 40. 6.4.3 Interfase con el motor: L293E 77 Driver de cuatro canales Push-Pull Características: • Iout: 1A por canal • Iout de pico: 2 A por canal • Entrada de inhibición • Protección contra sobre-temperatura Tema 6: Sistema Digitales de Control en Tiempo Discreto 78 39
  • 41. Diagrama de bloques Entradas de control Entradas de habilitación Modelo driver de corriente Vss 79 Tema 6: Sistema Digitales de Control en Tiempo Discreto Control unidireccional del motor DC (I) Conexión a +Vs Tema 6: Sistema Digitales de Control en Tiempo Discreto Conexión a masa 80 40
  • 42. Control unidireccional del motor DC (II) Vss Vss Conexión a masa 1 M Vss M 0 Conexión a +Vs Tema 6: Sistema Digitales de Control en Tiempo Discreto 81 Control bidireccional del motor DC (I) Tema 6: Sistema Digitales de Control en Tiempo Discreto 82 41
  • 43. Control bidireccional del motor DC (II) Giro a la derecha Vss 1 Giro a la izquierda Vss + M - 0 0 Va=Vss + M - 1 Va=-Vss Tema 6: Sistema Digitales de Control en Tiempo Discreto 83 6.4.4 Control en lazo abierto de la velocidad de giro 84 42
  • 44. Control en lazo abierto de la velocidad de giro • Variando la tensión de alimentación del motor se varia su velocidad • Con un modulador PWM se obtiene una tensión variable de valor: D·Vcc donde D es el ciclo de trabajo de la señal PWM 85 Tema 6: Sistema Digitales de Control en Tiempo Discreto Diagrama de bloques del sistema de control en lazo abierto Modulador PWM Motor D·VREF Variando el ciclo de trabajo D se varia la tensión de alimentación del motor y con ello la velocidad de giro ωA w A = D ·V REF · 1 2 s 2 + 2α s + wo Tema 6: Sistema Digitales de Control en Tiempo Discreto 86 43
  • 45. Modulador de anchura de pulsos (PWM) TON TOFF TON TOFF TON TOFF VREF D Tc: periodo de conmutación D = TON/Tc con 0 ≤ D ≤ 1 • Si el Tc es suficientemente pequeño la tensión equivalente que se aplica al motor es el valor medio de la señal PWM: D·VREF 87 Tema 6: Sistema Digitales de Control en Tiempo Discreto Margen dinámico de la alimentación del motor con driver de puente en H Vss D=1 0 M + Va=Vss 1 0 1 0 0 + M 1 - Va=-Vss Vss D = 0.5 1 Vss D=0 + M 1 - 0 1 0 Va=0 Tema 6: Sistema Digitales de Control en Tiempo Discreto 88 44
  • 46. Forma de onda de la tensión del motor +Vss -Vss Tema 6: Sistema Digitales de Control en Tiempo Discreto 89 6.4.5 PWM digital 90 45
  • 47. Estructura del PWM analógico Rampa Comparador PWM Tc + D Ciclo de trabajo D PWM 91 Tema 6: Sistema Digitales de Control en Tiempo Discreto Estructura del PWM digital de 8 bits de precisión CLK Contador 8 bits 8 Comparador A 8 bits LT D Tc = 28·TCLK 8 1 PWM B Tc D1 D2 PWM2 PWM1 Tema 6: Sistema Digitales de Control en Tiempo Discreto 92 46
  • 48. Diseño Xilinx del PWM digital Contador Comparador Divisor de frecuencia Salidas de activación del puente P80 Ciclo de trabajo Salida de habilitación del puente 93 Tema 6: Sistema Digitales de Control en Tiempo Discreto Divisor de frecuencia • Diseñar el divisor de frecuencia para que Tc=1ms • Tc = 28·TCLK TCLK P80 50MHz Tema 6: Sistema Digitales de Control en Tiempo Discreto 94 47
  • 49. Ciclo de trabajo • El valor del ciclo de trabajo se introduce mediante los switches • La precisión es de 8 bits El SW1 es el bit de mayor peso Tema 6: Sistema Digitales de Control en Tiempo Discreto 95 Señales de control del puente en H PWM PWM1 ENABLE Tema 6: Sistema Digitales de Control en Tiempo Discreto 96 48
  • 50. 6.4.6 Monitorización de la velocidad de giro 97 Fotointerruptor 4 3 1 2 4 3 Vista inferior 1 Tema 6: Sistema Digitales de Control en Tiempo Discreto 2 98 49
  • 51. Esquema de conexión +Vcc 10kΩ 180Ω +Vcc 4 3 Pin FPGA 560Ω 1 2 99 Tema 6: Sistema Digitales de Control en Tiempo Discreto Algoritmo de medida de la velocidad de giro La velocidad se obtiene contando el nº de pulsos por unidad de tiempo: vrps = Np Nv ⋅T Vrps: velocidad en revoluciones por segundo Np: número de pulsos contados Nv: número de ventanas del disco T: tiempo de cuenta en segundos A la FPGA 1 1 0 0 Tema 6: Sistema Digitales de Control en Tiempo Discreto Simplificación del cálculo: Si T = 1/Nv ⇒ vrps = Np 100 50
  • 52. Implementación digital del algoritmo Pulsos del fotointerruptor CK Contador de pulsos Registro de Np Reset Asíncrono CK 50MHz CK Temporizador T segundos T 101 Tema 6: Sistema Digitales de Control en Tiempo Discreto Dimensionado de componentes Temporizador T • Para Nv = 24 y con T = 1/Nv ⇒ vrps = Np • El valor a temporizar es T = 41.66ms • Si fCLK = 50MHz, 41.66ms equivalen a 2.083.333 pulsos Temporizador T 50MHz Contador de 21 bits T0 MAX COUNT: CK 2.083.333d = 1FCA05H Tema 6: Sistema Digitales de Control en Tiempo Discreto T=41.66ms 102 51
  • 53. Dimensionado de componentes Contador de pulsos, Registro Np • Si se toma como velocidad máxima vrps_max = 100d • El contador debe ser de 7 bits • El registro también es de 7 bits +Vcc +Vcc Pin 180Ω FPGA 10kΩ 4 560Ω 1 3 2 Contador de 7 bits 7 CK Reset Asíncrono T=41.66ms Tema 6: Sistema Digitales de Control en Tiempo Discreto Registro 7 bits 7 CK 103 Bloques de memoria RAM en la familia Spartan 2/2E Estructura utilizada Tema 6: Sistema Digitales de Control en Tiempo Discreto 104 52
  • 54. Etapa de visualización • Se debe visualizar valores entre 0 y 99 rps • Los valores a visualizar se almacenan en la memoria RAM Registro 7 bits 4 (MSB) B6 B5 7 B4 B3 B2 B1 (LSB) B0 D A3, P49 9 RAM 512 x 8bits 4 U A4, P58 ó P56 (2E) 105 Tema 6: Sistema Digitales de Control en Tiempo Discreto Ejemplo de visualización Para Np=50d, el valor del registro es 0110010b Registro 7 bits 7 Bus de direcciones 9 Bus de datos D 4 0101 RAM [7..4] 512 x 8bits 4 U 0000 [3..0] Los dos bits de mayor peso del bus de direcciones valen siempre 0 Tema 6: Sistema Digitales de Control en Tiempo Discreto 106 53
  • 55. Contenido de la memoria RAM INIT_00=3130292827262524232221201918171615141312111009080706050403020100 INIT_01=6362616059585756555453525150494847464544434241403938373635343332 INIT_02=9594939291908988878685848382818079787776757473727170696867666564 INIT_03=0000000000000000000000000000000000000000000000000000000099989796 INIT_04=0000000000000000000000000000000000000000000000000000000000000000 INIT_05=0000000000000000000000000000000000000000000000000000000000000000 INIT_06=0000000000000000000000000000000000000000000000000000000000000000 INIT_07=0000000000000000000000000000000000000000000000000000000000000000 INIT_08=0000000000000000000000000000000000000000000000000000000000000000 INIT_09=0000000000000000000000000000000000000000000000000000000000000000 INIT_0A=0000000000000000000000000000000000000000000000000000000000000000 INIT_0B=0000000000000000000000000000000000000000000000000000000000000000 INIT_0C=0000000000000000000000000000000000000000000000000000000000000000 INIT_0D=0000000000000000000000000000000000000000000000000000000000000000 INIT_0E=0000000000000000000000000000000000000000000000000000000000000000 INIT_0F=0000000000000000000000000000000000000000000000000000000000000000 107 Tema 6: Sistema Digitales de Control en Tiempo Discreto Activación de los dígitos D[7..4] 4 8 0 U[3..0] 4 4 1 S0 S0 0 BIN7SEG Señales habilitación de dígitos 8 A3, P49 8 1 A3 A4 Tema 6: Sistema Digitales de Control en Tiempo Discreto A4, P58 ó P56 (2E) 108 54
  • 56. Control de activación de los dígitos El control de activación se puede realizar mediante un sistema secuencial 95Hz 50 MHz P80 Contador 19 bits Clock La frecuencia de barrido del display es de 95Hz Sistema S0 secuencial A4 de control A3 Estado Actual Estado siguiente S0 A4 A3 S0 S1 0 0 1 S1 S0 0 1 0 Tema 6: Sistema Digitales de Control en Tiempo Discreto 109 6.4.7 Regulación de la velocidad de giro 110 55
  • 57. Sistema de control en lazo cerrado El sistema de control ajusta el valor de D para que la velocidad real, wa se mantenga igual a la velocidad deseada wd Se compara la velocidad real con la ideal Con el resultado de la comparación se ajusta el ciclo de trabajo D Tema 6: Sistema Digitales de Control en Tiempo Discreto 111 Bibliografía (I) www.ti.com • Application Report SPRA083: “Implementation of PID and Deadbeat Controllers with the TMS320 Family,” Irfan Ahmed • Application Report SPRA009: “Control System Compensation and Implementation with the TMS32010,” Charles Slivinsky www.motorola.com • AN1213/D: “16-Bit DSP Servo Control With the MC68HC16Z” David Wilson • AN1249/D: Bruhed DC Motor Control Using the MC68HC16Z1 • AN1712: “Get Your Motor Running” with the MC68HC708MP16 Tema 6: Sistema Digitales de Control en Tiempo Discreto 112 56
  • 58. Bibliografía (II) • Katsuhiko Ogata, “Discrete-Time Control Systems,” Ed. Prentice Hall www.st.com • L293B/L293E Data Sheet Tema 6: Sistema Digitales de Control en Tiempo Discreto 113 57