Você está na página 1de 14

E SCIENTIA HOMINIS SALUS

1869-2015

ESCUELA POLITCNICA NACIONAL


LABORATORIO DE CONTROL DE MQUINAS
Integrantes: Juan Diego Sols G.

Fecha: 06 de Mayo 2015.

PREPARATORIO 03
1. TEMA:
CONSTRUCCION DEL CONVERSOR AC/DC, DISEO E IMPLEMENTACIN DEL
CONTROLADOR PI Y EVALUACION DEL CONTROL DE VELOCIDAD DEL MOTOR DE
DC
2. OBJETIVOS
2.1. Construir un conversor AC/DC para que funcione como actuador en el lazo de control de
velocidad del motor de corriente continua.
2.2. Implementar el controlador PI a usarse en el sistema de control de velocidad del motor de
corriente continua.
2.3. Anlisis del funcionamiento del control de velocidad del motor de corriente continua en
rgimen dinmico.

3. TRABAJO PREPARATORIO
3.1. Disear un convertidor esttico de potencia alimentado desde la RED elctrica que
permita alimentar el motor DC, tanto el circuito de potencia como el circuito de control,
en el cual el voltaje a la salida del conversor vare de acuerdo a una seal de control de 0
a 5 V.

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

R1
U1(C)

8k

D1

D2

1N4007

5V

1N4007

U2
40
41
42
43
44
1
2
3

U1

VAC

+88.8

120Vrms
AMP=169V
FREQ=60Hz

Volts

D3

D4

1N4007

1N4007

5
2
4

9
10
11
12
13
14
15
16

OPTOCOUPLER-NPN

R2
4.7K

U2(AREF)
29
27
4

Detector de Cruce por cCero

PB0/XCK0/T0/PCINT8
PB1/T1/CLKO/PCINT9
PB2/AIN0/INT2/PCINT10
PB3/AIN1/OC0A/PCINT11
PB4/SS/OC0B/PCINT12
PB5/MOSI/PCINT13
PB6/MISO/PCINT14
PB7/SCK/PCINT15
PD0/RXD0/PCINT24
PD1/TXD0/PCINT25
PD2/INT0/RXD1/PCINT26
PD3/INT1/TXD1/PCINT27
PD4/OC1B/XCK1/PCINT28
PD5/OC1A/PCINT29
PD6/ICP/OC2B/PCINT30
PD7/OC2A/PCINT31

PA0/ADC0/PCINT0
PA1/ADC1/PCINT1
PA2/ADC2/PCINT2
PA3/ADC3/PCINT3
PA4/ADC4/PCINT4
PA5/ADC5/PCINT5
PA6/ADC6/PCINT6
PA7/ADC7/PCINT7
PC0/SCL/PCINT16
PC1/SDA/PCINT17
PC2/TCK/PCINT18
PC3/TMS/PCINT19
PC4/TDO/PCINT20
PC5/TDI/PCINT21
PC6/TOSC1/PCINT22
PC7/TOSC2/PCINT23

AREF
AVCC
RESET

XTAL1
XTAL2

37
36
35
34
33
32
31
30
19
20
21
22
23
24
25
26

D5

8
7

LED-YELLOW

ATMEGA164P

PWM para activar los SCR's

R8
330

R6(1)

R5(1)

R6
100

R5

U5
1

R3

U6

100

100

Q2
2N3904

R4

BT151

100

2
Zero
Crossing

MOC3031M

D7
4

R9

Q1
2N3904

1N4007

330

Zero
Crossing

D8
4

MOC3031M

1N4007

+88.8

DC
F

MOTOR DC

D6

D9

1N4007

1N4007

' Juan Diego Sols G.


