control de motor ac de inducciÓn para aplicaciÓn …

96
CONTROL DE MOTOR AC DE INDUCCIÓN PARA APLICACIÓN DE PUENTE GRÚA. JORGE MARIO ROJAS AMAYA Proyecto de grado para optar por el título de Ingeniero Electrónico Asesor IVÁN CASTILLO Ingeniero Electrónico UNIVERSIDAD DE LOS ANDES FACULTAD DE ING ENIERIA DEPARTAMENTO DE INGENIERIA ELECTRICA Y ELECTRONICA BOGOTA D.C. JUNIO 2005

Upload: others

Post on 09-Nov-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

CONTROL DE MOTOR AC DE INDUCCIÓN PARA APLICACIÓN

DE PUENTE GRÚA.

JORGE MARIO ROJAS AMAYA

Proyecto de grado para optar por el título de Ingeniero Electrónico

Asesor

IVÁN CASTILLO

Ingeniero Electrónico

UNIVERSIDAD DE LOS ANDES

FACULTAD DE ING ENIERIA

DEPARTAMENTO DE ING ENIERIA ELECTRICA Y ELECTRO NICA

BOGO TA D.C. JUNIO 2005

IEL2-1-05-35 2

A mis padres que me han apoyado incondicionalmente durante toda mi vida.

IEL2-1-05-35 3

CONTENIDO

Pág.

OBJETIVOS.........................................................................................................................11

OBJETIVO GENERAL ..............................................................................................11 OBJETIVOS ESPECIFICOS ....................................................................................11

INTRODUCCION................................................................................................................12 1. MOTORES MONOFÁSICOS DE INDUCCIÓN............................................................13

1.1. MOTOR DE FASE PARTIDA (Split-Phase motor):..................................16 1.2. MOTOR DE POLOS SOMBREADOS (shaded-poles).................................17 1.3. MOTOR CAPACITOR .......................................................................................18

2. MOTOR SELECCIONADO............................................................................................20 2.1. FUNCIONAMIENTO DETALLADO MOTOR PSC.......................................20 2.2. CIRCUITO EQUIVALENTE DEL MOTOR POR FASES .............................23 2.3. PARÁMETROS ...................................................................................................25 2.4. CONSUMO DE POTENCIA Y TORQUE .......................................................28

3. MODELO MATEMÁTICO DEL MOTOR....................................................................33 3.1. ECUACIONES DE LA MÁQUINA....................................................................37 3.2. MODELO ESTATOR-ROTOR .........................................................................39 3.3. MODELO SISTEMA COMPLETO ...................................................................41

4. DRIVERS ACTUALES ...................................................................................................44 4.1. CONTROL ESCALAR .......................................................................................44 4.2. CONTROL VECTORIAL ...................................................................................45 4.3. CONTROL DIRECTO DE TORQUE (DTC) ...................................................45

5. MODELO A IMPLEMENTAR.......................................................................................46 5.1. APLICACIÓN MODELO CON DRIVER SELECCIONADO.........................46 5.2. ARQUITECTURA GENERAL ...........................................................................49 5.2.1. RECTIFICADOR Y FILTRO ..........................................................................50 5.2.2. BLOQUE RECTIFICADOR Y FILTRO (SIMULINK)..................................52 5.2.3. INVERSOR ......................................................................................................53

IEL2-1-05-35 4

5.2.4. BLOQUE INVERSOR (SIMULINK) ..............................................................57 5.2.5. CONTROLADOR DE PWM...........................................................................59 5.2.6. BLOQUE CONTROLADOR PWM (Simulink).............................................61

6. HARDWARE...................................................................................................................62 6.1. DISEÑO RECTIFICADOR Y FILTRO CAPACITIVO....................................62 6.2. FILTRO ................................................................................................................64 6.3. MODULO INVERSOR TRIFÁSICO.................................................................65 6.4. MICROCONTROLADOR ..................................................................................67 6.5. ESQUEMÁTICO .................................................................................................71

CONCLUSIONES................................................................................................................72 BIBLIOGRAFIA..................................................................................................................73 ANEXOS..............................................................................................................................74

IEL2-1-05-35 5

LISTA DE FIGURAS

Pag. Figura 1. Componentes básicos de un motor de inducción monofásico...............................14 Figura 2. Conexión del motor de fase partida.......................................................................16 Figura 3. Motor de polos sombreados. .................................................................................17 Figura 4. (a) Motor de arranque de capacitor. (b) Motor capacitor de partido permanente.

(c) Motor capacitor de dos valores. ..............................................................................18 Figura 5. Motor de inducción monofásico elemental de dos polos, en reposo.....................20 Figura 6. Circuito equivalente de motor capacitor en operación. Fase principal y auxiliar. 23 Figura 7. Circuito equivalente motor inducción monofásico un solo embobinado. .............25 Figura 8. Circuito equivalente (a) Prueba cero carga. ( b) Prueba rotor bloqueado. ............26 Figura 9. Curva de potencia contra frecuencia. ....................................................................31 Figura 10. Curva de torque contra frecuencia. .....................................................................32 Figura 11. Embobinado de estator con la fase principal y densidad de corriente. ...............34 Figura 12. Densidad de corriente resultante de las corrientes de fase Imain Iaux................35 Figura 13. Distribución de densidad de flujo resultando de las corrientes de estator. .........36 Figura 14. Modelo del motor en formulación de vectores del espacio.................................39 Figura 15. Bloque Flujo-Corriente. ......................................................................................40 Figura 16. Sistema total motor, condensador y fuente de alimentación. ..............................41 Figura 17. Modelo motor controlador. .................................................................................47 Figura 18. Controlador V/F, bloques internos......................................................................48 Figura 19. Generador de PWM.............................................................................................48 Figura 20. Arquitectura controlador .....................................................................................49 Figura 21. Rectificador con filtro. ........................................................................................50 Figura 22. Circuito rectificador. ...........................................................................................51 Figura 23. Modelo de rectificador de onda completo...........................................................52 Figura 24. Esquema inversor. ...............................................................................................53 Figura 25. Circuito inversor sencillo. ...................................................................................54 Figura 26. Formas de onda señal triangular y señal de control. ...........................................55 Figura 27. Forma de onda de salida después de realizada la comparación. .........................56 Figura 28. Circuito de puente inversor trifásico ...................................................................56 Figura 29. Puente inversor sencillo. .....................................................................................57 Figura 30. Esquema puente inversor trifásico ......................................................................58 Figura 31. Diagrama de favores de voltajes. ........................................................................60 Figura 32. Señales de control PWM.....................................................................................61 Figura 33. Esquemático del circuito de bootstrap para una fase. .........................................65 Figura 34. Diagrama de flujo programa microcontrolador...................................................70 Figura 35. Esquemático sistema total ...................................................................................71

IEL2-1-05-35 6

Figura A1. Voltajes principal y auxiliar del motor...............................................................74 Figura A2. Corrientes principal y auxiliar, con entrada de torque tipo rampa en t = 1........74 Figura A3. Torques de carga y electro-magnético................................................................75 Figura A4. Velocidad del motor en rpm...............................................................................75 Figura A5. Velocidad y torque, modelo driver- motor.........................................................76 Figura A6. Señal de entrada bloque, señal rectificada..........................................................77 Figura A7. Ripple de la señal rectificada..............................................................................78 Figura A8. Señales de corriente a través de los diodos D2 y D4..........................................78 Figura A9. Señales de salida inversor y señal inicial de voltaje...........................................79 Figura A10. Voltajes Va, Vb y Vc a la salida del inversor trifásico. ...................................80 Figura A11. Voltajes aplicados a los embobinados del motor. ............................................81 Figura A12. Corrientes de los embobinados. Funcionamiento dirección normal ................82 Figura A13. Corrientes de los embobinados. Funcionamiento dirección inversa ................82 Figura A14. Simulación Rectificador de onda completo......................................................83 Figura A15. Simulación rectificador de onda completo con filtro y carga. .........................83 Figura A16. Esquemático IRAMS10UP60A,.......................................................................84 Figura A17. Montaje sistema PCB.......................................................................................96

IEL2-1-05-35 7

LISTA DE TABLAS

Pag.

Tabla 1. Resultados de pruebas ............................................................................................27 Tabla 2. Parámetros del motor..............................................................................................28 Tabla 3. Operación del rectificador. .....................................................................................51 Tabla 4. Funciones de los pines microcontrolador PIC16F874A.........................................67 Tabla A1. Características de la familia de microprocesadores PIC16F87, ..........................85

IEL2-1-05-35 8

LISTA DE ANEXOS

Pag.

Anexo 1. Señales eléctricas comportamiento modelo motor................................................74 Anexo 2. Señales mecánicas comportamiento modelo motor..............................................75 Anexo 3. Simulación velocidad y torque, modelo de driver y motor unidos.......................75 Anexo 4. Simulación rectificador .........................................................................................77 Anexo 5. Inversor monofásico..............................................................................................79 Anexo 6. Puente inversor trifásico........................................................................................80 Anexo 7. Salida del circuito rectificador ..............................................................................83 Anexo 8. Esquemático unidad inversor trifásico IRAMS10UP60A....................................84 Anexo 9. Especificaciones de microcontrolador familia PIC16F87XX...............................85 Anexo10. Programa del microcontrolador ...........................................................................86 Anexo11. Implementación PCB ...........................................................................................96

IEL2-1-05-35 9

LISTA DE SIMBOLOS

α = Relación de voltaje entre bobina principal y auxiliar

AC = Corriente alterna

Cmin = Capacitor mínimo para el f iltro

DC = Corriente directa

f = Frecuencia de la fuente de alimentación

Fmm = Fuerza magneto-motriz

im = Corriente instantánea en el estator

Im = Corriente en el embobinado principal

Ia = Corriente en el embobinado auxiliar

Is = Corriente de estator

ICp = Corriente pico

ICrms = Corriente RMS de carga

IDCrms = Corriente RMS de descarga

IRMS = Corriente RMS

ψs = Flujo de acoplamiento de estator

ψr = Flujo de acoplamiento de rotor

θM = Angulo por el cual Im está atrasada con respecto al voltaje aplicado en el estator

Ma = Radio de modulación en amplitud

Mf = Radio de modulación en frecuencia

ηsin = Velocidad sincrónica de un motor

P = Número de polos en un motor de inducción

PSC = Permanent Split Capacitor, Capacitor de partido permanente, motor.

PWM = Modulación de ancho de pulso

r1 = Resistencia de estator

r2 = resistencia de rotor

s = Deslizamiento en un motor de inducción

IEL2-1-05-35 10

sb = Deslizamiento inverso o en dirección opuesta

T = Torque desarrollado por el motor

Te = Torque electromagnético

TL = Torque de carga

Tc = Tiempo de carga en el capacitor

TDC = Tiempo de descarga en el capacitor

τm = Momento de inercia en el motor

Va = Voltaje aplicado al embobinado auxiliar

Vm = Voltaje aplicado al embobinado principal

Vcontrol = Señal de control en una modulación de ancho de pulso

Vtri = Señal triangular de comparación en una modulación de ancho de pulso

ωm = Velocidad mecánica del motor

ωk = Velocidad angular de marco de referencia móvil

x1 = Reactancia de estator

x2 = Reactancia de rotor

XM = Reactancia de magnetización

Z1 = Impedancia de estator

Z2 = Impedancia de rotor referida al estator

Zb = Impedancia de campo rotatorio hacia atrás

Zf = Impedancia de campo rotatorio hacia delante

IEL2-1-05-35 11

OBJETIVOS

OBJETIVO GENERAL

Desarrollar un controlador de velocidad de un motor monofásico de inducción, para

aplicación de puente grúa.

OBJETIVOS ESPECIFICOS

I. Investigar sobre tipos de motores monofásicos de inducción

II. Estudiar el funcionamiento del tipo de motor seleccionado

III. Proponer un modelo matemático del motor seleccionado

IV. Investigar sobre los tipos de “drives” existentes

V. Plantear una arquitectura del sistema

VI. Desarrollar del controlador

IEL2-1-05-35 12

INTRODUCCION

El proyecto muestra las características y principios básicos de un motor monofásico de inducción, los diferentes tipos de motores existentes y sus respectivas características,

ventajas y desventajas, enfocándose particularmente en el motor denominado PSC

(Permanent-Split Capacitor). Se especif ican los parámetros más importantes mediante

pruebas de laboratorio, impedancias internas, circuito equivalente y se definen rangos de

potencia y torque.

De acuerdo con los parámetros de motor, se plantea un modelo que integre los valores

hallados con las relaciones físicas que gobiernan el funcionamiento del motor,

desarrollando un sistema con entradas y salidas.

Se mencionan las principales técnicas de control para motores de inducción,

seleccionando la técnica más apropiada, con base en las necesidades del puente grúa, en

la efectividad del control y la factibilidad para su desarrollo y posterior puesta en práctica.

Se realiza una verif icación del mecanismo de control escogido, mediante simulación

aplicando el mecanismo de control al modelo previamente desarrollado, obteniendo

resultados aceptables para la implementación.

Se proyecta una arquitectura básica del control, desglosándola por bloques funcionales

verif icando que cada bloque cumpla con los requerimientos del sistema total, consumo de

potencia y rangos de operación, realizando comprobación de funcionamiento mediante

simulaciones cuando sea pertinente.

Teniendo el sistema completo, se procede a la etapa de implementación, en donde se

selecciona el hardw are para la implementación, teniendo en cuenta los requerimientos del

sistema y especif icando su funcionamiento. Implementación, se diseña la tarjeta PCB en

donde el sistema es instalado. Conclusiones, f inalmente se evalúan el comportamiento y

la efectividad del sistema.

IEL2-1-05-35 13

1. MOTORES MONOFÁSICOS DE INDUCCIÓN

En la actualidad existe gran cantidad de aplicaciones que encontramos en la vida diaria,

que usan motores eléctricos, sin embargo, hay gran variedad de máquinas eléctricas que

transforman energía eléctrica en energía mecánica. Existen las máquinas DC que

trabajan con corrientes continuas donde su velocidad es controlada por la magnitud de su

fuente de alimentación y su dirección es controlada por la polaridad del voltaje que se le

aplique. La otra gran categor ía, son las máquinas AC que trabajan con valores de

corriente y voltaje senosoidales, dentro de esta categoría encontramos las máquinas

sincrónicas que únicamente funcionan a velocidades sincrónicas con respecto a la fuente

de alimentación. Los motores universales que pueden funcionar con voltajes DC y AC. Y

f inalmente los motores de inducción que usan el principio de inducción de corriente para

su movimiento. Dentro de esta categoría se pueden encontrar máquinas polifásicas

(trifásicas) las cuales trabajan con voltajes trifásicos, cada voltaje desplazado del otro por

120° eléctricos y los motores monofásicos que funcionan con una fase sencilla.

El motor de inducción está constituido por un estator y un rotor, separados por un

entrehierro, ver f igura 1. Electromagnéticamente, el estator está formado por un núcleo

constituido por laminaciones que llevan conductores alojados en las ranuras. Estos

conductores se interconectan de alguna manera especial y constituyen los embobinados

del estator. El rotor es un elemento cilíndrico y porta barras conductoras cortocircuitadas

en ambos extremos, por eso el nombre de jaula de ardilla.

IEL2-1-05-35 14

Figura 1. Componentes básicos de un motor de inducción monofásico.

Los motores monofásicos de inducción generalmente t ienen capacidades nominales

pequeñas, son de jaula de ardilla y se usan en aplicaciones que no requieran alta

potencia o en donde no se tenga acceso a fuentes trifásicas. Actualmente se emplean en

aplicaciones industriales como secadores, ventiladores y bombas de agua de potencias

pequeñas.

Para que un motor monofásico se mueva, el estator debe producir un campo magnético

rotatorio; sin embargo, al usar una fuente de alimentación AC monofásica conectada a un

solo devanado no es posible ponerlo en funcionamiento.

La fuente de voltaje monofásica crea un f lujo de campo estacionario de magnitud

oscilante, de la misma forma en que oscila el voltaje AC pero no rota. Esta magnitud

oscilante es la que simula un campo rotatorio y en efecto, es el que hace que el rotor gire.

Al poner un rotor estacionar io en el campo del estator monofásico no rotará, pero si se

impulsara de alguna forma, este adquirirá velocidad y rotaría, sin importar la dirección de

