Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistemas Digitales de Control en Tiempo Discreto
Sistemas Digitales de Control en Tiempo Discreto
SISTEMAS DIGITALES DE
INSTRUMENTACIN Y CONTROL
TEMA 6
Sistemas Digitales de
Control en Tiempo
Discreto
DAC
ADC
1 e Ts
s
D(s)
D(z)
TEMA 6
Sistemas Digitales de Control en
Tiempo Discreto
ndice (I)
6.1. Sistemas de control digital
6.1.1. Introduccin al diseo de sistemas de control digital
6.1.2. Discretizacin de sistemas analgicos
6.1.3. Ejemplo: modelo discreto de un motor DC
6.2. Diseo de un control digital PID
6.2.1 Introduccin al control PID digital
6.2.2 Aproximacin rectangular del control PID
6.2.3 Aproximacin trapezoidal del control PID
6.3. Arquitecturas de realizacin de controladores digitales
6.3.1. Programacin directa
6.3.2. Programacin estndar
6.3.3. Programacin serie
6.3.4. Programacin paralelo
6.3.5. Programacin en escalera
Tema 6: Sistema Digitales de Control en Tiempo Discreto
ndice (II)
6.4. Ejemplo de diseo: control de un motor DC mediante el driver L293E
6.4.1. Introduccin al sistema de control digital de un motor
6.4.2. Modelo equivalente elctrico 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. Monitorizacin de la velocidad de giro
6.4.7. Regulacin de la velocidad de giro
Ventajas
Digital
Desventajas
Diseo programable
Comportamiento preciso
Implementacin
algoritmos complejos
Fcilmente ampliable
Envejecimiento de componentes
Derivas con la temperatura
Bueno para diseos simples
Dificultad de diseo
Necesita procesadores de altas
prestaciones
Genera problemas numricos
10
ADC
1 e
s
Ts
D(s)
D(z)
D (s )
D( z ) = 1 z 1 Z
11
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
D( z ) z =1 = D(s ) s =0
12
Transformacin Bilineal
Tambin denominada aproximacin de Tustin o trapezoidal, utiliza la
siguiente relacin
s=
2 (z 1)
T z +1
T = periodo de muestreo
13
14
Caractersticas elctricas: L
di
+ Ri = V emf
dt
15
JM
d 2
d
d 2
+
+
=
B
K
T
J
L
L
dt 2
dt 2
dt
JM: inercia del motor
: desplazamiento angular
K: constante de rigidez
B: coeficiente de friccin viscosa
JL: inercia de la carga=Kt i
TL: par de rotacin de la carga
Kt= constante de par de rotacin
16
Modelo elctrico
di
L + Ri = V emf
dt
R = 6.4
J = Jm+JL = 60 10-6 kgm2
Kt = 0.0207 (N m)/A
Ke = 0.0206 volt/(rad/s)
Modelo mecnico
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
G (s )
1
1
Transformacin ZOH: G (z ) = (1 z ) Z L
A
G (s )
b
A A
= 2
= 1 + 22 + 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
18
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
(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
20
10
Algoritmos de control
Tcnicas de compensacin: el controlador aade polos y ceros al sistema para
obtener la respuesta deseada .
PID: el control PID es la suma de tres trminos: Proporcional al error + Integral del
error + Derivada del error. Es el algoritmo de control ms utilizado.
Deadbeat: Se utiliza cuando se desea una respuesta rpida. Se disea 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 parmetro especfico del
sistema (p.e. Tiempo de establecimiento, energa, ...). El controlador o compensador
debe minimizar el parmetro.
Control adaptativo: se utiliza en sistemas cuyos parmetros cambian con el tiempo
haciendo inestable el control. El control adaptativo sigue los cambios de la planta y
redisea el controlador para obtener un control ptimo del sistema.
Tema 6: Sistema Digitales de Control en Tiempo Discreto
21
22
11
Minimiza el error
Reduce el error a cero en
rgimen permanente
Kp: constante proporcional
Ki: constante integral
Kd: constante derivativa
u(t): salida del control
e(t): seal de error
Incrementa la
estabilidad de la planta
Accin anticipativa que
reduce el sobreimpulso
23
KI/s
+
+
KP
u(t)
e(n)
E(z)
U(s)
u(n)
U(z)
DD(z)
KDs
Funcin de transferencia
U (s ) = K p E (s ) + K i
DI(z)
+
+
E (s )
+ K d s E (s )
s
Funcin de transferencia
U ( z ) = K p E ( z ) + DI (z )E (z ) + DD ( z )E ( z )
24
12
25
26
13
Trmino proporcional
Trmino derivativo
K p e(t ) = K p e(n )
Si T es suficientemente pequeo se
puede aproximar por:
Trmino integral
K i e(t ) = K iT ei
i
Kd
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 posicin
u (n ) = K p e(n ) + K iT ei + K d [e(n) e(n 1)] T
i
27
Algoritmo de velocidad
u (n ) = u (n ) u (n 2 )
Inconveniente: en caso de
malfuncionamiento del sistema digital
que calcula u(n) se podra generar una
salida u(n)=0
28
14
u (n ) = u (n ) u (n 2 )
n2
29
MG = 77dB (f=100Hz)
K1 = 13751
K2 = -19138
K3 = 5387
30
15
e(n)
K1
K2
e(n-1)
z-1
K3
e(n-2)
u(n-2) z-1
z-1
u(n)
Tema 6: Sistema Digitales de Control en Tiempo Discreto
31
32
16
33
34
17
Aproximacin trapezoidal
Se utiliza cuando se requiere una mayor precisin en la conversin discreta
La integral se determina con la suma de trapezoides
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
U (z ) = K p E (z ) + K I
(
(
)
)
K
T 1 + z 1
E ( z ) + d 1 z 1 E ( z )
1
2 1 z
T
D(z ) =
D(z ) =
(2TK
(
(
)
)
U (z )
T 1 + z 1 K d
= K p + KI
+
1 z 1
1
E (z )
2 1 z
T
) (
Reordenando trminos
+ 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
36
18
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
37
G p ( z )Gc (z )
1 + G p (z )Gc ( z )
38
19
39
20
e(n)
K1
K2
e(n-1)
z-1
K3
e(n-2)
u(n-1) z-1
u(n)
Tema 6: Sistema Digitales de Control en Tiempo Discreto
41
42
21
e1(t)
e1(n)
T
E1(z)
D(s)
e2(t)
e2(n)
T
E2(z)
D(z)
Expresin general de la funcin 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
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
+
+
Multiplicadores c.a.2
e1(n-m)
bm
a0
44
22
Estructuras de implementacin
Programacin directa: implementa la ecuacin en diferencias
Programacin estndar: reduce el nmero de registros a utilizar
Programacin en serie
Programacin en paralelo
Programacin en escalera
45
46
23
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
i =1
i =0
a0 e2 (n ) + ai e2 (n i ) = bi e1 (n i )
1
e2 (n ) =
a0
Salida actual
1
bi e1 (n i )
a0
i =0
a e (n i )
i =1
i 2
Salidas anteriores
Entradas
Tema 6: Sistema Digitales de Control en Tiempo Discreto
47
Implementacin directa
e1(n)
Z-1
b0
a0
e1(n-1)
Z-1
e1(n-2)
e1(n-m)
b2
a0
bm
a0
b1
a0
e2(n)
+
e2(n)
Z-1
e2(n-1)
Z-1
a1
a0
e2(n-2)
e2(n-p)
a2
a0
ap
a0
+
+
+
+
48
24
49
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
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
a h(n i )
i =1
50
25
Implementacin estndar
Recursos utilizados:
P elementos de retraso Z-1
P+M+2 multiplicadores
P+M+1 sumadores
+
+
e1(n)
a01
+
-
h(n)
b0
Z-1
a1
a0
+
+
ap
am
a0
a2
a0
h(n-p)
Z-1
Z-1
e2(n)
a0
+
+
51
Fuentes de error
La precisin en la implementacin de controles digitales es importante para
obtener un buen resultado.
Hay tres fuentes de error que afectan a la precisin:
El error de cuantificacin de los ADC
Redondeo en las operaciones aritmticas
Truncamiento de los coeficientes ai y bi este error aumenta al
aumentar el orden de la funcin de transferencia un pequeo error
en los coeficientes de un filtro de orden elevado provoca un gran error
en la ubicacin de polos y ceros
Este error se puede reducir matemticamente 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
53
D
z
L
D
z
=
Dk ( z )
r
1
2
E1 ( z ) a0 + a1 z + a2 z + L + a p z p
k =1
e1(n)
D1(z)
D2(z)
Dr(z)
e2(n)
54
27
Implementacin estndar
+
e2 (n ) = bi h(n i )
+
+
i =0
b1
b0
h(n)
e1(n)
a01
Z-1
h(n)
Z-1
b2
Z-1
h(n-1)
h(n-1)
Z-1
Z-1
h(n-2)
h(n-2)
a1
a0
Z-1
+
+
h(n-m)
h(n-m)
e2(n)
h(n-p)
ap
am
a0
a2
a0
bm
a0
+
+
h(n ) =
+
1
1
e1 (n )
a0
a0
a h(n i )
i =1
55
x(n)
Z-1
bi
+
y(n)
ai
56
28
x(n)
Z-1
Z-1
+
fi
+
y(n)
ci
+
+
di
57
58
29
= A + Di ( z ) +
i =1
Di (z ) = A +
i = j +1
bi
1
i =1 1 + ai z
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
bi
x(n)
y(n)
Z-1
ai
60
30
ei
+
f
x(n)
Z-1
y(n)
Z-1
ci
+
+
di
61
62
31
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 +
1
Ap
63
1
B1 z +
1
A1 +
p=2
D (pB ) ( z ) =
1
B2 z +
1
A2
D( z ) = A0 +
B1 z +
1
A1 + D2( B ) ( z )
= A0 +
Bp z +
1
Ap
1
= A0 + D1( B ) ( z )
B1 z + D1( A ) ( z )
1
Y (z )
=
X ( z ) Bi z + Di( A ) ( z )
64
32
x(n)
1 Bi
Z-1
y(n)
Di( A ) ( z )
65
x(n)
1
Y (z )
=
X ( z ) Ai + Di(+B1) ( z )
1 Ai
X i ( z ) Di(+B1)Yi ( z ) = AiYi ( z )
y(n)
Di(+B1) ( z )
66
33
1
B1 z +
1A
6
x
D2( B ) ( z )
1 B2
x(n)
1
A1 + D2( B ) ( z )
1
= A0 + D1( B ) ( z )
B1 z + D1( A ) ( z )
= A0 +
x
1
5
x
Z-1
(B )
D1
y(n)
A0
(z ) x
2
1 B1
Z-1
3
x
1 A2
D1( A ) ( z )
4
x
67
A0
x(n)
+x
1 x+
1B
-x
Z-1
1 A1
+x 5
1 B2
y(n)
Z-1
x4
- x 6
1 A2
68
34
69
ndice
6.4.1. Introduccin al sistema de control digital de un motor
6.4.2. Modelo equivalente elctrico 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. Monitorizacin de la velocidad de giro
6.4.7. Regulacin de la velocidad de giro
70
35
71
Elementos bsicos:
FPGA: implementa el sistema digital de control
Interface etapa lgica-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
73
(velocidad)
74
37
1
Leq C eq
V = D V REF
Tema 6: Sistema Digitales de Control en Tiempo Discreto
76
38
77
Caractersticas:
Iout: 1A por canal
Iout de pico: 2 A por canal
Entrada de inhibicin
Proteccin contra sobre-temperatura
78
39
Diagrama de bloques
Entradas de control
Entradas de
habilitacin
79
Conexin a masa
80
40
Conexin a masa
1
M
Vss
M
0
Conexin a +Vs
Tema 6: Sistema Digitales de Control en Tiempo Discreto
81
82
41
Giro a la derecha
Giro a la izquierda
Vss
Vss
Va=Vss
Va=-Vss
83
84
42
85
Motor
DVREF
w A = D V REF
1
s 2 + 2 s + wo2
86
43
87
D=1
M
+
Va=Vss
Va=-Vss
Vss
D = 0.5
1
Vss
D=0
Va=0
Tema 6: Sistema Digitales de Control en Tiempo Discreto
88
44
-Vss
89
90
45
Comparador
PWM
Tc
Ciclo de trabajo
D
PWM
91
Contador
8 bits
Comparador
A 8 bits
LT
Tc = 28TCLK
PWM
Tc
D1
D2
PWM2
PWM1
Tema 6: Sistema Digitales de Control en Tiempo Discreto
92
46
Comparador
Divisor de
frecuencia
Salidas de
activacin
del puente
P80
Ciclo de
trabajo
Salida de habilitacin
del puente
93
Divisor de frecuencia
Disear el divisor de frecuencia para que Tc=1ms
Tc = 28TCLK
TCLK
P80
50MHz
94
47
Ciclo de trabajo
El valor del ciclo de trabajo se introduce mediante los switches
La precisin es de 8 bits
El SW1 es el bit de mayor peso
95
PWM
PWM1
ENABLE
96
48
97
Fotointerruptor
4
2
4
3
Vista inferior
1
Tema 6: Sistema Digitales de Control en Tiempo Discreto
2
98
49
Esquema de conexin
+Vcc
10k
180
+Vcc
4
Pin
FPGA
560
1
2
99
vrps =
Np
Nv T
A la FPGA
1
1
0
0
Tema 6: Sistema Digitales de Control en Tiempo Discreto
100
50
Pulsos del
fotointerruptor
CK
Contador
de pulsos
Registro
de Np
Reset Asncrono
CK
50MHz
CK
Temporizador
T segundos
T
101
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
T=41.66ms
102
51
Dimensionado de componentes
Contador de pulsos, Registro Np
Si se toma como velocidad mxima vrps_max = 100d
El contador debe ser de 7 bits
El registro tambin es de 7 bits
+Vcc
+Vcc
Pin
180 FPGA
10k
4
560
1
3
2
Contador de 7 bits
7
CK
Reset Asncrono
T=41.66ms
Tema 6: Sistema Digitales de Control en Tiempo Discreto
Registro
7 bits
CK
103
Estructura
utilizada
104
52
Etapa de visualizacin
Se debe visualizar valores entre 0 y 99 rps
Los valores a visualizar se almacenan en la memoria RAM
Registro
7 bits
(MSB) B6
B5
7
B4
B3
B2
B1
(LSB) B0
D
A3, P49
RAM
512 x 8bits
U
A4, P58
P56 (2E)
105
Ejemplo de visualizacin
Para Np=50d,
el valor del registro es
0110010b
Registro
7 bits
Bus de
direcciones
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
107
D[7..4] 4
U[3..0] 4
1 S0
S0
BIN7SEG
Seales
habilitacin
de dgitos
8
A3, P49
8
A3
A4
A4, P58
P56 (2E)
108
54
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
109
110
55
111
Bibliografa (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
Bibliografa (II)
Katsuhiko Ogata, Discrete-Time Control Systems, Ed. Prentice Hall
www.st.com
L293B/L293E Data Sheet
113
57