$regfile = "m164pdef.dat"
$crystal = 8000000
Config Portd.4 = Output
'salida PWM para control SCRs
Portd.4 = 0
Config Portd.2 = Input
'interrupcion de cruze por cero
Portd.2 = 1
Ddra.0 = 0
'voltaje del tacogen de 0 a 5V al ad0
Ddra.1 = 0
Ddrc = 255
'Setpoint al adc1
Dim Vadc As Word
'variable para guardar dato del ADC
Dim Vadc2 As Byte
'para guardar el dato del ADC en 1byte
Dim Alfa As Byte
'angulo de disoaro variara de 255 a 0
On Int0 Cruze
' activo interrupcion int0"cruze por cero"
'=============================================================================
Dim Sensor As Byte
Sensor = 0
Config Single = Scientific , Digits = 3

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

'=============================================================================
Config Int0 = Rising
'configuramos flanco de subida por que el cruce por
cero real esta antes del flanco de subida
Enable Int0
On Ovf1 Apagar
' activo inerrupcion de Overfload para apagar el timer
y volver a prenderlo en el cruce por cero
Enable Ovf1
'de esta manera logramos sincronizar la PWM con el
cruce por cero.
Config Adc = Single , Prescaler = Auto
Start Adc
On Oc0a Muestreo
mnuestreo.
Enable Oc0a

'configuramos el ADC para recibir senial del PI

' habilito la interrupcin para el tiempo de

Enable Interrupts
'=============================================================================
' para el tiempo de muestreo ts=20ms
Tccr0a = &B00000010
' 010 modo CTC top<== ocr0a
Tccr0b = &B00000101
'prescaler=101=1024
Timsk0 = &B00000010
Ocr0a = 156
'156
'=============================================================================
'PROGRAMA PRINCIPAL
Main:
Vadc = Getadc(0)
'adquirimos dato del ADC V tacogenerador de 0 a 5V
Vadc = Vadc / 4
'acondicionamos ADC a 8bits
Sensor = Vadc
'acondicionamos ADC a 8 bits
'(Vadc = Getadc(1)
' adquisic del setpoint
Vadc = Vadc / 4
Set_point = Vadc
')
Alfa = Lookup(sensor , Tabla)
'segun dato del ADC escogemos valor
correspondiente en la tabla y asignamos valor a alfa
Goto Main
'=============================================================================
'INTERRUPCIONES
Cruze:
Ocr1a = 255
'timer trabaja en el modo fast PWM con tope en el
OCR1A y comparacion con el OCR1B

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

Tccr1a = &B00110011
Tccr1b = &B00011100
8.2 ms aprox ( manual atemga164p )
Ocr1b = Alfa
Return
ocr1b(portd.4)
Apagar:
Tccr1b = &B00000000
cruce por cero y de esta
Return

1869-2015

'con prescaler de 256 que nos da un periodo de

'cargamos el valor de alfa en la salida de la pwm

'apgamos el timer para volver a prenderlo en el


'manera que este sincronizado con la red

Muestreo:
Convertir = 1
Toggle Portc.6
Return
'=============================================================================
'de los clculos realizados, para encontrar una relacin lineal entre el voltaje Tacog con el VDC
Tabla:
Data 255 , 246 , 243 , 240 , 238 , 235 , 234 , 232 , 230 , 229 , 227 , 226 , 225 , 223 , 222 , 221 , 220 , 219 , 218 , 216 ,
215 , 214 , 213 , 213
Data 212 , 211 , 210 , 209 , 208 , 207 , 206 , 205 , 205 , 204 , 203 , 202 , 201 , 201 , 200 , 199 , 198 , 198 , 197 , 196 ,
196 , 195 , 194 , 193
Data 193 , 192 , 191 , 191 , 190 , 189 , 189 , 188 , 187 , 187 , 186 , 186 , 185 , 184 , 184 , 183 , 182 , 182 , 181 , 181 ,
180 , 179 , 179 , 178,
Data 178 , 177 , 177 , 176 , 175 , 175 , 174 , 174 , 173 , 173 , 172 , 171 , 171 , 170 , 170 , 169 , 169 , 168 , 168 , 167 ,
167 , 166 , 166 , 165
Data 164 , 164 , 163 , 163 , 162 , 162 , 161 , 161 , 160 , 160 , 159 , 159 , 158 , 158 , 157 , 157 , 156 , 156 , 155 , 155 ,
154 , 154 , 153 , 153
Data 152 , 152 , 151 , 151 , 150 , 150 , 149 , 149 , 148 , 148 , 147 , 147 , 146 , 146 , 145 , 145 , 144 , 144 , 143 , 143 ,
142 , 142 , 141 , 141
Data 140 , 140 , 140 , 139 , 139 , 138 , 138 , 137 , 137 , 136 , 136 , 135 , 135 , 134 , 134 , 133 , 133 , 132 , 132 , 131 ,
131 , 130 , 130 , 129
Data 129 , 129 , 128 , 128 , 127 , 127 , 126 , 126 , 125 , 125 , 124 , 124 , 123 , 123 , 122 , 122 , 121 , 121 , 120 , 120 ,
120 , 119 , 119 , 118
Data 118 , 117 , 117 , 116 , 116 , 115 , 115 , 114 , 114 , 113 , 113 , 112 , 112 , 111 , 111 , 110 , 110 , 109 , 109 , 108 ,
108 , 107 , 107 , 106
Data 106 , 105 , 105 , 105 , 104 , 104 , 103 , 103 , 102 , 102 , 101 , 101 , 100 , 100 , 099 , 098 , 098 , 097 , 097 , 096 ,
096 , 095 , 095 , 094
Data 094 , 093 , 093 , 092 , 092 , 091 , 091 , 090 , 090 , 089 , 089 , 088 , 088 , 087 , 086 , 086

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