rotación.

Velocidad de un motor de inducción

El campo magnético creado en el estator rota a velocidad sincrónica (ηsin):

Pf

×= 120sinη (1)

Estator

Rotor

Barras de rotor

IEL2-1-05-35 15

Donde: f la frecuencia de la fuente en Hz.

ηsin velocidad sincrónica del campo magnético del estator en rpm.

P número de polos en el estator.

Cuando el rotor está girando trata de “alcanzar” al f lujo rotatorio, pero en la práctica no lo

puede hacer porque el rotor gira más lento que la velocidad del campo del estator; esta

velocidad se llama velocidad base (ηb). La diferencia de las dos velocidades es llamada

deslizamiento, y varía con respecto a la carga del motor. Un incremento en la carga hace

que el motor gire más lento y que el deslizamiento aumente. De la misma manera un

decremento en la carga causa que el motor aumente su velocidad y disminuya el

deslizamiento.

El porcentaje de deslizamiento se puede determinar:

sin

sin

ηηη bs −

= (2)

Donde: ηsin velocidad sincrónica en rpm.

ηb velocidad base en rpm.

Debido a que los motores monofásicos no pueden arrancar por sí mismos, estos se

clasif ican según el método de arranque variando un poco su arquitectura.

IEL2-1-05-35 16

1.1. MOTOR DE FASE PARTIDA (Split-Phase motor):

Figura 2. Conexión del motor de fase partida.

El motor de fase partida posee dos embobinados en el estator: El principal y el auxiliar o

de arranque, como se ve en la f igura 2, los cuales están desplazados uno del otro 90º

medidos eléctricamente, de esta manera simula hasta cierto modo un embobinado de dos

fases. El embobinado auxiliar se usa únicamente para el arranque, generalmente tiene un

menor calibre del alambre y menos vueltas que el principal, resultando una relación

resistencia a reactancia mayor en el auxiliar. Por lo tanto, la corriente en el embobinado

principal está adelantada con respecto a la del embobinado auxiliar; en consecuencia, las

dos fuentes magneto-motriz (fmm) del estator, se desplazan entre sí, tanto en fase del

espacio como en fase de tiempo.

Los embobinados principal y auxiliar, están conectados en paralelo durante el arranque y

cuando el motor alcanza aproximadamente el 75% de su velocidad nominal se

desconecta el embobinado auxiliar, mediante el uso de un conmutador centrífugo. Este

tipo de motor no es invertible; para que suceda la inversión es necesario que la corriente

del principal adelante a la del auxiliar, pero no se puede lograr porque su construcción no

lo permite.

Rotor

Swicth centrif ugo

Embobinado auxiliar

Embobinado principal

Potencia de entrada

IEL2-1-05-35 17

1.2. MOTOR DE POLOS SOMBREADOS (shaded-poles)

Figura 3. Motor de polos sombreados.

Los motores de polos sombreados únicamente tienen un embobinado principal sin ningún

auxiliar. El arranque se hace por medio del diseño de anillos de cobre alrededor de

pequeñas porciones del motor, la porción de los polos que contiene los anillos se

denominan “sombras”, como se ve en la f igura 3, las cuales generan un campo que se

encuentra retrasado con respecto al campo del polo principal, la reacción de los dos

campos es la rotación del eje del motor.

Debido que el motor carece de embobinado auxiliar es eléctricamente simple y poco

costoso. La velocidad en este tipo de motor se puede controlar variando la magnitud del

voltaje, su construcción es sencilla, facilita su producción en masa y se consideran como

motores desechables. Sus mayores desventajas son el bajo torque de arranque, presenta

alto deslizamiento, y su eficiencia es muy baja, 20% aproximadamente.

Porción del polo sombreada

Porción del polo no sombreada

Anillo de cobre

Línea de alimentación

IEL2-1-05-35 18

1.3. MOTOR CAPACITOR

Figura 4. (a) Motor de arranque de capacitor. (b) Motor capacitor de partido permanente. (c) Motor capacitor

de dos valores.

Este tipo de motor es similar al de fase partida con la excepción que su configuración

agrega un capacitor en serie con la bobina auxiliar. Este capacitor generalmente de alto

valor, hace posible que las corrientes del principal y auxiliar estén desfasadas 90º

eléctricos.

Cuando ocurre esta situación y las fuerzas magneto-motrices (fmm) de cada bobina son

iguales en magnitud pero 90º aparte en fase de tiempo, la acción es la de un motor

polifásico que representa un funcionamiento óptimo.

También existen diferentes tipos de motores capacitores:

El motor de arranque con capacitor (Capacitor-Start), f igura 4 (a), como su nombre lo dice,

solamente usa el capacitor en la operación de arranque, utilizando un interruptor

centrífugo para desconectar el capacitor cuando este alcanza el 75% de la velocidad

nominal, otorgándole un torque de arranque muy alto.

El motor capacitor de partido permanente (Permanent-Split Capacitor, PSC), f igura 4 (b),

que usa el capacitor durante toda la operación de funcionamiento, haciendo que se

comporte de manera más uniforme, ya que no cambia sus características eléctricas, el

capacitor utilizado debe permitir operación continua.

El motor capacitor de dos valores (Capacitor Start-Run), f igura 4 (c), es la combinación de

los dos modelos anter iores, por tanto, t iene un capacitor en serie con la bobina auxiliar,

para un funcionamiento continuo, y otro capacitor en paralelo al primero de mayor valor y

con un interruptor centrífugo que se desconecta al alcanzar el 75% de la velocidad

nominal. Tiene un buen comportamiento en arranque y en funcionamiento normal.

(a) (b) (c)

IEL2-1-05-35 19

Este t ipo de motor es fácilmente invertible, cuando la fuente de polarización se conecta

entre los bornes del principal, la corriente del auxiliar está atrasada con respecto a la del

principal por efecto del capacitor, por consiguiente, gira hacia una dirección, pero cuando

se polariza inversamente el auxiliar, sucede lo contrario, la corriente del principal está

atrasada con respecto a la del auxiliar haciendo que el motor gire en dirección opuesta.

Este t ipo de motores, en un pr incipio eran muy costosos, debido al condensador con

valores tan altos, pero con los avances en tecnología, especialmente condensadores

electrolíticos, su precio disminuyó y su popularidad aumento debido a su versatilidad y a

su gran desempeño.

IEL2-1-05-35 20

2. MOTOR SELECCIONADO

Para la aplicación de puente grúa y su tamaño de implementación, el motor que mejor se

ajusta a estas características es el “motor capacitor de partido permanente (PSC)”, puesto

que los motores con interruptor no tienen un comportamiento uniforme, cambian sus características cuando el interruptor se abre, lo que los hace muy difíciles de controlar. El

motor de polos sombreados es económico pero no t iene un buen desempeño, su torque

es muy pobre, mientras que el motor PSC, al no tener ningún interruptor centrífugo, tiene

un comportamiento uniforme y produce una mejor aproximación a una operación bifásica,

mientras se mantenga a una frecuencia menor que 120 Hz, tiene muy bajas pulsaciones

de torque. Es fácilmente invertible y esta operación se puede lograr por permutación en

hardw are o software, su torque de arranque no es muy alto (80%), pero es suficiente para

esta aplicación.

2.1. FUNCIONAM IENTO DETALLADO MOTOR PSC.

Existen dos teor ías que se usan para explicar el funcionamiento de este t ipo de motor: La

teoría de campo cruzado y la teoría de los dos campos revolventes, esta última se explica

a continuación:

Figura 5. Motor de inducción monofásico elemental de dos polos, en reposo.1

1 Tomado de Leander W. Matsh, Máquinas Electromecánicas y Electromagnética, 1ª edición, 1974.

IEL2-1-05-35 21

Se tiene un motor de inducción monofásico elemental de dos polos, dado que es un motor

con rotor de jaula de ardilla, en estado estacionario se comporta como un transformador

con el secundario en corto-circuito. Cuando las direcciones de las corrientes instantáneas

son como se indican en la f igura 5, la fmm del estator es mayor que la fmm del rotor; los

polos del estator y del rotor están alineados como se muestran, denominados como Ns, Ss

y Nr, Sr, respectivamente. Los ejes magnéticos del rotor y del estator coinciden,

resultando en un torque igual a cero.

De acuerdo con esto se puede decir que la componente fundamental de la fmm del

estator en el ángulo del espacio θ es:

θπθ sin

24

mmwm i

NKF ⋅⋅= (3)

Donde: Nm es número de vueltas en el estator.

Kwm es el factor de embobinado del estator.

Siendo im la corriente instantánea en el embobinado del estator, que se puede expresar en