3.2. Disear un controlador PI utilizando un microcontrolador para regular la velocidad del


motor de corriente continua a usarse en el laboratorio. Utilizar los datos de la prctica
anterior. (Funcin de Transferencia de la Planta y seales de realimentacin).

Realimentacin de velocidad

SIMULACIN COMO SUBSISTEMA

Velocidad
Entrada
Posicion

Step1

Scope1

DC Motor Subsystem

Subsistema con realimentacin de velocidad.Velocidad


Entrada

Step1

Posicion

Scope1

DC Motor Subsystem

CONTROLADOR PROPORCIONAL INTEGRAL DERIVATIVO (PID)


Se implementan con amplificadores operacionales.

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

= + +
Accin proporcional integral PI
= +

) ()

=
= (
)

() = ( +
()

Aade el integrador y un cero en =

La accin PI mejora el error en estado estable.

En el sisotool se pueden aadir el polo n cero y el cero en

Entonces, se va a disear un control PI para el sistema motor DC.


>> G2=tf([1000],[0.515 2.07])
G2 =
1000
-------------0.515 s + 2.07
>> Gt=G1*G2*0.373
Gt =
373
----------------------------0.01453 s^2 + 1.387 s + 5.341
>> gpr=feedback(Gt,1)
gpr =
373
----------------------------0.01453 s^2 + 1.387 s + 378.3

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

Compensado con el PI

LABORATORIO DE CONTROL DE MQUINAS

1869-2015

E SCIENTIA HOMINIS SALUS

()

=
= (

() =

1869-2015

0.909(( + 3))

= 3.03; = 0.909 = 0.3

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

El tiempo de establecimiento es rpido. = 0.254 .


Nota: Entonces en base a stos resultados se selecciona un tiempo de muestreo de = ,
lo que es generado con el timer 0. Las constantes = . , = . se ingresan en el
microcontrolador.
El programa completo es el siguiente, incluye el programa para el conversor y el PI:
' Juan Diego Sols G.
$regfile = "m164pdef.dat"
$crystal = 8000000
Config Portd.4 = Output
Portd.4 = 0
Config Portd.2 = Input
Portd.2 = 1
Ddra.0 = 0
Ddra.1 = 0
Ddrc = 255

'salida PWM para control SCRs


'interrupcion de cruze por cero
'voltaje del tacogen de 0 a 5V al ad0
'Setpoint al adc1

Dim Vadc As Word


'variable para guardar dato del ADC
Dim Vadc2 As Byte
'para guardar el dato del ADC en 1byte
Dim Alfa As Byte
'angulo de disoaro variara de 255 a 0
On Int0 Cruze
' activo interrupcion int0"cruze por cero"
'=============================================================================
Dim Error_k As Single
Dim Error_k_1 As Single
Dim Vout As Word
Dim Integral As Single
Dim Proporcional As Single
Dim Derivativo As Single
Dim Control As Integer
Dim Control1 As Integer
Dim Kp As Single
Dim Ki As Single
'Dim Kd As Single
Dim Error_der As Single
Dim Error_int As Single
Dim Set_vol As Single
Dim Set_point As Integer
Dim Convertir As Byte
Dim V_vol As Single

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

Dim Sensor As Byte


Sensor = 0
Convertir = 0
Set_point = 0
Kp = 0.909
Ki = 0.3

'3
'0.003

'=========================
Config Single = Scientific , Digits = 3
'=============================================================================
Config Int0 = Rising
'configuramos flanco de subida por que el cruce por
cero real esta antes del flanco de subida
Enable Int0
On Ovf1 Apagar
' activo inerrupcion de Overfload para apagar el timer
y volver a prenderlo en el cruce por cero
Enable Ovf1
'de esta manera logramos sincronizar la PWM con el
cruce por cero.
Config Adc = Single , Prescaler = Auto
Start Adc

'configuramos el ADC para recibir senial del PI

On Oc0a Muestreo
mnuestreo.
Enable Oc0a

' habilito la interrupcin para el tiempo de

Enable Interrupts
'=============================================================================
' para el tiempo de muestreo ts=20ms
Tccr0a = &B00000010
Tccr0b = &B00000101
Timsk0 = &B00000010
Ocr0a = 156

' 010 modo CTC top<== ocr0a


'prescaler=101=1024
'156

'=============================================================================
'PROGRAMA PRINCIPAL
Main:
Vadc = Getadc(0)
'adquirimos dato del ADC V tacogenerador de 0 a 5V
Vadc = Vadc / 4
'acondicionamos ADC a 8bits

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

Sensor = Vadc
Vadc = Getadc(1)
Vadc = Vadc / 4
Set_point = Vadc

1869-2015

'acondicionamos ADC a 8 bits


' adquisic del setpoint

'=============================================================================
If Convertir = 1 Then
Error_k = Set_point - Sensor
Proporcional = Kp * Error_k
Error_der = Error_k - Error_k_1
'Derivativo = Kd * Error_der
Error_int = Error_int + Error_k
Integral = Ki * Error_int
'Control = Integral + Derivativo
Control = Integral + Proporcional
If Control >= 255 Then Control = 255
If Control <= 0 Then Control = 0
Vadc2 = Control
Error_k_1 = Error_k
Convertir = 0
End If
'=============================================================================
Alfa = Lookup(vadc2 , Tabla)
'segun dato del ADC escogemos valor
correspondiente en la tabla y asignamos valor a alfa
Goto Main
'=============================================================================
'INTERRUPCIONES
Cruze:
Ocr1a = 255
'timer trabaja en el modo fast PWM con tope en el
OCR1A y comparacion con el OCR1B
Tccr1a = &B00110011
Tccr1b = &B00011100
'con prescaler de 256 que nos da un periodo de
8.2 ms aprox ( manual atemga164p )
Ocr1b = Alfa
Return
'cargamos el valor de alfa en la salida de la pwm
ocr1b(portd.4)
Apagar:
Tccr1b = &B00000000
cruce por cero y de esta

'apgamos el timer para volver a prenderlo en el

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

Return

1869-2015

'manera que este sincronizado con la red

Muestreo:
Convertir = 1
Toggle Portc.6
Return
'=============================================================================
''de los clculos realizados, para encontrar una relacin lineal entre el voltaje Tacog con el VDC
Tabla:
Data 255 , 246 , 243 , 240 , 238 , 235 , 234 , 232 , 230 , 229 , 227 , 226 , 225 , 223 , 222 , 221 , 220 , 219 , 218 , 216 ,
215 , 214 , 213 , 213
Data 212 , 211 , 210 , 209 , 208 , 207 , 206 , 205 , 205 , 204 , 203 , 202 , 201 , 201 , 200 , 199 , 198 , 198 , 197 , 196 ,
196 , 195 , 194 , 193
Data 193 , 192 , 191 , 191 , 190 , 189 , 189 , 188 , 187 , 187 , 186 , 186 , 185 , 184 , 184 , 183 , 182 , 182 , 181 , 181 ,
180 , 179 , 179 , 178,
Data 178 , 177 , 177 , 176 , 175 , 175 , 174 , 174 , 173 , 173 , 172 , 171 , 171 , 170 , 170 , 169 , 169 , 168 , 168 , 167 ,
167 , 166 , 166 , 165
Data 164 , 164 , 163 , 163 , 162 , 162 , 161 , 161 , 160 , 160 , 159 , 159 , 158 , 158 , 157 , 157 , 156 , 156 , 155 , 155 ,
154 , 154 , 153 , 153
Data 152 , 152 , 151 , 151 , 150 , 150 , 149 , 149 , 148 , 148 , 147 , 147 , 146 , 146 , 145 , 145 , 144 , 144 , 143 , 143 ,
142 , 142 , 141 , 141
Data 140 , 140 , 140 , 139 , 139 , 138 , 138 , 137 , 137 , 136 , 136 , 135 , 135 , 134 , 134 , 133 , 133 , 132 , 132 , 131 ,
131 , 130 , 130 , 129
Data 129 , 129 , 128 , 128 , 127 , 127 , 126 , 126 , 125 , 125 , 124 , 124 , 123 , 123 , 122 , 122 , 121 , 121 , 120 , 120 ,
120 , 119 , 119 , 118
Data 118 , 117 , 117 , 116 , 116 , 115 , 115 , 114 , 114 , 113 , 113 , 112 , 112 , 111 , 111 , 110 , 110 , 109 , 109 , 108 ,
108 , 107 , 107 , 106
Data 106 , 105 , 105 , 105 , 104 , 104 , 103 , 103 , 102 , 102 , 101 , 101 , 100 , 100 , 099 , 098 , 098 , 097 , 097 , 096 ,
096 , 095 , 095 , 094
Data 094 , 093 , 093 , 092 , 092 , 091 , 091 , 090 , 090 , 089 , 089 , 088 , 088 , 087 , 086 , 086

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

3.3. Presentar el diagrama elctrico completo (Potencia y Control) para comandar el motor
en lazo cerrado.

4. EQUIPO Y MATERIALES
Grupo Motor-Generador de DC.
Osciloscopio con retencin de memoria.
Taco-generador DC.
Tacmetro

5. PROCEDIMIENTO
5.1. Implementar y comprobar el correcto funcionamiento del convertidor AC/DC.
5.2. Comprobar el funcionamiento del controlador PI.
5.3. Incorporar los circuitos diseados anteriormente para cerrar el lazo de control de velocidad
y comprobar su funcionamiento.
5.4. Con el control en lazo cerrado:
- Manteniendo la carga constante a un valor determinado y con la velocidad a un valor bajo
el nominal, incremente bruscamente el set-point de velocidad a la velocidad nominal y
tome los resultados correspondientes.

LABORATORIO DE CONTROL DE MQUINAS

E SCIENTIA HOMINIS SALUS

1869-2015

Trabajando a velocidad nominal disminuya la velocidad bruscamente. Anote los resultados


correspondientes.
- Manteniendo el set-point de velocidad en un valor constante, aumente sbitamente la
carga y tome los resultados correspondientes.
- Manteniendo el set-point de velocidad en un valor constante, disminuya sbitamente la
carga y tome los resultados correspondientes.
5.5. Tomar formas de onda de la velocidad en funcin del tiempo en lazo abierto para cambios
de set-point de velocidad y cambios de la carga tal como en los numerales anteriores.

6. BIBLIOGRAFA
-

Burbano, Patricio. Apuntes de Control Automtico EPN 2014.


Apuntes de Control con Sistemas Microprocesados. EPN 2014
Filtros activos de primer orden.
Rodas, Ana. Apuntes de Instrumentacin Electrnica EPN 2014.

LABORATORIO DE CONTROL DE MQUINAS

Você também pode gostar