términos de la corriente efectiva del estator como:

)sin(2 Mmm tIi θω −= (4)

Donde θM es el ángulo por el cual Im está atrasada con respecto al voltaje aplicado en el

estator:

tVv ωsin2 ⋅⋅= (5)

Combinando las ecuaciones (4) y (5), y siguiendo un proceso de aproximación tomando la

serie de Fourier se llega a:

)cos(21)cos(2

1MampMamp tFtFF θωθθωθθ −+++−= (6)

El resultado es una expresión similar para las dos fmms iguales, girando a velocidad

sincrónica en direcciones opuestas, donde:

IEL2-1-05-35 22

mmwmamp INKF 9.0= . (7)

El primer término de la ecuación (6) representa la fmm que gira hacia delante y el

segundo la fmm que gira hacia atrás.

En el punto de reposo las dos fmms producen f lujos iguales girando en direcciones

opuestas a velocidad sincrónica, induciendo corrientes en el rotor, por tanto se crean dos

componentes iguales de torque oponiéndose entre sí, produciendo un torque resultante

igual a cero.

Cuando se analiza la otra fase en el estator, la auxiliar, la cual está 90° desfasada, se

tiene un comportamiento electromagnético similar a la fase principal, pero al integrar las

dos fases se cancelan las componentes que giran en direcciones opuestas, obteniéndose

una fuerza magneto-motriz resultante que produce un torque de arranque diferente de

cero, logrando que el motor inicie su movimiento.

Se considera el caso cuando el rotor gira se crea un desplazamiento igual al de la

ecuación (2), sin embargo como la dirección de rotación es opuesta a la del f lujo que gira

hacia atrás el signo del deslizamiento cambia resultando:

sin

sin

nnns b

b+= (8)

Reordenando y en términos de s, queda:

ssb −= 2 (9)

IEL2-1-05-35 23

2.2. CIRCUITO EQUIVALENTE DEL M OTOR POR FASES

Figura 6. Circuito equivalente de motor capacitor en operación. Fase principal y auxiliar.

En los motores capacitor los embobinados principal y auxiliar están desplazados 90º

medidos eléctricamente, por lo que resulta una operación de dos fases, donde los campos

rotatorios hacia atrás de cada embobinado se cancelan entre sí, y dado que el entrehierro

es prácticamente uniforme no hay una inductancia mutua importante entre los dos

embobinados, las ecuaciones de voltaje resultantes de circuito de la f igura 6, quedar ían:

mmm EIjxrV 211 )( ++= (10)

aaccaaa EIjXRjxrV 211 )( ++++= (11)

Donde:

r1 + jx1 = z1, impedancia de dispersión del embobinado principal.

r1a + jx1a = z1a, impedancia de dispersión del embobinado auxiliar.

Rc + jXc la impedancia serie del capacitor.

r1 jx1

Z1

Rf

jXb

Rb

jXf

Zf

Zb

Im

Efm Ef

Ebm Eb

E2m -j Efa

a

+j Eba a

Vm

r1a jx1a

Z1

a Rf

a jXb

a Rb

a jXf

a Zf

a Zb

Im

Efa +ja Ef

Eba ja Eb

E2a +ja Efm

-ja Ebm

Vm

Rc jXc

Zc

2

2

2

2

IEL2-1-05-35 24

Los voltajes E2m y E2a son inducidos por el auxiliar en el principal y viceversa, por los f lujos

del entrehierro rotacionales, con componentes hacia delante y hacia atrás.

Dado que la fase principal está desplazada en la dirección de rotación de la fase auxiliar

por 90º, el voltaje inducido por el f lujo que gira hacia adelante debe estar atrasado 90º al

voltaje inducido en la fase auxiliar por el mismo flujo, lo mismo se cumple para el f lujo

rotacional hacia atrás. Queda:

a

Ej

aE

jE bafam +−=2 (12)

En donde α es la relación de vueltas de la fase auxiliar a la fase principal. Por lo tanto

reemplazando la ecuación (12) en las ecuaciones (10) y (11) se vuelven:

aEjE

aE

jEIzV babm

fafmmm ++−+= 1 (13)

bmbafmfaaca jaEEjaEEIZzVa −++++= )( 1 (14)

Para la fase auxiliar se nota por medio de la relación de impedancia α2 con base al circuito

equivalente de la f igura 6, se puede deducir las siguientes ecuaciones en formas más

convenientes:

abfmbfm IZZjaIZZzV )()( 1 −−++= (15)

[ ] abfacmbfa IZZazZIZZjaV )()( 21 ++++−= (16)

Torque:

El torque debido a una fase del estator, es igual a la velocidad angular sincrónica, dividida

por la diferencia entre la cantidad de potencia transferida a través del entrehierro al rotor

por los campos rotacionales opuestos, la diferencia de potencia para ambas fases es:

[ ] )sin()(2)()( 22mabfmabfagbgf RRIaIRRaImIPP θθ −++−+=− (17)

El torque de desarrollo es:

IEL2-1-05-35 25

sinω

gbgf PPT

−= 2 (18)

2.3. PARÁM ETROS

Para poder plantear un modelo apropiado del motor es necesario conocer sus parámetros

de acuerdo con el circuito equivalente, esto implica el desarrollo de pruebas de laboratorio

en este caso, pruebas de cero carga y de motor bloqueado. Usualmente estas pruebas

son ejecutadas con la bobina auxiliar desconectada pero como el motor usa el capacitor

en su operación normal, en las pruebas se incluirá la bobina auxiliar, realizando una

prueba para cada bobina.

El circuito por fases se puede modelar de la siguiente forma:

Figura 7. Circuito equivalente motor inducción monofásico un solo embobinado.

Donde: 111 jXrZ += Representa la impedancia de entrada o del estator

22 jXr + Representa la impedancia del rotor

jXM Representa la impedancia de magnetización que se

ve desde el estator

2 Procedimi ento, ecuaci ones y circuitos tomados de [3] .

r2

r1

V jXM

jX2

Z1

jX1 Im

IEL2-1-05-35 26

Pruebas

Figura 8. Circuito equivalente (a) Prueba cero carga. ( b) Prueba rotor bloqueado.

La prueba de cero carga se realiza haciendo girar el motor sin carga a voltaje nominal, se

miden voltaje, corriente y potencia. En este caso se asume que el deslizamiento es igual a

cero (s = 0), el circuito queda como en la f igura 8.(a), para la cual la reactancia serie total

es:

210 5.05.0 xxxx M ++= (19)

Para la prueba de rotor bloqueado se desprecia la corriente magnetizarte y el circuito

queda como en la Figura 8.(b), se asume x1 = x2 = xL/2, donde xL es la reactancia de motor

bloqueado con base a esto se puede encontrar la reactancia de magnetización es:

LM xxX 5.12 0 −= (20)

La resistencia del embobinado principal se mide con corriente continua, la resistencia del

rotor se determina usando la resistencia serie equivalente de motor bloqueado.

2L

LL I

Pr = (21)

Siendo PL y IL la potencia y corriente de entrada al motor con el rotor bloqueado. Se puede

aproximar como:

2

212 )( ⎟⎟

⎞⎜⎜⎝

⎛ +−=M

ML x

xxrrr

r1 jx1

0.5jxM

0.5jx2

0.5r2 2

S = 0 V

Io r1 IL

VL

0.5r2

0.5jx2

0.5r2

0.5jx2 jx1

S = 1

(a) (b)

IEL2-1-05-35 27

Datos Experimentales

Realizando las pruebas de vació y de motor bloqueado, resultaron los siguientes valores:

Prueba Vacio Bloqueado Vacio BloqueadoPotencia(w) 50,5 50 32 33Corriente(A) 0,5 0,61 0,32 0,383Voltaje(V) 117 100 117 100

Embobinado Principal Embobinado Auxiliar

Tabla 1. Resultados de pruebas

Voltaje 117 V Resistencias de los embobinados:

Corriente 1 Amp Rmain = 37.2Ω

Condensador 8.23 µF Raux = 60.2Ω Frecuencia 60 Hz Polos 4 Realizando procedimiento para el embobinado principal Para la prueba de vacío:

Ω== 2345.0

1171 A

VZ Ω== 202)5.0(

5.5021 A

wrv

Ω=Ω−Ω= 1.118)202()234( 220X

Prueba de rotor bloqueado

Ω== 16461.0

100A

VZL Ω== 37.134)61.0(

602A

wrL

Ω=Ω−Ω= 9.93)37.134()164( 22LX

Asumiendo:

IEL2-1-05-35 28

Ω=== 9.46221

LXXX mHhz

LL 4.124)60(2

9.4621 =

Ω==

π

De acuerdo con la ec. 20 queda:

Ω=Ω⋅−Ω⋅= 35.95)8.93(5.1)1.118(2MX mHX M 9.252=

De acuerdo con la ec. 22 queda:

Ω=⎟⎠⎞

⎜⎝⎛ +

⋅−= 6.21535.95

35.959.46)5.3737.134(2

2r 3

Realizando el mismo procedimiento para la bobina auxiliar, quedan los siguientes valores como característicos del motor, de acuerdo con el circuito de la figura 8, queda:

R1m 37,5 Ohm R1a 60,2 OhmR2m 215,4 Ohm R2a 133,07 OhmX1m 46,9 Ohm X1a 71,7 OhmL1m 124,4 mH L1a 190,1 mHXMm 95,35 Ohm XMa 271,95 OhmLMm 252,9 mH LMa 721,3 mHXc 321,91Ohm a 1,23 V/VC 8,24uF Rc 5 Ohm

Embobinado Principal Embobinado Auxiliar

Tabla 2. Parámetros del motor

2.4. CONSUM O DE POTENCIA Y TORQUE Para dimensionar los dispositivos de potencia y tener una referencia del motor, se debe saber que potencia consume, que niveles de corriente maneja el motor y que nivel de carga es capaz de soportar. De acuerdo con los parámetros encontrados para el motor se 3 Procedimiento tomado de Leander W. Matsh, Máquinas Electromecánicas y Electromagnética, 1ª

edición, 1974.

IEL2-1-05-35 29

puede hallar unos valores de corrientes y potencias para un modo de operación a frecuencia nominal (60Hz), voltaje nominal (117V) y una carga considerablemente alta (deslizamiento de 0.07), se tiene, los voltajes en las fases y la impedancia del estator:

ambf IZbZfjaIZZZVm )()( 1 −−++=

[ ] abfabf IZZaZZcZZjaVa )()( 21 ++++−=

9.465.371 jz +=

Primero se halla la impedancia para el campo rotatorio hacia delante:

º22.8862.476.47474.1)35.959.46(

07.04.215

9.4607.0

4.215)35.95(5.0

)(

5.0

22

22

∠=+=++

⎟⎠⎞⎜

⎝⎛ +⋅

=++

⎟⎠⎞

⎜⎝⎛ +

= jj

jj

XXjsr

jXsrXj

ZM

M

f

Ahora la impedancia del campo rotatorio hacia atrás:

º91.6092.3189.2751.15)35.959.46(

07.024.215

9.4607.024.215)35.95(5.0

)(2

25.0

22

22

∠=+=++

⎟⎠⎞⎜

⎝⎛ +

−⋅

=++

⎟⎠⎞

⎜⎝⎛ +

−= j

j

jj

XXjs

r

jXs

rXjZ

M

M

b

Suma de impedancias:

º6698.1334.12249.541 ∠=+=++ jZZz bf

º54.14476.2926.1724.24)71.19036.14(23.1)( −∠=−−=+−=− jjjZZja bf

º25.566.16303.1369.90)(21 −∠=−=+++ jZZazZ bfac

Las corrientes principal y auxiliar en forma de determinantes:

IEL2-1-05-35 30

865.0198.0º24.78874.0º744.1122360º49.6619559

º25.5603.163º54.14476.29º46.3576.29º6698.133

º25.5603.163º0117º46.3576.29º0117

)()()()(

)(

21

1

21

jI

ZZazZZZjaZZjaZZzZZazZV

ZZjaV

I

m

bfaCbf

bfbf

bfaCa

bfm

m

−=−∠=∠

−∠=

=

−∠−∠∠∠

−∠∠∠∠

=

−++−−−++−++

−−

=

631.05521.0º84.48838.0º744.1122360º58.6018758

º25.5603.163º54.14476.29º46.3576.29º6698.133

º0117º54.14476.29º0117º6698.133

)()()(

)(

21

1

1

jI

ZZazZZZjaZZjaZZz

VZZjaVZZz

I

a

bfaCbf

bfbf

abf

mbf

a

−=∠=∠∠=

=

−∠−∠∠∠∠−∠∠∠

=

−++−−−++

−++

=

La corriente de línea, es decir, la que toma el motor es:

224.073.0º102.177641.0º84.48838.0º24.78874.0 jIII am −=−∠=∠+−∠=+=

El factor de potencia es:

955.0)1.17cos( =

La potencia transferida a través del entrehierro, usando la ecuación (17) es:

[ ]( )WPP

senPP

gbgf

gbgf

04.50)1.127()51.1547.1)(838.0)(874.0(23.1251.1547.1)838.023.1()874.0( 22

=−

+⋅+−⋅+=−

IEL2-1-05-35 31

El torque desarrollado, según ecuación (18) es4:

mNTem ⋅=×

= 132.0602

04.50π

Con base en este procedimiento se calculo las curvas de torque y potencia para varios valores de carga (deslizamiento), particularmente con muy poca carga (s=0.001), cuando se considera que el motor está con una carga mínima para el puente grúa simplemente la carga del propio puente y con una carga elevada (s=0.07), cuando el puente tiene una carga máxima. Curva de potencia:

Figura 9. Curva de potencia contra frecuencia.

4 Procediemiento tomado de Leander W. Matsh, Máquinas Electromecánicas y Electromagnética, 1ª

edición, 1974.

IEL2-1-05-35 32

Donde se puede apreciar que cuando aumenta la frecuencia el consumo de potencia también se ve incrementado, en una relación casi lineal, sin embargo al cambiar los niveles de carga sólo aumenta en un 3%, por lo tanto el valor de potencia máxima que puede consumir el motor es de 51W, para el nivel de carga estipulado. Curva de torque

Figura 10. Curva de torque contra frecuencia.

Se realizo el mismo procedimiento para el torque y se encontró una alta dependencia con la frecuencia, ya que presenta unos valores altos de torque en frecuencias bajas, entre 10 y 25 hz, al igual que en la frecuencia nominal, este comportamiento refleja la acción de las inductancias que son funciones de la frecuencia, también se puede inferir que el torque que entrega el motor depende de la carga que soporte.

IEL2-1-05-35 33

3. MODELO MATEMÁTICO DEL MOTOR Para poder plantear un modelo apropiado del motor con base en los parámetros anteriormente encontrados, es necesario encontrar unas relaciones físicas básicas que dominen el funcionamiento de este. Se puede definir el motor de inducción como dos circuitos eléctricos compuestos de resistencias e inductancias, que interactúan entre sí, por lo tanto se puede decir, que incluye un circuito magnético. Debido al circuito interno de un motor que es primordialmente inductivo y en una menor proporción resistiva, entonces para la parte inductiva, se tiene la siguiente relación:

LI=λ El flujo de acoplamiento es proporcional a la corriente y la constante de proporcionalidad es la inductancia, para el caso del motor existen dos inductancias la del estator y la del rotor, sin embargo se crea una tercera, la inductancia mutua, debido a que en el motor se presentan realmente dos circuitos interactuando por medio del campo magnético, la corriente de cada uno de estos genera un flujo de acoplamiento en el otro, creando una inductancia que actúa en los dos circuitos. Mediante el uso de vectores en el espacio como variables de estado se puede modelar eficientemente este tipo de motores, usando este tipo de aproximación, resulta que las distribuciones espaciales a través del entrehierro de la densidad de flujo magnético, el flujo de acoplamiento y las densidades de corriente (fuerzas magneto-motrices, fmm) son senosoidales, se asume linealidad magnética, mientras que las perdidas del hierro, efectos de ranuras, barra profunda y final de la barra son descartados. Para describir el concepto de vectores en el espacio se considera un embobinado de estator, con su representación simbólica en la Figura 11, el eje del embobinado principal

IEL2-1-05-35 34

es alineado con el eje x en un plano bidimensional. Para crear una distribución de densidad de flujo senosoidal, la fuente magneto-motriz debe ser una función senosoidal de coordenadas circulares. Por lo tanto, los embobinados del modelo de la maquina, se asumen que tengan densidades senosoidales. Cada corriente de fase (principal y auxiliar), crea una distribución específica senosoidal de fuerza electro-motriz, cuya magnitud es proporcional a la magnitud de su respectiva corriente, mientras que su orientación espacial es determinada por la dirección de su respectiva fase y la polaridad de la corriente (0º, 90º, 180º y 270º).

Figura 11. Embobinado de estator con la fase principal y densidad de corriente.

La fuerza electro-motriz total en el estator se obtiene mediante la superposición de las distribuciones de corriente de las dos fases, lo que resulta en una distribución senosoidal desplazada en fase por 90º, la cual es representada en la figura 9, por las dos medialunas de amplitud variante. La amplitud y orientación espacial de la fuerza electro-motriz total depende de las magnitudes de cada corriente de fase, Imain e Iaux. Como las corrientes de fase varían con el tiempo, la densidad de corriente generada se desplaza en esta proporción, formando una onda de densidad de corriente rotatoria.

Imain

q

d Densidad de corriente

IEL2-1-05-35 35

Figura 12. Densidad de corriente resultante de las corrientes de fase Imain Iaux.

La superposición de densidad de corrientes de cada una de las fases se puede representar como la adición espacial de las fases. Para esto, es necesario transformar las corrientes de fase en vectores en el espacio poniéndoles una orientación espacial de acuerdo con los ejes espaciales, la corriente resulta:

( )auxmain iMiIs .1 &&+= (23)

Donde esta ecuación define la corriente de estator como un vector, donde cada componente corresponde al valor instantáneo de cada una de las corrientes de fase (principal y auxiliar) y su orientación espacial está dada por la dirección del eje de cada embobinado siendo 0° y 90°, los factores de rotación de definen como:

⎥⎦

⎤⎢⎣

⎡=

1001

1 ⎥⎦

⎤⎢⎣

⎡ −=

0110

M&& (24)

Donde el factor M es un rotador de 90° en el espacio y para este caso, indican la dirección de las corrientes principal y auxiliar. Siendo vectores de corriente, la suma vectorial es la corriente total en el estator Is, en forma vectorial, la cual representa la distribución senosoidal en el espacio de la fuerza electro-motriz total creada dentro de la maquina por corrientes que fluyen por afuera.

Imai n q

d

Is

IEL2-1-05-35 36

Figura 13. Distribución de densidad de flujo resultando de las corrientes de estator.

La distribución de densidad de flujo en el entrehierro se obtiene por integración espacial de la onda de densidad de corriente, la cual es también de naturaleza senosoidal y adelanta a la onda de densidad de corriente por 90º. Es conveniente elegir como variable del sistema a la onda de flujo de acoplamiento en lugar de la onda de densidad de flujo, ya que contiene información de los embobinados.

La distribución de flujo de acoplamiento es representada por el vector espacial ψs. Una onda rotatoria de densidad de flujo induce voltajes en los embobinados individuales del estator, estas densidades que se generan en los embobinados son funciones espaciales senosoidales, los voltajes inducidos son distribuidos senosoidalmente en el espacio. Esto mismo es cierto para las perdidas resistivas en los embobinados. El total de los voltajes distribuidos en los embobinados es representado por el vector de voltaje en el espacio del estator. En contra de esto los voltajes de fase en los terminales de la máquina son cantidades escalares discretas. El vector de voltaje en el estator se define de manera similar que el vector de corriente:

( )sauxsmain vMvVs &&+= (25)

Se debe tener en cuenta que los vectores de corriente son definidos de manera diferente que los vectores de flujo; estos siempre están -90º fuera de fase con respecto al máximo

Re

jIm

Densidad de flujo de acoplamiento

ψs

IEL2-1-05-35 37

de la distribución de densidad de corriente, representada en la figura 9. Por el contrario los vectores de flujo de acoplamiento siempre están alineados con el máximo de su respectiva distribución de corriente de la figura 10. Está es una definición conveniente que

permite establecer una relación simple entre ambos vectores, ψs = ls is, donde ls es la inductancia bifásica del embobinado de estator.

3.1. ECUACIONES DE LA M ÁQUINA Si se elige un sistema de coordenadas rotatorio5 para establecer las ecuaciones de voltaje

en un motor de inducción, el sistema de coordenadas rota a una velocidad angular ωk, las cantidades de voltaje, corriente y flujo son vectores representados en el sistema de coordenadas bidimensional, la ecuación de voltaje para el estator es:

SKS

SS Mdt

dirsV ψωψ &&++= (26)

Donde el primer término es la caída de voltaje resistivo, rs es la resistencia del estator. La

suma de los otros dos términos representa el voltaje inducido, de la cual dψ/dt es el

término estacionario que cuenta las variaciones del flujo de acoplamiento en el tiempo vista desde un marco de referencia móvil. El último término es el voltaje inducido por movimiento que resulta de variar el desplazamiento de los embobinados con respecto al marco de referencia.

En el rotor, el desplazamiento es ωK - ω, donde ω es la velocidad angular mecánica del

rotor, por lo tanto su ecuación será:

rKr

rr Mdt

dir ψωωψ )(0 −++= && (27)

• 5 Modelo con base en Joachim Holtz. Sensorless control of induction motors drives.

IEEE, Electrical machines and drives group, University of Wuppertal, Vol 90, Nº 8, Aug. 200, pp 1359-1394.

IEL2-1-05-35 38

La ecuación igualada a cero indica, que es un motor de jaula de ardilla, por lo tanto el voltaje en el rotor es cero. Con estas ecuaciones se puede plantear un sistema tomando como variables de estado los flujos y las corrientes, los cuales se relacionan de la siguiente manera:

rrSmr

rmSSS

ilililil

+=+=

ψψ

(28)

Desarrollando para las corrientes en componentes queda en términos de inductancias:

rdmrsdmrd

rdmSdmSSd

iLLiLiLiLL

⋅++=+⋅+=

)()(

1

1

ψψ

(29a)

rqmrsqmrq

rqmSqmSSq

iLLiLiLiLL

⋅++=+⋅+=

)()(

1

1

ψψ

(29b)

Donde ls, lr y lm, son las inductancias del estator, rotor y mutua respectivamente. Para relacionar el sistema mecánico que se genera en el rotor, que relaciona la velocidad angular con que se mueve este y los torques del sistema, se plantea la siguiente ecuación para el sistema mecánico:

Lem TTdd

−=τω

τ (30)

Donde τm es el momento de inercia del motor (medido en kilogramo por metros al

cuadrado), ω la velocidad angular mecánica del rotor, TL es el torque de carga. Te es el torque electromagnético que se puede ver como:

Srm

e

srr

mSrmrre

dSqSqSdSSSSSe

LT

iLLiiLiT

iiiMiT

ψψ

ψψ

ψψψψ

⊗=

⊗=⊗=⊗=

−=•=⊗=

'1

.&&

(31)

IEL2-1-05-35 39

3.2. MODELO ESTATOR-ROTOR Para plantear el modelo del estator y del rotor, se usan las ecuaciones (26) y (27) para los voltajes en estator y rotor; la ecuación (28) para relacionar los flujos con las corrientes y las ecuaciones (28) y (29) para relacionar el sistema mecánico con los flujos y las corrientes, teniendo en cuenta que para modelar el modelo se escogió un marco de referencia estático, es decir wK = 0, por lo tanto los términos que relacionan la velocidad del marco se vuelven cero, el sistema de estator-rotor queda de la siguiente manera:

Figura 14. Modelo del motor en formulación de vectores del espacio.

El sistema tiene como entradas el voltaje en el estator y la velocidad mecánica del mismo motor, como salidas la corriente del estator y el torque electromagnético desarrollado por el motor. En la parte superior de la figura 11, se define la ecuación del estator, cuya

IEL2-1-05-35 40

entrada es el voltaje del estator, al cual se le resta la caída de voltaje por parte de la resistencia y corriente del estator, que al ser sumadas entrega la variación de flujo de estator con respecto al tiempo, finalmente se integra con respecto al tiempo y resulta el flujo de estator. En la parte inferior se toma la ecuación del rotor, cuya entrada es el voltaje de rotor, tomando un valor igual a cero, puesto que el rotor es de jaula de ardilla y tiene cortocircuitadas sus terminales, se suman los términos, la caída de voltaje por parte de la resistencia y corriente de rotor y el término que relaciona el flujo de rotor con la velocidad mecánica del rotor. En la parte derecha se computan las corrientes del motor para evaluar el torque electro-magnético, con base en la ecuación (31), que consiste en el producto de los vectores de corrientes de estator y de rotor, usando el rotador del espacio. El bloque de relaciones Flujo-Corriente se basa en las ecuaciones (29a) y (29b), el cual tiene como entradas, los vectores de flujos de estator y de rotor, y como salidas, los vectores de corrientes de estator y rotor, y simplemente calculan las corrientes con base a ganancias equivalentes a las inversas de las inductancias, se presenta a continuación:

Figura 15. Bloque Flujo-Corriente.

IEL2-1-05-35 41

3.3. MODELO SISTEM A COMPLETO El sistema completo del motor involucra el modelo mecánico, que depende de los torques, magnéticos y de carga, de la constante de inercia del motor y de su número de polos, que dará la relación de velocidad mecánica y frecuencia de alimentación, con base en estos se puede deducir la velocidad del motor, al igual que las otras variables, como corrientes y voltajes, además se integra la fuente de alimentación y el condensador, por el cual se logra el desfase de voltaje para el embobinado auxiliar, el sistema total queda:

Figura 16. Sistema total motor, condensador y fuente de alimentación.

En la Figura 16 se muestra el sistema total, que integra el modelo del motor anter iormente explicado con el modelo físico o el sistema mecánico especificado por las ecuaciones (30)

IEL2-1-05-35 42

y (31). Para el sistema total se integra las entradas de voltaje simulando una fuente de voltaje de 110AV, con el respectivo capacitor que desfasa la señal de voltaje, para alimentar el embobinado auxiliar constituyendo el voltaje en forma vectorial. Se incorpora una señal de torque de carga a manera de rampa para probar los niveles de torque que el motor puede manejar y finalmente se toma la señal de salida como la velocidad del motor en rpm (revoluciones por minuto). Se evalúa el sistema mecánico del motor derivado de la ecuación (30), cuya entrada es el torque electro-magnético, salida del bloque anterior, donde esta señal es de naturaleza pulsativa, por lo tanto, para poderla visualizarla se realiza un promedio de la misma, en el bloque “sig ave”, el cambio de velocidad angular con respecto al tiempo, es la resta de torques electro-magnético y de carga. Al multiplicase por una ganancia, la constante de inercia (1/J[Kg.m2]) e integrarla con respecto al tiempo, cuyo valor inicial de la frecuencia de alimentación (w o). Resulta la velocidad angular mecánica del sistema, que realimenta al sistema del motor PSC. Para poderla visualizar la velocidad en rpm (revoluciones por

minuto) se multiplica por un factor de conversión (30/π). El modelo permite visualizar las variables eléctricas que influyen en el comportamiento del motor, especialmente las corrientes de estator. También se puede verificar el comportamiento de los voltajes de entrada especialmente el desfase logrado por el capacitor. Primero se evalúan las señales eléctricas el voltaje y la corriente, se puede ver la simulación en los anexos 1, figura A1. Se integro el capacitor para lograr el efecto de desfase en los voltajes de entrada 90º, se puede verificar que el voltaje es perfectamente desfasado logrando los voltajes de entrada que se requieren para el funcionamiento óptimo del motor. Se evaluaron las corrientes del auxiliar y del principal. Al evaluar las corrientes, anexos 1 figura A2, se puede verificar que la corriente del principal es mayor que la del auxiliar en magnitud, con un valor pico de aproximadamente 365mA para el principal y 85mA para el auxiliar, cuando el torque de carga es cero, pero cuando se aumenta el torque (en t = 1) la corriente aumenta considerablemente conforme el torque de carga aumenta, cuando el motor se bloquea la corriente llega hasta 2 A, sin embargo no es posible manejar estos niveles de corriente, debido a que el motor en

IEL2-1-05-35 43

operación normal no debe tener niveles de carga tan altos (no se debe bloquear), su corriente nominal es de 1 A, cuando maneje corrientes superiores a esta es posible que el motor sufra daños, el torque máximo de carga se establece en 0.35 N.m que ocurre en t =1.4 y un torque electro-magnético de aproximadamente 0.2 N.m, cuando usa una corriente pico de 0.8 A aproximadamente, donde se mantiene un margen de 0.2 A para sobre corrientes.

Señales mecánicas: En los anexos 2 figura A3, se puede notar el torque desarrollado por el motor, cuando el torque de carga es cero el motor gira libremente y a velocidad constante, por lo tanto el torque que proporciona el motor es casi cero, puesto que la única carga que soporta es su propia inercia, pero cuando se alimenta con una entrada de escalón de torque, a modo de carga, se puede notar que el motor desarrolla un torque electro-magnético en respuesta, sin embargo, es siempre es inferior al de carga resultando en una disminución en la velocidad mecánica del motor (ver figura20), el torque máximo desarrollado por el motor es de 0.3 N.m aproximadamente, pero conforme la carga aumenta el motor no es capaz de generar el torque suficiente para “moverla”, teniendo como consecuencia una disminución de este y finalmente un torque igual a cero, lo que equivale a una velocidad angular de cero. En los anexos 2 figura A4, se puede ver la curva de velocidad mecánica del motor en rpm (revoluciones por minuto), se puede apreciar que al no tener carga, la velocidad es casi igual a la velocidad sincrónica, esto es, porque en un motor de inducción la fuerza magneto-motriz del rotor nunca alcanza a la del estator, por tanto la velocidad mecánica nunca será igual a la velocidad del campo, cuando se aplica la carga de torque, la velocidad desciende considerablemente hasta llegar a cero, cuando se bloquea el motor por exceso de carga. Por lo tanto el error de velocidad o deslizamiento, es decir la diferencia en la velocidad del campo (w 0) y la velocidad mecánica (wmec), estará dada por la carga, cuando se maneje cargas inferiores a 0.35 N.m el error máximo será del 11% (s = 0.11).

IEL2-1-05-35 44

4. DRIVERS ACTUALES En el problema de controlar motores AC eficientemente, esto es, sin pérdidas innecesarias de potencia, mejoramiento de factor de potencia, decremento en las pulsaciones de torque y por ende menores armónicos en la línea, se han creado los VDF (Variable-Frecuency-Drive). Básicamente constan de dispositivos de electrónica de potencia, una unidad de alta velocidad de control, generalmente un microcontrolador, y opcionalmente sensores de realimentación dependiendo de la aplicación. La función básica es actuar como un generador de frecuencia variable, con el propósito de variar la velocidad del motor según el usuario desee. La velocidad base de un motor es proporcional a la frecuencia de la fuente, por lo tanto, cambiando la frecuencia de la fuente, la velocidad del motor cambiará; sin embargo, cuando la frecuencia es reducida las impedancias equivalentes del circuito eléctrico también se reducen. Esto resulta en una mayor corriente consumida por el motor y por ende, un mayor flujo; si el voltaje no es reducido el campo magnético se saturará. Por lo tanto, para mantener el flujo magnético dentro de un margen de funcionamiento, la relación voltaje-frecuencia se debe cambiar a un radio constante.

4.1. CONTROL ESCALAR

En este tipo de control, el motor es alimentado con señales de frecuencia variable, generadas por un control PWM de un inversor usando un microcontrolador. El radio voltaje-frecuencia se mantiene constante para obtener un torque constante en todo el rango de operación. El torque desarrollado depende de la carga.

IEL2-1-05-35 45

4.2. CONTROL VECTORIAL Usando la or ientación del campo, los vectores de corriente son convertidos en un marco de referencia bidimensional rotatorio (usando transformación de Clarke-Park), una componente representa la componente de flujo producida por la corriente de estator, y la otra representa la componente de torque producida. Estas dos componentes pueden ser controladas independientemente pasando por controladores PI, y luego, convertidas otra vez a la forma tridimensional estacionaria. Este control simula el modelo de un motor DC. La transformación es realizada y controlada con respecto a un flujo especifico, de aquí se derivan tres tipos de control vectorial. Flujo de estator, flujo de rotor y flujo magnetizante. Este tipo de control exige la medida del ángulo de flujo, lo que implica mayor complejidad y una malla de realimentación por medio de sensores u otras técnicas.

4.3. CONTROL DIRECTO DE TORQUE (DTC) El aspecto fundamental en este tipo de control es el modelo adaptativo del motor, el cual se basa en expresiones matemáticas de teoría de motores. El algoritmo captura estos parámetros desde un comienzo sin arrancar el motor, pero se requiere una sintonización de estos para una respuesta más precisa. El sistema tiene como entradas el voltaje del bus DC, la corriente de línea y la posición de los interruptores, el modelo calcula el flujo actual y el torque, estos valores son comparados con niveles de requerimiento dados por el usuario, obteniendo como salida niveles de flujo y torque de referencia. Tiene mejor respuesta en tiempo, no usa dispositivos de retroalimentación pero se crean ondas de torque y flujo debido a la histéresis de los comparadores, como la conmutación no se realiza en alta frecuencia se incrementan los armónicos de baja frecuencia. Es complejo de implementar.

IEL2-1-05-35 46

5. MODELO A IMPLEMENTAR Debido al tipo de aplicación, el driver que se puede aplicar es un control escalar, puesto que es más simple, no necesita retroalimentación, la aplicación no cambia de carga mientras está en movimiento, por lo que no se requiere un control de torque, simplemente el torque será determinado por la carga, y el margen de precisión es aceptable. El motor PSC tiene dos embobinados, el principal y el auxiliar, está diseñado para que el auxiliar tome menos corriente, tiene mayor número de vueltas, mayor resistencia y una corriente reducida pasa a través de él, esto hace que el motor sea asimétrico. Mediante el uso de microcontroladores el voltaje a través del principal y el auxiliar, se puede mantener desfasado por 90º, además se puede remover el capacitor que cumple esta tarea. La idea básica de controlador es generar de un bus de voltaje DC, dos voltajes AC desfasados entre sí por 90º, variando la magnitud y la frecuencia de acuerdo a un radio V/f. Si el voltaje aplicado en el principal está atrasado con respecto al del auxiliar, el motor gira hacia delante, mientras que si el voltaje en el principal adelanta al del auxiliar el motor gira en la otra dirección.

5.1. APLICACIÓN MODELO CON DRIVER SELECCIONADO

El driver v/f opera como un sistema de lazo abierto, la velocidad mecánica ω difiere de la

velocidad de referencia ωS* cuando la máquina tiene carga. Esta diferencia esta dada por el deslizamiento de la máquina que para este tipo de motores llega a un 5% con una carga alta, por lo tanto el error de velocidad será de un 5% de su velocidad nominal. Este

IEL2-1-05-35 47

tipo de control asegura robustez a costa de un pequeño error en la velocidad y desempeño dinámico. Con el control seleccionado, control escalar, la idea principal es mantener el radio voltaje-frecuencia en un valor constante para que los flujos no se saturen y el motor opere correctamente, por lo tanto, al modelo anteriormente desarrollado se integro un bloque de control escalar, el cual alimenta al motor teniendo en cuenta que la velocidad del motor será controlada por una señal de entrada tipo rampa (radio V/f) para variar la velocidad. El sistema integrado se puede ver en la figura 17.

Figura 17. Modelo motor controlador.

Penetrando en el modelo del controlador, ver figura 18, establece como entradas del controlador, el voltaje y la frecuencia, valores variables dependiendo de la velocidad deseada, las cuales generan señales senosoidales con estos valores, y con las condiciones necesarias para el funcionamiento del motor, señales desfasadas 90°. Las señales son moduladas en ancho de pulso (PWM), teniendo en cuenta la magnitud y frecuencia que el motor necesita, valores nominales, y finalmente las señales son integradas al marco de referencia bidimensional definido en el modelo del motor.

IEL2-1-05-35 48

Figura 18. Controlador V/F, bloques internos.

El modulo de modulación en ancho de pulsos, ver Figura 19, toma la señal de voltaje de entrada es comparada con una señal triangular de mayor frecuencia (frecuencia de modulación), e integrada a un comparador que dará los ciclos útiles de la señal de salida, adicionalmente se agrega una ganancia como factor de corrección.

Figura 19. Generador de PWM.

Al simular el sistema, ver Anexo 3, figura A5, tomando como entrada una señal de rampa, se aumento la velocidad hasta llegar a la velocidad nominal (60Hz) y teniendo una carga baga se logró una respuesta buena del sistema el error en estado estable esta determinado por la carga y es del 4%, lo que representa una velocidad mecánica de 2680 rpm,

IEL2-1-05-35 49

En el caso de una entrada de cero el motor no produce ninguna respuesta, su funcionamiento comienza a partir de aproximadamente 150 rpm, lo que se traduce en una frecuencia de 5Hz. En frecuencias bajas de 5Hz – 33Hz (150rpm a 1000rpm) presenta oscilaciones en la velocidad, este fenómeno se presenta por las pulsaciones de torque a baja frecuencia. Para el otro rango de frecuencias se eliminan las oscilaciones debido a la normalización del torque. El driver tiene un buen desempeño dinámico, sin embargo el torque a bajas frecuencias es muy pulsante lo que se traduce en pequeñas aceleraciones, y por ende cambios de velocidad.

5.2. ARQUITECTURA GENERAL El sistema total, ver Figura 20, consta de un rectificador de onda completa para tomar la fuente AC de 60Hz, y crear un voltaje de línea, con el menor “ripple” posible, mediante el uso de un filtro, posteriormente el voltaje DC se convertirá de nuevo en voltaje AC, pero controlando su frecuencia y magnitud, por medio de algún controlador, un microcontrolador.

Figura 20. Arquitectura controlador

Fuente AC 60Hz

Rectificador Filtro Inversor trifásico

Motor PSC

Controlador PWM

AC AC DC DC

IEL2-1-05-35 50

5.2.1. RECTIFICADOR Y FILTRO La conversión de la entrada de voltaje AC a voltaje DC, es lograda por medio de diodos, se denomina una rectificación “no-controlada”, en este tipo de conversión la potencia solo puede fluir del lado AC al DC. La salida DC debe tener el menor “ripple” posible, por lo tanto, es colocado un capacitor de alto valor en la salida, funcionando como filtro, ver Figura 21.

Figura 21. Rectificador con filtro.

Rectificadores de fase sencilla

La fuente es modelada como una fuente senosoidal Vs en serie, con su impedancia interna, que en la práctica es principalmente inductiva, representada por la inductancia Ls, ver circuito Figura 22.

~Vs

is id +

Vd

-

IEL2-1-05-35 51

Figura 22. Circuito rectificador.

Como primera aproximación, se asume Ls = 0, el circuito consiste en dos parejas de diodos, las parejas superior D1 y D3; y la pareja inferior D2 y D4. Como se ve en la figura 22. En la operación básica para cada grupo de diodos, la corriente id fluye continuamente a través de un diodo superior y uno inferior. Se presentan dos situaciones: En la pareja superior los cátodos de los dos diodos están a igual potencial, por consiguiente, el diodo con el ánodo en mayor potencial va a conducir id. Cuando Vs es positiva, el diodo 1 conducirá id, y el diodo 3 estará polarizado inversamente por Vs. Cuando Vs es negativo, la corriente conmuta instantáneamente al diodo 3, aparece polarizado inversamente el diodo 1. En la pareja inferior los ánodos de los diodos están al mismo potencial, por lo tanto, el diodo con el cátodo en el menor potencial conducirá id. Cuando Vs es positivo el diodo 2 llevará id y el diodo 4 estará polarizado inversamente por Vs. Cuando Vs es negativo, la corriente id conmutará instantáneamente al diodo 4 y el diodo 2 aparecerá polarizado inversamente por Vs. En resumen:

Vs Diodo 1 Diodo 2 Diodo 3 Diodo 4 Vd Is

Positivo ON ON OFF OFF Vs Id

Negativo OFF OFF ON ON -Vs -Id

Tabla 3. Operación del rectificador.

Resultando que en cualquier tiempo la salida de voltaje en el lado DC se puede expresar como:

sd VtV =)(

Y la corriente en el lado AC puede ser expresada como:

⎭⎬⎫

⎩⎨⎧

<→−>→

=0

0

sd

sds vi

vii

IEL2-1-05-35 52

La transición entre los dos valores es instantánea debido a la asunción de Ls =0, cuando se toma en cuenta la inductancia el cambio en la corriente no es instantáneo y dependerá del valor de la inductancia.

5.2.2. BLOQUE RECTIFICADOR Y FILTRO (SIMULINK)

Figura 23. Modelo de rectificador de onda completo.

Este bloque consta de la fuente de entrada, de 110VAC a 60Hz la cual será tomada de la línea eléctrica, un puente rectificador universal, explicado anteriormente y un filtro capacitivo, además de una resistencia de 20 Ohms para simular la carga, resultado se puede apreciar en el anexo 4, figura A6. Se puede observar que la señal de entrada es de 110VAC, por lo tanto el voltaje pico será:

2110×=Vp (32)

IEL2-1-05-35 53

La salida del rectificador de onda completo es una señal casi DC con un valor de aproximadamente 150V, con un ripple pequeño, donde con una carga de 20 se comporta muy bien, ver anexo 4, figura A7. Se puede verificar que la señal de salida, tiene una rectificación completa, presenta un ripple bajo de 6V, lo que equivale al 4% de la señal. Donde la salida se puede tomar como una señal DC de 150V aproximadamente. La señal de corriente es DC con un ripple no muy marcado, se puede apreciar que en cada ciclo toda la corriente pasa por una pareja de diodos alternándose, ver anexo 4 figura A8. Debido a que los voltajes DC que se manejan son altos (150V), se debe tener en cuenta que los dispositivos de rectificación deben ser diodos de alta potencia, capacitores de mayores de 170VAC.

5.2.3. INVERSOR Los inversores DC a AC, son usados en controladores de motores, cuyo objetivo es producir una salida AC senosoidal cuya magnitud y frecuencia puedan ser controladas.

Figura 24. Esquema inversor.

~Vs

+

Vd -

AC motor

IEL2-1-05-35 54

Inversor PWM:

Figura 25. Circuito inversor sencillo.

En este tipo de inversores el voltaje de entrada DC se mantiene constante en magnitud, proveniente de un rectificador y un filtro capacitor, llamado voltaje de línea. El inversor debe controlar la magnitud y frecuencia de los voltajes de salida AC, y esto es logrado por los PWM de los inversores. Existe una señal de control Vcontrol que es comparada con una señal triangular de permutación en frecuencia, con la finalidad de generar señales de permutación, y de esta manera controlar los radios útiles de permutación, dejando que el voltaje promedio DC pueda ser controlado. Para producir una señal de salida senosoidal a una frecuencia deseada, se debe tener una señal de control de esas características, la cual es comparada con una señal triangular. La frecuencia de la señal triangular establece la frecuencia de permutación del inversor, que generalmente se mantiene constante al igual que su amplitud. La frecuencia de la señal triangular (fs), es denominada frecuencia de la portadora; la frecuencia de la señal de control (f1), es llamada frecuencia de modulación. El radio de modulación en amplitud (Ma), es definido como:

tri

control

VVMa ˆˆ

= (33)

+

Vd -

+ Vd/2

-

+ Vd/2

-

TA+

TA-

DA+

DA -

io VAN

A

N O

IEL2-1-05-35 55

Donde Ma debe ser menor que 1, para que se mantenga en un rango lineal, cuan es mayor que 1 se considera sobre-modulada. Vcontrol y Vtri son los picos de cada una de las señales. El radio de modulación en frecuencia (Mf) es definido como:

1ffsMf = (34)

Se debe mantener Mf >> que 1, para poder variar la frecuencia del controlador.

Figura 26. Formas de onda señal triangular y señal de control.

En el inversor los interruptores TA+ y TA-, figura 25, son controlados basándose en la comparación de Vcontrol y Vtri, resultan las siguientes salidas de voltaje: Vcontrol > Vtri TA+ es ON, Vao = 1/2Vd Vcontrol < Vtri TA - es ON, Vao = -1/2Vd Se establece que los dos interruptores nunca estarán apagados ni prendidos simultáneamente, la salida de voltaje Vao estará en dos valores (1/2Vd y –1/2Vd), como se puede ver en la figura 15.

PWM

(1/fs)

Vcontrol Vtri

IEL2-1-05-35 56

Figura 27. Forma de onda de salida después de realizada la comparación.

Puente inversor trifásico

Esta configuración funciona de la misma manera que el puente sencillo, pero agregando un inversor por cada fase, teniendo una señal de control para cada fase, y una única señal triangular para ser comparada y así generar tres señales senosoidales, separadas por 120°, si es el caso de una aplicación trifásica o separadas en fase, según las señales de control.

Figura 28. Circuito de puente inversor trifásico

Vd/2

- Vd/2

PWMVAo

+

Vd -

+ Vd/2

- +

Vd/2 -

TA+

TA-

DA+

DA -

A

N

oTB+

TB-

DB+

DB -

B

TC+

TC-

DC+

DC -

C

id

IEL2-1-05-35 57

5.2.4. BLOQUE INVERSOR (SIM ULINK)

Figura 29. Puente inversor sencillo.

Después de la etapa rectificadora la señal (150DC) alimenta al puente inversor, que consiste en una pareja de interruptores controlados por una señal de pulsos, con el fin de formar una señal equivalente senosoidal de 60 Hz con señal pico de 150V (señal inicial). Las señales de salida de corriente y voltaje, la señal de voltaje se puede comparar con la señal inicial (señal inferior), donde se aprecia que es una señal equivalente de 60Hz. La señal de corriente es senosoidal desfasada conforme la corriente adelanta al voltaje. Esta señal es óptima para alimentar un motor, ver anexos 5, figura A9.

IEL2-1-05-35 58

Puente inversor trifásico

Figura 30. Esquema puente inversor trifásico

Este bloque consta de tres bloques de inversores simples, pero uniéndolos para crear las tres fases, dependiendo de las tres señales de control. En este caso se tienen tres voltajes Va, Vb y Vc para cada fase, sin embargo para realizar el control del motor PSC se mantienen los desfases conforme la figura 18, donde las fases de los voltajes son: Va fase 0º, Vb fase de 180º y Vc fase entre 0º y 180º dependiendo de la relación de la ecuación (28), para el valor de α = 1,23 el valor de desfase es de 78º, manteniendo el funcionamiento del motor a 60Hz. Ver anexo 6, figura A10.

IEL2-1-05-35 59

Se puede apreciar los voltajes desfasados conforme con las señales de control. De acuerdo con el diagrama de fases los voltajes de salida para el motor Vmain y Vaux. Donde Vmain = Va – Vc y Vaux = Vb – Vc, para lograr el desfase de 90º entre estos voltajes los cuales serán aplicados a las bobinas del motor, se puede anotar que cambiando el símbolo del desfase de Vc, el motor rotará en dirección contraria, ver anexo 6, figura A11. Se puede ver como la corriente del auxiliar adelanta la del principal, haciendo que el motor gire para un lado, a realizar el cambio de fase se puede notar la situación contraria donde la corriente del principal adelanta la del auxiliar, haciendo que el motor gire en dirección opuesta, ver anexo 6, figuras A12 y A13.

5.2.5. CONTROLADOR DE PWM El controlador de PWM debe generar una onda de triangular y otra onda de control, de magnitud y fase que se desee, este procedimiento se puede realizar mediante software. En la aplicación especial se trabajará con un inversor trifásico, para generar tres señales Va, Vb y Vc, que tendrán la misma magnitud para optimizar la utilización del dispositivo, pero se manejara la fase teniendo en cuenta ciertos aspectos del motor. Los voltajes aplicados a cada embobinado del motor serán:

cba

cam

VVVVVV

−=−=

(35)

La idea principal es mantener el desfase de 90º entre las dos bobinas, manejando los voltajes como fasores, se puede alcanzar ese objetivo.

IEL2-1-05-35 60

Figura 31. Diagrama de favores de voltajes.

Donde: AUX

MAIN

VV

=α Es el radio de vueltas en los dos embobinados.

Aplicando relaciones trigonométricas se puede hallar:

)(tan2º180 1 αθ −⋅−=Angulo (36)

2

)1(12α+

×=VV (37)

Debido a que las características del motor no cambian estos valores se pueden obtener previamente, para evitar que el microcontrolador los tenga que calcular, los voltajes de cada fase del puente inversor quedan:

2)cos(1

2)cos(1

2)cos(1

VdctVV

VdctVV

VdctVV

c

b

a

+±×=

+×−=

+×=

θω

ω

ω

(38)

Donde Vdc es el voltaje de línea, w t es la velocidad angular del ciclo eléctrico, por tanto la velocidad será controlada variando este parámetro. La dirección del motor se puede

controlar cambiando el signo de θ en el valor de Vc.

IEL2-1-05-35 61

5.2.6. BLOQUE CONTROLADOR PWM (Simulink) En este bloque se debe generar la señal de control y la señal triangular de comparación, físicamente puede ser un microcontrolador de alta velocidad, porque dependerá de esta unidad la máxima velocidad de modulación para el caso simulado se utilizó una frecuencia de portadora de 1080 Hz y un índice de modulación de 0.8, mostrando resultados muy satisfactorios para la señal de salida de 60Hz se muestran las señales de control para un puente inversor sencillo, para cada interruptor dejando una banda muerta necesario para la aplicación para evitar cortos.

Figura 32. Señales de control PWM.

IEL2-1-05-35 62

6. HARDWARE Para el diseño del sistema completo se escogió, el hardware de acuerdo a las necesidades de potencia, economía y facilidad de implementación, los módulos consisten en, un puente rectificador común que cumpla las especificaciones de corriente, un capacitor a modo de filtro, que cumpla las especificaciones de ripple y voltaje, un punte inversor trifásico, que cumpla especificaciones de potencia y una unidad de control, que pueda generar los pulsos de PWM necesarios para activar el motor, invertir su dirección y funcionar como unidad de control.

6.1. DISEÑO RECTIFICADOR Y FILTRO CAPACITIVO Selección del capacitor Para la elección del capacitor, el cual es usado para suavizar el ripple de la señal rectificada AC, su valor es función inversa del ripple permitido en el voltaje DC, y se deriva de la siguiente ecuación:

rect

in

fVVPC

⋅−=

)(2

2min

2max

min (39)

Donde Pin es la potencia de carga en Watts, DV es Vmax - Vmin y frect es la frecuencia de la onda rectificada. Para el caso concreto de la aplicación esta frecuencia será el doble de la frecuencia de la señal AC, frect = 120hz. El ripple de voltaje no es un factor muy decisivo para la aplicación puesto que la unidad que alimenta (IRAMS) unidad que no requiere un voltaje DC libre de ripple, por lo tanto se estima para un ripple de 5%, por lo tanto Vmax =155V, Vmin = 147.25 V, DV = 7.75V. La potencia máxima que el motor consume anteriormente calculada es de Pin = 50.4w , entonces la capacitancia mínima con base en la ecuación 39, queda:

IEL2-1-05-35 63

FC µ6.358120)25.147155(

)4.50(222min =

−=

Los tiempos de carga y descarga dependerán directamente del ripple elegido. El tiempo de carga:

msfVV

tin

C 324.301.377

253.12

cosmax

min1

==⎟⎟⎠

⎞⎜⎜⎝

=

π

Donde fin es la frecuencia de la línea. El tiempo de descarga:

msmmtf

t Crect

DC 009.5324.333.81=−=−=

Las corrientes que soporta el capacitor y por las cuales se pueden dimensionar los diodos del puente rectificador son: Corriente pico:

mAmt

VVCtVCI

CCCp 08.836

324.375.76.358minmax ==

−=

∆= µ

Corriente RMS de carga:

mAmmftII cCpCrms 3.373)60)(324.3)(08.836( 22 ===

Corriente RMS de descarga:

mAmmftII rectDCCpDCrms 2.648)120)(009.5)(08.836( 22 ===

El ripple RMS de corriente en el capacitor esta dado por:

mAmmIII DCrmsCrmsRMS 748)2.648()3.373( 2222 =+=+=

IEL2-1-05-35 64

Para realizar la simulación se escoge un capacitor de 370µF y una resistencia que equivalga a una carga de 50.4W, la resistencia queda:

Ω=== .4764.50)155( 22

PVR

La simulación del circuito, señal de salida del circuito rectificador mediante Pspice se puede ver en el anexo 6, figura A13.

6.2. FILTRO Debido a la naturaleza de la salida de voltaje producida por el rectificador, la señal de salida no es adecuada como señal DC, en consecuencia, se hace necesario reducir la variación de la señal y esto se logra añadiendo un filtro capacitor en paralelo al circuito, considerando el voltaje V1 como la salida del circuito rectificador cuyo pico Vp. Entonces, cuando comienza un ciclo de la señal V1, el capacitor se carga hasta el valor Vp y mantiene el valor, resultando una señal DC de magnitud Vp. No obstante, en una aplicación real se tendría que conectar una resistencia de carga al circuito, haciendo que el condensador se descargue a través de la resistencia, esta descarga continua hasta que Vi exceda el valor de voltaje en el capacitor y lo vuelva a cargar. El ciclo se repite. Para evitar que la salida de voltaje sufra un alto decremento durante la descarga del capacitor, se debe seleccionar el valor de C para que la constante de tiempo CR sea mucho mayor que el intervalo de descarga. La señal de salida es casi una señal DC, con un valor de 110V, el ripple es bajo y este se puede controlar variando el condensador, que a su vez dependerá de la carga que se le aplique. La salida de voltaje se puede ver en el anexo 7, figura A14.

IEL2-1-05-35 65

6.3. MODULO INVERSOR TRIFÁSICO Para implementar el puente inversor trifásico se escogió una unidad que tiene integrado los tres inversores, IRAMS10UP60A, este módulo básicamente contiene seis IGBT con su propio resistor en el gate, seis diodos de conmutación, tres diodos bootstrap con un resistor limitador de corriente, un chip conversor de nivel, y un NTC termistor/resistor para sobre-temperatura. El esquemático se puede consultar en el anexo 8.

La parte fundamental de este driver es el circuito de “bootstrap” que tiene integrada para cada una de sus fases. Circuito Bootstrap6 El circuito integrado del driver en alto y bajo requiere una fuente de alimentación “flotante”, para cada uno de los circuitos de “high-side” que entregan pulsos al lado alto de los IGBT s. La forma más fácil de proveer este voltaje es usando circuitos “bootstrap”, como se muestra en la figura 31, el circuito está compuesto de la fuente de alimentación de 15V, elementos de “bootstrap”, una resistencia (Rbs), un diodo (Dbs) y un capacitor(Cbs). El driver IC y los dos sw itch IGBT con su respectivo diodo, uno del lado alto y otro de lado bajo (S1 y S2). Para cada fase se plantea un circuito similar.

Figura 33. Esquemático del circuito de bootstrap para una fase.

6 Circuito y especificaciones tomadas del “Datasheet” de IRAMS10UP60A en http://www.irf.com

IEL2-1-05-35 66

Operación El circuito inversor funciona tomando como entrada pulsos de 5V recibidos del microcontrolador (activo bajo), tres parejas, uno alto y otro bajo para cada una de las fases Hin1, Hin2, Hin3 y Lin1, Lin2, Lin3. Para cada fase se usa un circuito de “bootstrap” cuyo funcionamiento es como sigue: Cuando el IGBT bajo esta prendido, el capacitor Cbs se carga a través de diodo Dbs, la resistencia Rbs y el sw itch bajo S2, a casi 15V, como el pin VS en el circuito integrado está a casi potencial de tierra. El capacitor Cbs está diseñado de tal manera que retenga la mayoría de la carga cuando el lado bajo del dispositivo permuta a un estado de apagado, y el pin VS sube al potencial del bus DC. Entonces el voltaje Vbs siendo casi 15V, polariza el lado alto del circuito del driver IC. La selección del capacitor, diodo y resistor esta dado por factores importantes.

1. El voltaje Vbs de ser mantenido a un nivel mayor que el nivel de bloqueo de sub-voltaje de diver IC.

2. El capacitor Cbs no se carga a exactamente 15V cuando el sw icth bajo permuta,

depende de la caída a través del diodo (Vfbs) y del switch bajo (VceonS2).

3. Cuando el sw icth del lado alto está prendido (S1 = ON), el capacitor se descarga

principalmente por los siguientes mecanismos:

• Realizar la carga del gate Qg para permutar el sw icth alto S1 a estado de encendido.

• Corriente “quiescent” Iqbs hacia el lado alto del circuito en el IC.

• La carga de cambio de nivel, requerida por los “level-shifters” en el IC.

• Corriente de fuga Idl en el diodo Dbs. • Corriente de fuga en el capacitor Icbs.

• Carga de recubrimiento inversa en el diodo Qrrbs

IEL2-1-05-35 67

6.4. M ICROCONTROLADOR Para realizar la unidad de control se implemento usando un microcontrolador de “Microchip”, de la serie PIC16F874A, se seleccionó este dispositivo por su velocidad de operación, disponibilidad en el mercado y la integración de módulos A/D, características generales ver anexo 9. El programa general consiste en generar tres parejas de modulaciones en ancho de pulso, dos para cada fase del motor, principal y auxiliar y la última para el común de las dos fases, de esta manera trabajar los voltajes aplicados sobre cada uno de los embobinados, se trabajen de forma vectorial. Debe recibir la velocidad de referencia por medio de una entrada análoga. Las entradas de selección para activar o apagar el motor y el selector de dirección. Finalmente integra dos indicadores, de funcionamiento y de dirección. Para la configuración básica de pines se determina usando el microcontrolador de la siguiente manera:

FUNCION PIN Entrada análoga PA0

Selección ON/OFF PB2

Selección dirección PB1

Indicador ON/OFF PB4 Indicador dirección PB5

PWM0 PC0

PWM1 PC1

PWM2 PC2 PWM3 PC3

PWM4 PC4

PWM5 PC5

Tabla 4. Funciones de los pines microcontrolador PIC16F874A

IEL2-1-05-35 68

Pese a que el microcontrolador posee dos módulos PWM, se implemento el sistema utilizando los timers del procesador, puesto que al tener que elaborar uno de los módulos, se hace igual de complejo que realizar tres. Por lo tanto se utilizó un timer (prescala 1:4), el cual cuenta de 00 a 634. Al comienzo de cada ciclo, las PWMs que controlan los sw itches altos se prenden y basándose en cada ciclo individual, la salida correspondiente PWM es apagada. Después de cinco ciclos de instrucción, la PWM complementar ia es

puesta en ON, esto da un tiempo muerto de 1µs ya que el microcontrolador corre a 20MHz. Cuando el contador llega a 624, todas las salidas son apagadas. Un nuevo ciclo de PWM comienza después de 10 ciclos. Lo que equivale a una frecuencia de modulación

de 7.9KHz. Puesto que cada instrucción tarda 0.2µs, por lo tanto 634 ciclos tomará un

tiempo de 126.8µs, que sería el periodo, lo que equivale a una frecuencia de 7.8864 KHz. Programa7: Inicialización

− Inicializa puerto C para salida de PWMs, y bits en puerto B (selectores e indicadores).

− Timer1 se inicializa en operación de 8bit y prescala de 1:4 (634 ciclos), modulación.

− Inicializa ADC para el canal AN0 (lectura de potenciómetro) − Timer0 inicializado para cambiar la frecuencia basándose en el potenciómetro,

para cada overflow en el timer0, los ciclos útiles avanzan 10° eléctricos en la tabla del seno.

− La tabla del seno es copiada en la RAM, para fácil acceso.

− Habilitan interrupciones. Rutina principal:

− Se calcula el ciclo útil de los PWM, se crean tres apuntadores a diferentes valores en la tabla del seno, correspondiente a las tres fases (Va, Vb, Vc). El mayor ciclo útil se presenta cuando el valor de la tabla del seno alcanza los 90°.

7 Ver programa completo en Anexo 10

IEL2-1-05-35 69

− Se organizan los ciclos útiles, la fase que presenta el ciclo útil más corto se direcciona de primera y la de mayor ciclo útil de última, se activan banderas para indicar cual ciclo útil corresponde a cual PWM.

− ADC listo, toma el valor del potenciómetro para calcular nueva velocidad. Rutinas de interrupción

− Interrupción del timer1, En las primeras tres interrupciones la correspondiente salida de PWM es apagada, su salida complementaria es prende después de un

tiempo muerto de cinco ciclos (1µs). En la cuarta interrupción el ciclo de PWM vuelve a comenzar. Todas las PWM son apagadas y el timer es recargado con el valor más bajo correspondiente de ciclo útil. Se repite para cada ciclo de PWM.

− Interrupción timer0, se pone una bandera para indicar que la salida de seno debe avanzar 10° en la tabla. Los registros del timer son recargados con el valor correspondiente a la referencia de frecuencia del motor.

− Interrupción ADC se guarda el valor de referencia en un registro.

IEL2-1-05-35 70

Figura 34. Diagrama de flujo programa microcontrolador.

Start

Swicth ON/OFF

Inicialización de puertos, timers y ADC, copia tabla seno

SI

NO

Actualiza ciclos útiles de los PWM

Prioriza ciclos útiles de PWM

Calcula nueva velocidad

ADC Listo?

SI

Nueva frecuencia

SI

NO

Inicializa motor valores base

Arranca motor

Cambio defrecuencia

CambioBotón

Ejecutar acción

SI

NO

NO

IEL2-1-05-35 71

6.5. ESQUEM ÁTICO

Figura 35. Esquemático sistema total

Teniendo todo el hardware, incluyendo el microcontrolador programado se implementa el sistema total, que consiste en un puente rectificador en la entrada del circuito, pasando por el filtro o capacitor alimentando al puente inversor trifásico (IRAMS60UP60A), que maneja el motor, con sus respectivos condensadores de “Bootstrap”, teniendo como entrada las modulaciones en ancho de pulso (PWM), tres parejas, establecidas por el microcontrolador (PIC16F874A). Señales extras, la alimentación de los integrados, teniendo como entrada un adaptador de 18V DC y 1 A, Pasando por un regulador de voltaje 7815, para establecerlo en 15V DC, que alimenta la unidad IRAMS, y luego por otro regulador pero en este caso de 5V el 7805, para alimentar el microcontrolador. Los circuitos adicionales, son la referencia del velocidad que la aplicara un potenciómetro, dos LEDs de visualización de estado del motor y dos interruptores que manejaran el estado del motor, prendido/apagado y dirección del mismo8.

8 Diseño del PCB ver Anexo 11

IEL2-1-05-35 72

CONCLUSIONES Al investigar los tipos de motores se pudo seleccionar un motor apropiado para la planta general, generando un modelo a partir de sus parámetros. Al plantear el modelo del motor de la forma de vectores en el espacio, se facilito el modelaje, que incluso se podría aplicar a otras maquinas asincrónicas. Al implementar un control vectorial de velocidad se tiene una precisión mayor al 90%, dependiendo de la carga. Es un control robusto, puesto que las pulsaciones de torque no son tan notorias. La estrategia de control es simple puesto que es de lazo abierto, pero permite un control eficiente de velocidad en el motor usando el principio físico de los flujos inducidos. Para la aplicación específica el control es ideal, puesto que no se hace necesario un nivel alto de precisión, pero sí, un buen desempeño dinámico, en especial cuanto a torque. El control de velocidad tiene un error dependiendo de la carga aplicada al motor, tomando un valor menor al 10%. El margen de torque es bueno para velocidades menores a la nominal. La implementación del sistema, aunque es corta presenta gran dificultad debido al manejo de circuitos digitales y análogos, el trabajo con dispositivos de potencia compromete la implementación del sistema. El error en la implementación, se debe a una sobre-corriente por tierra, se cuya causa raíz es modulo de potencia ya que el bloque digital fue probado obteniendo resultados satisfactorios, logrando la modulación necesaria para la aplicación. Se estableció que el circuito debe tener una tierra común puesto que en el “driver”, todos los voltajes, de alta tensión y baja, están referenciados a una tierra común, la causa de sobre-corriente, puede estar ocasionada por la ausencia de una resistencia en la terminal negativa de cada inversor logrando bajar la corriente.

IEL2-1-05-35 73

BIBLIOGRAFIA

• E. Fitzgerald, Electric Machinery, first edition, 1952.

• E.R. Benedict, T.A. Lipo, Improved PWM Modulation for a Permanent-Split Capacitor Motor, University of Wisconsin-Madison, 2000.

• Joachim Holtz. Sensorless control of induction motors drives. IEEE, Electrical machines and drives group, University of Wuppertal, Vol 90, Nº 8, Aug. 200, pp 1359-1394.

• Leander W. Matsh, Máquinas Electromecánicas y Electromagnética, 1ª edición, 1974.

• LM Photonics Ltd, Induction Motor Control Theory, 2002.

• Microchip Technology Inc., AN887, AC Induction Motor Fundamentals, 2003, 24 páginas.

• Muhammand H. Rashid. Electrónica de Potencia. Pearson Educación. 2 edición, 1995.

• S.A. Nasar, L.E. Unnewehr, Electromecánica y máquinas eléctricas. Editorial Limusa, 1 Edición, 1982.

• Tw in City Fan Companies TCF, Single Phase AC induction motors Squirrel Cage motors, 1999, 10 páginas.

IEL2-1-05-35 74

ANEXOS

Anexo 1. Señales eléctricas comportamiento modelo motor.

Figura A1. Voltajes principal y auxiliar del motor.

Figura A2. Corrientes principal y auxiliar, con entrada de torque tipo rampa en t = 1.

IEL2-1-05-35 75

Anexo 2. Señales mecánicas comportamiento modelo motor

Figura A3. Torques de carga y electro-magnético.

Figura A4. Velocidad del motor en rpm.

Anexo 3. Simulación velocidad y torque, modelo de driver y motor unidos.

IEL2-1-05-35 76

Figura A5. Velocidad y torque, modelo driver- motor

IEL2-1-05-35 77

Anexo 4. Simulación rectificador Se implementa este bloque con las siguientes características: Fuente de entrada 110VAC

Capacitor filtro 4000µF

Resistencia de carga 20Ω

Señales de entrada y salida

Figura A6. Señal de entrada bloque, señal rectificada.

IEL2-1-05-35 78

Señal rectificada de voltaje:

Figura A7. Ripple de la señal rectificada

Señal de corriente en el rectificador:

Figura A8. Señales de corriente a través de los diodos D2 y D4.

IEL2-1-05-35 79

Anexo 5. Inversor monofásico Salida de voltaje y corriente:

Figura A9. Señales de salida inversor y señal inicial de voltaje.

IEL2-1-05-35 80

Anexo 6. Puente inversor trifásico. Voltajes para cada fase

Figura A10. Voltajes Va, Vb y Vc a la salida del inversor trifásico.

IEL2-1-05-35 81

Voltajes para cada fase del motor Vmain = Va-Vc, Vaux = Vb -Vc

Figura A11. Voltajes aplicados a los embobinados del motor.

IEL2-1-05-35 82

Corrientes principal y auxiliar, funcionamiento dirección normal Iaux adelanta Imain.

Figura A12. Corrientes de los embobinados. Funcionamiento dirección normal

Corrientes principal y auxiliar, funcionamiento inverso, Imain adelanta Iaux.

Figura A13. Corrientes de los embobinados. Funcionamiento dirección inversa

IEL2-1-05-35 83

Anexo 7. Salida del circuito rectificador Se tomaron los siguientes valores:

Vs 110V 60Hz Rs 1mΩ Ls 1Mh Rdc 1µΩ Simulación:

Figura A14. Simulación Rectificador de onda completo.

Mediante Pspice se simuló el circuito agregando el filtro C y una resistencia de carga:

Rload 470Ω Cd 370µF

Figura A15. Simulación rectificador de onda completo con filtro y carga.

Time 0s 10ms 20ms 30ms 40ms 50ms 60ms 70ms 80ms 90ms 100ms

V(5)- V(6 ) V(1) -120V

-80V

-40V

-0V

40V

80V

120V

Time

0s 10m

s 20ms 30m

s 40ms 50m

s 60ms 70m

s 80ms 90m

s 100ms V(1

) V(5)- V(6)

-200V

0V

200V

I(RLOAD)

750mA

800mA

850mA

900mA

SEL>>

IEL2-1-05-35 84

Anexo 8. Esquemático unidad inversor trifásico IRAMS10UP60A

Figura A16. Esquemático IRAMS10UP60A,

tomado de www.irf.com

IEL2-1-05-35 85

Anexo 9. Especificaciones de microcontrolador familia PIC16F87XX

Tabla A1. Características de la familia de microprocesadores PIC16F87,

tomado de www.microchip.com.

IEL2-1-05-35 86

Anexo10. Programa del microcontrolador

;*************************************************************************************************** ;*************************************************************************************************** ;---------------------------------------------------------------- #INCLUDE <P16F874A.INC> ;---------------------------------------------------------------- ;Bits de configuración ;Oscilador : HS ;Watchdog timer : off ;Power up timer : on ;Brown out detect : on ;Code protect : off ;---------------------------------------------------------------- ;Registro STATUS 1C Bank 0 3C Bank 1 ;---------------------------------------------------------------- ; Puerto B: Bit1 Selección de dirección ; Bit2 Motor arranque/parada ; Bit5 Led indicación ON/OFF ; Bit4 Led indicador dirección ; Puerto C: Bit0 .. Bit5 Salidas De PWM ; Puerto A: Bit0 Entrada analoga para referencia de velocidad ;---------------------------------------------------------------- ;*************************************************************************************************** ;--------------------------------------------------------------------------------------- ;Frecuencia de oscilación #DEFINE OSCILLATOR D'20000000' ;--------------------------------------------------------------------------------------- #DEFINE TIMER0_PRESCALE D'128' #DEFINE TABLA_SENO_ENTRIES D'19' ;*************************************************************************************************** ;Puertos y bits ;*************************************************************************************************** #define PUERTO_PIN PORTB #define BIT_ON_OFF 2 #define BIT_DIR 1 #define LED_ON_OFF 5 #define LED_DIRECCION 4 ;Definición de bits en BANDERAS #DEFINE MOTOR_FREQ_COUNTER 0 #DEFINE OFFSET1_FLAG 1 #DEFINE OFFSET2_FLAG 2 #DEFINE OFFSET3_FLAG 3 ;Definición de bits en BAND_IND #define RUN_STOP 0 #define FWD_REV 1 #define DEBOUNCE 2 #define KEY_RS 4 #define KEY_FR 5 #define KEY_PRESSED 6 ;Definición de bits en BANDERA1 #define PWM_FIRST 0 #define PWM_SECOND 1 #define PWM_THIRD 3 #define PWM_NEW_CYCLE 4 #DEFINE DELAY_COUNT1 0XFF #DEFINE DELAY_COUNT2 0XFF #define PUERTO_PWM PORTC #define PWM0_PIN 0 #define PWM1_PIN 1 #define PWM2_PIN 2 #define PWM3_PIN 3 #define PWM4_PIN 4 #define PWM5_PIN 5 ;--------------------------------------------------------------------------------------- ; UDATA 20h W_TEMP equ 0x20 ;Registro para guardar W mientras interrupción STATUS_TEMP equ 0x21 ;Registro para guardar STATUS mientras interrupción BANDERAS equ 0x22 ;Banderas BAND_IND equ 0x23 BANDERA1 equ 0x24 TEMP_LOC equ 0x25 ;Registros temporales TEMP_LOC_1 equ 0x26 TEMP_LOC_2 equ 0x27 NO_1_LSB equ 0x28 ;NUMERATOR(LSB) AND QUOTIENT(LSB) OR MULTIPLIER(LSB) RESULT_LSB equ 0x29 ;RESULT OF MULTIPLICATION(LSB)/REMAINDER(LSB) RESULT_MSB equ 0x2A ;resULT OF MULTIPLICATION(MSB)/REMAINDER(MSB) NUEVA_FREQ equ 0x2C ;Nueva referencia de frecuencia FREQ_MOTOR equ 0x2D ;Guarda la frecuencia del motor TABLE_OFFSET1 equ 0x2E ;PHASE1 OFFSET TO THE SINE TABLE

IEL2-1-05-35 87

TABLE_OFFSET2 equ 0x2F ;PHASE2 OFFSET TO THE SINE TABLE TABLE_OFFSET3 equ 0x30 ;PHASE3 OFFSET TO THE SINE TABLE TABLA_SENO_RAM equ 0X31 ;SINE TABLE, 0x14 bytes PWM_PR_CH1_Buff equ 0x50 ;Priority definition on channels PWM_PR_CH2_Buff equ 0x51 PWM_PR_CH3_Buff equ 0x52 PWM1_DS_Buff equ 0x53 ;Duty cycle buffers PWM2_DS_Buff equ 0x54 PWM3_DS_Buff equ 0x55 PWM4_DS_Buff equ 0x56 ; Comienzo de programa ;*************************************************************************************************** org 0x000 goto START org 0X004 ;Localización del vector de interrupción goto ISR_INT ;ir a rutina de interrupción org 0x080 ;Localización programa principal START ;*************************************************************************************************** ;Inicialización de puertos y timers bsf STATUS,RP0 movlw 0X0E

movwf TRISB ;RB1-2 configurados como input de selecion y RB3 input de seleción referencia ;de velocidad

movlw 0X00 ;RB5-5 output salidas para leds de indicación movwf TRISC ;RC0-RC7 configuradas como output movlw 0xFF movwf TRISD ;Puerto D configurado como input entrada digital de selección de velocidad bcf TRISE,PSPMODE ;Configura puertoD como proposito general bcf STATUS,RP0 movlw b'00101010' ;Apaga PWM1,3,5 PWMs(activa bajas) al principio del ciclo movwf PUERTO_PWM ;y prende PWM0,2,4 Puerto C clrf PWM_PR_CH1_Buff ; clear registro 0x50 clrf PWM_PR_CH2_Buff ; clear registro 0x51 clrf PWM_PR_CH3_Buff ; clear registro 0x52 clrf PWM1_DS_Buff ; clear registro 0x53 clrf PWM2_DS_Buff ; clear registro 0x54 clrf PWM3_DS_Buff ; clear registro 0x55 clrf PWM4_DS_Buff ; clear registro 0x56 clrf BANDERAS ; Clear todas las banderas FLAGS 0x22 clrf BANDERA1 ; Clear todas banderas clrf BAND_IND ; Clear FLAGS 0x23 call PARAR_MOTOR ;Para el motor call COPIAR_TABLA_RAM ;Copia la tabla del seno de la memoria del programa a la RAM para

;acceso rápido ;****************************************************************** ;Inicialización de los registros del ADC ;****************************************************************** bcf STATUS,RP0 movlw 0X81 movwf ADCON0 ;Configura el ADC para FOSC/32prende el ADC, Seleciona canal 0 (AN0) bsf STATUS,RP0 movlw 0x02 ;Configura RA0-RA4 como entradas analogas, RA5-RA7 entradas digitales,

;justificado a izquierda movwf ADCON1 ;Referencia psitiva VDD referencia negativa VSS movlw 0X07 ;RA0-RA3 Input y RA4-RA7 Output movwf TRISA bcf STATUS,RP0 ;****************************************************************** ;TIMER1 Inicialización con preescalar - usado para establecer el tiempo de PWM ;****************************************************************** movlw b'00100001' ;Carga el T1CON con la palabra de control movwf T1CON ;Para TMR1 ON y el preescalar 1:4, reloj interno, PRENDE EL TIMER1 ;****************************************************************** ;TIMER0 Inicialización con preescalar - Usado para la aceleración y desaceleración ;****************************************************************** bsf STATUS,RP0 movlw b'10000110' ;prescala 1:128 movwf OPTION_REG ;PORTB Pull-ups desabilitadas, interrupción en flanco de bajada, ciclo

;de instrucción con el reloj interno ;la prescala es asignada al timer0 bcf STATUS,RP0 clrf INTCON ;Deshabilita todas las interrupciones y banderas asociadas clrf PIR1 ;Deshabilita todas las banderas bsf STATUS,RP0 clrf PIE1 ;Deshabilita interrupciones movlw 0X03 ;SET #POR AND #BOR FLAGS

IEL2-1-05-35 88

movwf PCON bcf STATUS,RP0 ;--------- ESPERAR btfss PUERTO_PIN,BIT_ON_OFF ;Espera que el motor se active PB2 goto ESPERAR ;*********************************************************************** call BIG_DELAY call BIG_DELAY ;*********************************************************************** call PRENDER_MOTOR_OTRA movlw 0x30 movwf NUEVA_FREQ ; pone frecuencia inicial de 0x30 call ACTUALIZAR_CICLOS_PWM ; Actualiza el ciclo de PWM con un nuevo valor call ORDENAR_PWMS call ACTUALIZA_TABLA_OFFSET ; Actualiza 3 OFFSETS call CALCULAR_NUEVA_VELOCIDAD bcf STATUS,RP0 bsf INTCON,PEIE ;PERIPHERAL INTERRUPTS ENABLE bsf INTCON,GIE ;GLOBAL INTERRUPT ENABLE ;****************************************************************** ;MAIN, Donde le programa realizara el ciclo principal ;****************************************************************** MAIN btfss BANDERAS,MOTOR_FREQ_COUNTER ;Existió un cambio de algún PWM? goto NO_ACTUALIZAR bcf BANDERAS,MOTOR_FREQ_COUNTER ;Limpia bandera call ACTUALIZAR_CICLOS_PWM ;Si, Actualizar los ciclos útiles con el nuevo valor call ORDENAR_PWMS call ACTUALIZA_TABLA_OFFSET ;Actualiza los 3 Offsets call CALCULAR_NUEVA_VELOCIDAD btfss ADCON0, GO ;Si la conversión esta completa bsf ADCON0, GO ;Comenzar una nueva conversión NO_ACTUALIZAR btfsc PIR1,ADIF ;Existió una interrupción del ADC? call ADC_LISTO ;Si - Llama conversión call VERIFICACION_PINES ;Chequea cambio de interruptores call ACCION_PIN ;Toma acción sobre interruptores goto MAIN ;GO BACK TO MAIN LOOP ;****************************************************************** ;Rutina de Interrupción ;****************************************************************** ISR_INT movwf W_TEMP ;Copia W a un registro temporal swapf STATUS,W movwf STATUS_TEMP ;Salva STATUS en un registro temporal bcf STATUS,RP0 btfsc PIR1,TMR1IF ;Interrupción de OverFlow del timer1? goto TIMER1_OVERFLOW ;Si - Interrupción para la actualización TMR1 con base en los bits de selección de velocidad btfsc INTCON,T0IF ;Interrupción de OverFlow del timer0? goto TIMER0_OVERFLOW ;Si - Interrupción para actualización de PWM SACAR_W ;Regresa los valores W y STATUS salvados previamente swapf STATUS_TEMP,W ; movwf STATUS ;Restaura el registro de STATUS de W swapf W_TEMP,F ; swapf W_TEMP,W ;Restaura el W original afectando STATUS RETFIE ;Regresa de la interrupción ;****************************************************************** TIMER1_OVERFLOW ;Rutina de interrupción para el Timer1 bcf PIR1,TMR1IF ;Limpia TMR1IF para siguiente interrupción ;--- btfss BANDERA1,PWM_FIRST goto ENCARGARSE_SEGUNDA_PWM btfsc PWM_PR_CH1_Buff,0 bsf PUERTO_PWM,PWM1_PIN ;PWM1 es activo bajo btfsc PWM_PR_CH1_Buff,1 bsf PUERTO_PWM,PWM3_PIN ;PWM3 es activo bajo btfsc PWM_PR_CH1_Buff,2 bsf PUERTO_PWM,PWM5_PIN ;PWM5 es activo bajo btfsc PWM_PR_CH1_Buff,0 bcf PUERTO_PWM,PWM0_PIN ;PWM0 es activo bajo btfsc PWM_PR_CH1_Buff,1 bcf PUERTO_PWM,PWM2_PIN ;PWM2 es activo bajo btfsc PWM_PR_CH1_Buff,2 bcf PUERTO_PWM,PWM4_PIN ;PWM4 es activo bajo bcf BANDERA1,PWM_FIRST movlw 0xFF movwf TMR1H bsf BANDERA1,PWM_SECOND

IEL2-1-05-35 89

comf PWM2_DS_Buff,W movwf TMR1L btfss STATUS,Z goto SACAR_W ;--- ENCARGARSE_SEGUNDA_PWM btfss BANDERA1,PWM_SECOND goto ENCARGARSE_TERCERA_PWM btfsc PWM_PR_CH2_Buff,0 bsf PUERTO_PWM,PWM1_PIN ;PWM1 es activo bajo btfsc PWM_PR_CH2_Buff,1 bsf PUERTO_PWM,PWM3_PIN ;PWM3 es activo bajo btfsc PWM_PR_CH2_Buff,2 bsf PUERTO_PWM,PWM5_PIN ;PWM5 es activo bajo btfsc PWM_PR_CH2_Buff,0 bcf PUERTO_PWM,PWM0_PIN ;PWM0 es activo bajo btfsc PWM_PR_CH2_Buff,1 bcf PUERTO_PWM,PWM2_PIN ;PWM2 es activo bajo btfsc PWM_PR_CH2_Buff,2 bcf PUERTO_PWM,PWM4_PIN ;PWM4 es activo bajo bcf BANDERA1,PWM_SECOND movlw 0xFF movwf TMR1H bsf BANDERA1,PWM_THIRD comf PWM3_DS_Buff,W movwf TMR1L btfss STATUS,Z goto SACAR_W ;--- ENCARGARSE_TERCERA_PWM btfss BANDERA1,PWM_THIRD goto ENCARGARSE_PROXIMO_CICLO btfsc PWM_PR_CH3_Buff,0 bsf PUERTO_PWM,PWM1_PIN ;PWM1 es activo bajo btfsc PWM_PR_CH3_Buff,1 bsf PUERTO_PWM,PWM3_PIN ;PWM3 es activo bajo btfsc PWM_PR_CH3_Buff,2 bsf PUERTO_PWM,PWM5_PIN ;PWM5 es activo bajo btfsc PWM_PR_CH3_Buff,0 bcf PUERTO_PWM,PWM0_PIN ;PWM0 es activo bajo btfsc PWM_PR_CH3_Buff,1 bcf PUERTO_PWM,PWM2_PIN ;PWM2 es activo bajo btfsc PWM_PR_CH3_Buff,2 bcf PUERTO_PWM,PWM4_PIN ;PWM4 es activo bajo bcf BANDERA1,PWM_THIRD movlw 0xFF movwf TMR1H bsf BANDERA1,PWM_NEW_CYCLE comf PWM4_DS_Buff,W movwf TMR1L btfss STATUS,Z goto SACAR_W ;--- ENCARGARSE_PROXIMO_CICLO movlw b'00111111' ;Apaga todas las PWMs(activo bajo) movwf PUERTO_PWM comf PWM1_DS_Buff,W movwf TMR1L movlw 0xFF movwf TMR1H bcf BANDERA1,PWM_NEW_CYCLE bsf BANDERA1,PWM_FIRST movlw b'00010101' ;Prende PWM1,3,5 PWMs(activo bajo) al principio del ciclo movwf PUERTO_PWM goto SACAR_W ;****************************************************************** TIMER0_OVERFLOW ; Rutina de interrupcióndel timer0 movf FREQ_MOTOR,W ; Carga el byte bajo del comando de velocidad a TMR0L movwf TMR0 bsf BANDERAS,MOTOR_FREQ_COUNTER bcf INTCON,T0IF ;Limpia T0IF goto SACAR_W ;***************************************************************** ADC_LISTO ;Interrupción ADC bcf PIR1,ADIF ;Bandera ADIF se limpia para la siguiente interrupción movf ADRESH,W ;Fuente análoga, Lee resultado de conversión ADC movwf NUEVA_FREQ ;CHECK FOR LOWER AND UPPER ALLOWED LIMIT OF FREQ. LIMITES sublw 0X30 ;Frecuencia mínima 5Hz (x4) btfss STATUS,C ;Es la entrada mayor que el limite inferior goto CK_LIMITE_SUPERIOR ;Si - Chequeo limite superior movlw 0X30 ;No - Poner frecuencia en limite inferior - 5HZ (X4) movwf NUEVA_FREQ return CK_LIMITE_SUPERIOR

IEL2-1-05-35 90

movlw 0XD0 subwf NEW_FREQ,W btfss STATUS,C ;Es la entrada mayor que el limite superior? return ;No - Regrese de la interrupción movlw 0XD0 ;Si - Poner la frecuencia al limite superior - 60HZ (X4) movwf NUEVA_FREQ return ;************************************************************************* ;Rutina de actualización de los ciclos de PWM de acuerdo con las tablas de OFFSET ;Escala el valor de PWM de la tabla con base en la frecuencia para mantener V/F ;Constante y cargarlas en el registro apropiado dependiendo de los parámetros ;************************************************************************* ACTUALIZAR_CICLOS_PWM movlw LOW TABLA_SENO_RAM movwf FSR ;Dirección base de la tabla del seno en la RAM es cargada a FSR movf TABLE_OFFSET1,W ;TABLE_OFFSET1 es copiada a W addwf FSR,F ;Dirección a ser leída es igual a la dirección base de la tabla +

;TABLE_OFFSET1 BANKISEL TABLA_SENO_RAM movf INDF,W ;Copia el valor de la tabla del seno, apuntada por FSR, a W btfsc STATUS,Z ;Chequea el valor es cero? goto PWM1_ES_0 ;Si, goto PWM1_ES_0 movwf NO_1_LSB ;No, Valor de la tabla del seno X SET_FREQ para escalar el valor de la

;tabla basandose en el parametro de frecuencia call MUL_8X8 ;LLama la rutina de multiplicación de 8x8 bit movf RESULT_MSB,W ;8 MSB del resultado de 16 BIT es guardado movwf TEMP_LOC ;En TEMP_LOC - Que representa el ciclo util de PWM para la fase 1 goto ACTUALIZAR_PWM2 ;Va a actualizar el cilco util para la fase 2 PWM1_ES_0 clrf TEMP_LOC ;Si es cero, limpia el valor del ciclo util para la fase 1 ACTUALIZAR_PWM2 movlw LOW (TABLA_SENO_RAM) movwf FSR ;Dirección base de la tabla del seno en la RAM es cargada a FSR movf TABLE_OFFSET2,W ;TABLE_OFFSET2 es copiada a W addwf FSR,F ;Direccion a ser leida=Direccion base de la tabla

;TABLE_OFFSET2 BANKISEL TABLA_SENO_RAM movf INDF,W ;Copia el valor de la tabla del seno, apuntada por FSR, a W btfsc STATUS,Z ;Chequea el valor es cero? goto PWM2_ES_0 ;Si, goto PWM2_ES_0 movwf NO_1_LSB ;No, Valor de la tabla del seno X SET_FREQ para escalar el

;valor de la tabla basandose en el parametro de frecuencia call MUL_8X8 ;LLama la rutina de multiplicación de 8x8 bit movf RESULT_MSB,W ;8 MSB del resultado de 16 BIT es guardado movwf TEMP_LOC_1 ;En TEMP_LOC_1 - Que representa el ciclo util de PWM para la

;fase 2 goto ACTUALIZAR_PWM3 ;Va a actualizar el ciclo util de la fase 3 PWM2_ES_0 clrf TEMP_LOC_1 ;Si es cero, limpia el valor del ciclo util para la fase 2 ACTUALIZAR_PWM3 movlw LOW TABLA_SENO_RAM movwf FSR ;Dirección base de la tabla del seno en la RAM es cargada a FSR BANKSEL TABLE_OFFSET3 movf TABLE_OFFSET3,W ;TABLE_OFFSET3 es copiada a W addwf FSR,F ;Direccion a ser leida=Direccion base de la tabla +

;TABLE_OFFSET3 BANKISEL TABLA_SENO_RAM movf INDF,W ;Copia el valor de la tabla del seno, apuntada por FSR, a W btfsc STATUS,Z ;Chequea el valor es cero? goto PWM3_ES_0 ;Si, goto PWM3_ES_0 movwf NO_1_LSB ;No, Valor de la tabla del seno X SET_FREQ para escalar el

;valor de la tabla basandose en el parametro de frecuencia call MUL_8X8 ;LLama la rutina de multiplicación de 8x8 bit movf RESULT_MSB,W ;8 MSB del resultado de 16 BIT es guardado movwf TEMP_LOC_2 ;En TEMP_LOC_2 - Que representa el ciclo util de PWM para la fase 3 goto SET_PWM12 ;Va para chequear la dirección de rotación requerida PWM3_ES_0 clrf TEMP_LOC_2 ;Si es cero, limpia el valor del ciclo util para la fase 3 SET_PWM12 movf TEMP_LOC,W movwf PWM1_DS_Buff movf TEMP_LOC_1,W ;CCPR1L AND CCPR2L RESPECTIVELY FOR movwf PWM2_DS_Buff movf TEMP_LOC_2,W movwf PWM3_DS_Buff RETURN ;******************************************************************************* ;Esta rutina actualiza los apuntadores de OFFSET de la tabla despues de cada acceso ;******************************************************************************* ACTUALIZA_TABLA_OFFSET bcf STATUS,RP0 btfss BANDERAS,OFFSET1_FLAG ;Si esta activo incrementa en la tabla

IEL2-1-05-35 91

goto DECREMENTAR_OFFSET1 movlw (TABLE_SENO__ENTRIES-1) ;Chequea por el ultimo valor en la tabla SUBWF TABLE_OFFSET1,W btfsc STATUS,C goto BORRAR_BANDERA_OFFSET1 INCF TABLE_OFFSET1,F ;Incrementa OFFSET1 goto UPDATE_OFFSET2 BORRAR_BANDERA_OFFSET1 bcf BANDERAS,OFFSET1_FLAG DECREMENTAR_OFFSET1 DECFSZ TABLE_OFFSET1,F ;Decrementa OFFSET1 goto ACTUALIZA_OFFSET2 bsf BANDERAS,OFFSET1_FLAG ACTUALIZA_OFFSET2 btfss BANDERAS,OFFSET2_FLAG ;Si esta activo incrementa en la tabla goto DECREMENTAR_OFFSET2 movlw (TABLA_SENO_ENTRIES-1) ;Chequea por el ultimo valor en la tabla SUBWF TABLE_OFFSET2,W btfsc STATUS,C goto BORRAR_BANDERA_OFFSET2 INCF TABLE_OFFSET2,F ;Incrementa OFFSET2 goto UPDATE_OFFSET3 BORRAR_BANDERA_OFFSET2 bcf BANDERAS,OFFSET2_FLAG DECREMENTAR_OFFSET2 DECFSZ TABLE_OFFSET2,F ;Decrementa OFFSET2 goto ACTUALIZA_OFFSET3 bsf BANDERAS,OFFSET2_FLAG ACTUALIZA_OFFSET3 btfss BANDERAS,OFFSET3_FLAG ;Si esta activo incrementa en la tabla goto DECREMENTAR_OFFSET3 movlw (TABLA_SENO_ENTRIES-1) ;CHECK FOR THE LAST VALUE ON THE TABLE SUBWF TABLE_OFFSET3,W btfsc STATUS,C goto BORRAR_BANDERA_OFFSET3 INCF TABLE_OFFSET3,F ;Incrementa OFFSET3 RETURN BORRAR_BANDERA_OFFSET3 bcf BANDERAS,OFFSET3_FLAG DECREMENTAR_OFFSET3 DECFSZ TABLE_OFFSET3,F ;Decrementa OFFSET3 RETURN bsf BANDERAS,OFFSET3_FLAG RETURN ;******************************************************************************* CALCULAR_NUEVA_VELOCIDAD movf NUEVA_FREQ,W movwf FREQ_MOTOR movlw 0x22 addwf FREQ_MOTOR ,F bcf STATUS,C rrf FREQ_MOTOR ,F bcf STATUS,C rrf FREQ_MOTOR ,F movlw 0xB5 addwf FREQ_MOTOR ,F return ;************************************************************************* ;Las PWM son ordenadas de menor a mayor ciclo util ORDENAR_PWMS movlw 0x1 movwf PWM_PR_CH1_Buff movlw 0x2 movwf PWM_PR_CH2_Buff movlw 0x4 movwf PWM_PR_CH3_Buff movf PWM1_DS_Buff,W subwf PWM2_DS_Buff,W btfss STATUS,C goto INTER_1_2 goto VERIFICA_2_3 INTER_1_2 ;Intercambia ciclos útiles en 1 y 2 movf PWM1_DS_Buff,W movwf TEMP_LOC movf PWM2_DS_Buff,W movwf PWM1_DS_Buff movf TEMP_LOC,W movwf PWM2_DS_Buff ;Intercambia salidas PWM movf PWM_PR_CH1_Buff,W movwf TEMP_LOC movf PWM_PR_CH2_Buff,W

IEL2-1-05-35 92

movwf PWM_PR_CH1_Buff movf TEMP_LOC,W movwf PWM_PR_CH2_Buff VERIFICA_2_3 ;Intercambia ciclos útiles en 2 Y 3 movf PWM2_DS_Buff,W subwf PWM3_DS_Buff,W btfss STATUS,C goto INTER_2_3 goto VERIFICA_1_2_OTRA INTER_2_3 movf PWM2_DS_Buff,W movwf TEMP_LOC movf PWM3_DS_Buff,W movwf PWM2_DS_Buff movf TEMP_LOC,W movwf PWM3_DS_Buff ;Intercambia ciclos útiles en 1 y 2 movf PWM_PR_CH2_Buff,W movwf TEMP_LOC movf PWM_PR_CH3_Buff,W movwf PWM_PR_CH2_Buff movf TEMP_LOC,W movwf PWM_PR_CH3_Buff VERIFICA_1_2_OTRA ;Intercambia ciclos útiles en 1 y 2 movf PWM1_DS_Buff,W subwf PWM2_DS_Buff,W btfss STATUS,C goto INTER_1_2_OTRA goto CAL_RECARGA_TIMER INTER_1_2_OTRA movf PWM1_DS_Buff,W movwf TEMP_LOC movf PWM2_DS_Buff,W movwf PWM1_DS_Buff movf TEMP_LOC,W movwf PWM2_DS_Buff ;Intercambia salidas de PWM movf PWM_PR_CH1_Buff,W movwf TEMP_LOC movf PWM_PR_CH2_Buff,W movwf PWM_PR_CH1_Buff movf TEMP_LOC,W movwf PWM_PR_CH2_Buff CAL_RECARGA_TIMER movlw 0x9C ;Corresponde a 8KHz con el Timer1 en prescala 1:4 movwf PWM4_DS_Buff movf PWM3_DS_Buff,W subwf PWM4_DS_Buff,F movf PWM2_DS_Buff,W subwf PWM3_DS_Buff,F movf PWM1_DS_Buff,W subwf PWM2_DS_Buff,F RETURN ;******************************************************************************* ;Chequea el estado de los pines de ON/OFF y de dirección ;******************************************************************************* VERIFICACION_PINES btfss PUERTO_PIN,BIT_ON_OFF ;Revisa la posición del RB2 '1' prendido '0' apagado goto VERIF_OFF ;Revisa si esta apagado btfsc BAND_IND,KEY_RS ;Revisa condición anterior del motor, estaba predndido? goto VERIFICA_PIN_DIRECCION ;si,Va a revisar la otra KEY bsf BAND_IND,KEY_PRESSED ;no, Ocurrio una acción bsf BAND_IND,RUN_STOP ;Acción ON/OFF return VERIF_OFF btfss BAND_IND,KEY_RS ;Apagado, Revisa el estado anterior del motor, estaba

;prendido? return ;no, se sale bsf BAND_IND,KEY_PRESSED ;si, Ocurrio una acción bsf BAND_IND,RUN_STOP ;Accion en ON/OFF return VERIFICA_PIN_DIRECCION btfss PUERTO_PIN,BIT_DIR ;Se ha cambiado la dirección goto VERIF_DIR ;Chequear dirección (0) btfsc BAND_IND,KEY_FR ;Chequea posición actual return ;Se mantiene en la misma dirección bsf BAND_IND,KEY_PRESSED ;Ocurrio una acción bsf BAND_IND,FWD_REV ;Accion cambio de dirección return

IEL2-1-05-35 93

VERIF_DIR btfss BAND_IND,KEY_FR ;Chequea dirección actual return bsf BAND_IND,KEY_PRESSED ;Ocurrio una acción bsf BAND_IND,FWD_REV ;Acción de cambio de dirección return ;******************************************************************************* ;La rutina toma una acción dependiendo de las entradas de selección que hallan ;cambiado. RB2 Encendido / apagado motor. RB1 Dirección del motor ;******************************************************************************* ACCION_PIN btfss BAND_IND,KEY_PRESSED ;Ocurrio una acción? return ;no btfss BAND_IND,RUN_STOP ;Si, fue RUN/STOP? goto VERIF_FWD_REV btfsc BAND_IND,KEY_RS ;Si, Cual era el estado anterior? goto PARAR_MOTOR_TOTAL ;Prendido, entonces apagar call RUN_MOTOR_AGAIN ;Apagado, entonces prender bcf BAND_IND,KEY_PRESSED ;Limpia banderas the Flag bcf BAND_IND,RUN_STOP return PARAR_MOTOR_TOTAL call PARAR_MOTOR ;Was the previous state a RUN?, Then stop the motor bcf BAND_IND,KEY_PRESSED bcf BAND_IND,KEY_RS ;Limpia banderas bcf PUERTO_PIN,LED_ON_OFF ;Apaga led indicando motor detenido return VERIF_FWD_REV btfss BAND_IND,FWD_REV ;Ocurrio acción en FWD/REV? return call PARAR_MOTOR ;Para antes de invertir call BIG_DELAY ;Retardo para inversion de dirección call BIG_DELAY call PRENDER_MOTOR_OTRA ;Arranca motor en dirección inversa bcf BAND_IND,KEY_PRESSED ;Clear Flags bcf BAND_IND,FWD_REV return ;******************************************************************************* ;La rutina para el motor poniendo el ciclo util de las PWM en 0%. También deshabilita ;la interrupción para que el motor se mantenga en ese estado ;******************************************************************************* PARAR_MOTOR movlw b'00111111' ;Apaga PWM 1, 3, 5 al comienzo del ciclo movwf PUERTO_PWM bsf STATUS,RP0 ;Bank 1 bcf PIE1,TMR1IE ;Deshabilita interrupcion de overflow timer1 bcf STATUS,RP0 ;Bank 0 bcf INTCON,T0IE ;Deshabilita nterrupción de overflow timer0 bcf BANDERAS,MOTOR_FREQ_COUNTER ;clear bit 0 del registro FLAGS 0x22 clrf TABLE_OFFSET1 ;Clear registro 0x2E clrf TABLE_OFFSET2 ;Clear registro 0x2F clrf TABLE_OFFSET3 ;Clear registro 0x30 bcf BAND_IND,KEY_RS ;Limpia flag KEY_RS para mostrar que el motor esta apgado bcf PUERTO_PIN,LED_ON_OFF ;Apaga el led para indicar que el motor esta apagado RETURN ;******************************************************************************* ;Esta rutina prende el motor de una parada previa con los parámetros del motor inicializados ;******************************************************************************* PRENDER_MOTOR_OTRA call PARAMETROS_MOTOR bsf BAND_IND,KEY_RS ;Pone flag KEY_RS para mostrar que el motor se prende bsf STATUS,RP0 bsf PIE1,TMR1IE ;Habilita interrupción timer1 bcf STATUS,RP0 bsf INTCON,T0IE ;Habilita interrupción de timer0 bsf PUERTO_PIN,LED_ON_OFF ;Prende el led para indicar que el motor esta prendido RETURN ;******************************************************************************* ;Esta rutina inicializa los parámetros del motor ;******************************************************************************* PARAMETROS_MOTOR movlw 0X012 ;INITIALIZE THE TABLE OFFSET TO 3 REGISTERS movwf TABLE_OFFSET1 ;TO FORM 0-120-240 DEGREES movlw 0X00 movwf TABLE_OFFSET2 movlw 0X08 movwf TABLE_OFFSET3

IEL2-1-05-35 94

bcf BANDERAS,OFFSET1_FLAG bsf BANDERAS,OFFSET2_FLAG btfsc PUERTO_PIN,BIT_DIR ; Chequea cambio de direcciòn goto INICIALIZA_DIR_INVERSA bsf BANDERAS,OFFSET3_FLAG ;Iniciliza Offset3 bcf BAND_IND,KEY_FR ;Pone bandera dirección '0' fwd bcf PUERTO_PIN,LED_DIRECCION ;Apaga led para indicar dirección goto INIT_MOT_FREQ INICIALIZA_DIR_INVERSA bcf BANDERAS,OFFSET3_FLAG bsf BAND_IND,KEY_FR ;Pone bandera de dirección '1' rev bcf PUERTO_PIN,LED_DIRECCION ;Prende led para indicar dirección INIT_MOT_FREQ movlw 0XB1 movwf TMR0 ; Carga el timer0 con 0xB1 bsf BANDERAS,MOTOR_FREQ_COUNTER RETURN ;******************************************************************************* ;ROUTINE FOR 8*8 BIT MULTIPLICAION ;******************************************************************************* MUL_8X8 clrf RESULT_MSB clrf RESULT_LSB movf NEW_FREQ,W ;Mueve el multiplicando al registro W bcf STATUS,C MULT 0 MULT 1 MULT 2 MULT 3 MULT 4 MULT 5 MULT 6 MULT 7 RETLW 0 ;******************************************************************************* ;Se copia los contenidos de una tabla de seno a posiciones en la RAM ;******************************************************************************* COPIAR_TABLA_RAM BANKSEL TABLA_SENO_RAM ; Crea un bnco de registros en RAM BANKISEL TABLA_SENO_RAM ; Va a la dirección apuntada por el registro 0x31 movlw LOW TABLA_SENO_RAM ; mueve a lo que apunta la parte baja de registro en W ; inicializa apuntador, direccionamiento indirecto movwf FSR ; apunta a la RAM movlw 0X13 movwf TEMP_LOC ; pone 0x13 en el registro 0x25 clrf TEMP_LOC_1 ; limpia registro 0x26 COPIAR_OTRA movlw HIGH TABLA_SENO movwf PCLATH movf TEMP_LOC_1,W call SINE_TABLE movwf INDF INCF TEMP_LOC_1,F INCF FSR,F DECFSZ TEMP_LOC,F goto COPIAR_OTRA movlw LOW TABLA_SENO_RAM movwf FSR RETURN ;******************************************************************************* ;Rutina de retardo ~38msec ;******************************************************************************* DELAY movlw DELAY_COUNT1 movwf TEMP_LOC DEC_TEMPORAL movlw DELAY_COUNT2 movwf TEMP_LOC_1 DEC_TEMPORAL1 DECFSZ TEMP_LOC_1,F goto DEC_TEMPORAL1 DECFSZ TEMP_LOC,F goto DEC_TEMPORAL RETURN B_DELAY call DELAY call DELAY call DELAY call DELAY call DELAY call DELAY call DELAY call DELAY

IEL2-1-05-35 95

call DELAY call DELAY call DELAY return BIG_DELAY call B_DELAY call B_DELAY call B_DELAY call B_DELAY return ;Macro MULT MACRO BIT ;MACRO para multiplicación sin signo btfsc NO_1_LSB,BIT addwf RESULT_MSB,F RRF RESULT_MSB,F RRF RESULT_LSB,F ENDM ;Final macro multiplicación ;******************************************************************************* ;Ecuación usada para calcular las entradas a la tabla del seno, ENTRADAS = (SIN(ANGULO)+1)*FF/2 ;La tabla del seno tiene un valor correspondiente cada 10 grados eléctricos ;******************************************************************************* TABLE CODE 0X0005 TABLE_SENO addwf PCL,F RETLW .2 RETLW .4 RETLW .8 RETLW .16 RETLW .24 RETLW .34 RETLW .50 RETLW .64 RETLW .80 RETLW .96 RETLW .112 RETLW .128 RETLW .144 RETLW .156 RETLW .168 RETLW .178 RETLW .184 RETLW .188 RETLW .190 END

IEL2-1-05-35 96

Anexo11. Implementación PCB

Figura A17. Montaje sistema PCB.