Professional Documents
Culture Documents
Ambato Ecuador
Enero 2016
APROBACION DEL TUTOR
EL TUTOR
---------------------------------------------
i
AUTORIA
---------------------------------------------
CC: 1803181203
ii
DERECHOS DE AUTOR
Autorizo a la Universidad Tcnica de Ambato, para que haga uso de este trabajo de
Titulacin como un documento disponible para la lectura, consulta y procesos de
investigacin.
Cedo los derechos de mi Trabajo de Titulacin, con fines de difusin pblica, adems
autorizo su reproduccin dentro de las regulaciones de la Universidad.
---------------------------------------------
CC: 1803181203
iii
APROBACION DEL TRIBUNAL DE GRADO
La comisin Calificadora del presente trabajo conformada por los seores docentes: Ing.
Jos Vicente Morales Lozada, Mg., Ing. Edwin Morales P., Mg. e Ing. Mario Garca C.,
Mg., reviso y aprob el informe Final del Proyecto de Investigacin titulado
SISTEMA ELECTRNICO PARA EL CONTROL DE POSICIN ANGULAR
DEL EJE DE UN MOTOR TRIFSICO ASNCRONO, presentado por el seor
Vctor Alfonso Palacios Mera de acuerdo al numeral 9.1 de los Lineamientos Generales
para la aplicacin de Instructivos de las Modalidades de Titulacin de las Facultades de
la Universidad Tcnica de Ambato.
---------------------------------------------
-------------------------------------------- -------------------------------------------
iv
DEDICATORIA
v
AGRADECIMIENTOS
vi
NDICE DE GENERAL
AUTORIA ........................................................................................................................ ii
DEDICATORIA ............................................................................................................... v
AGRADECIMIENTOS ................................................................................................... vi
ABSTRACT.................................................................................................................... xv
CAPTULO I .................................................................................................................... 1
EL PROBLEMA ............................................................................................................... 1
vii
MARCO TERICO ......................................................................................................... 5
METODOLOGA ........................................................................................................... 17
viii
4.4. Recoleccin y anlisis de informacin sobre microcontroladores ........................ 32
4.4.1 Grabador o programador ....................................................................................... 35
4.5. Seleccin del motor para el proyecto .................................................................... 36
4.6. Seleccin del microcontrolador adecuado capaz de realizar el control del motor. 40
4.7. Recoleccin de informacin sobre la programacin en el microcontrolador
seleccionado. ................................................................................................................... 42
4.7.1 Software Mplab..................................................................................................... 47
4.8. Anlisis de la informacin tcnica para seleccionar los equipos en el sistema ..... 49
4.8.1 Variador de frecuencia .......................................................................................... 50
4.8.2 Motor de induccin ............................................................................................... 52
4.8.3 Encoder incremental ............................................................................................. 53
4.8.4 El microcontrolador .............................................................................................. 53
4.9. Diseo de las etapas para desarrollar el sistema de control de posicin angular
empleando la informacin tcnica. ................................................................................. 54
4.9.1 Acoplamiento del motor y el variador .................................................................. 54
4.9.2 Acoplamiento del motor y el encoder ................................................................... 55
4.9.3 Diseo del diagrama del Microcontrolador .......................................................... 55
4.9.4 Diseo del diagrama entre el encoder, el variador y el PIC. ................................ 56
4.10. Realizar las placas de los circuitos electrnicos para cada etapa de desarrollo .... 57
4.10.1 Placa de acoplamiento del motor y el variador ................................................... 57
4.10.2 Placa de acoplamiento del motor y el encoder ................................................... 57
4.10.3 Placa del Microcontrolador ................................................................................. 58
4.10.4 Circuito del grabador pickit3 y el entorno de grabacin. ................................... 58
4.11. Evaluacin y comprobacin del funcionamiento del prototipo............................. 59
4.12. Costo del proyecto. ................................................................................................ 61
CAPTULO IV ............................................................................................................... 62
Conclusiones ................................................................................................................... 62
Recomendaciones ........................................................................................................... 63
REFERENCIAS.............................................................................................................. 64
ANEXOS ........................................................................................................................ 66
ix
ANEXO A.- Datasheet del variador ............................................................................... 67
x
NDICE DE FIGURAS
xi
Figura 4.20 Variador de frecuencia LG LS IG5A ......................................................... 51
xii
NDICE DE TABLAS
xiii
RESUMEN
Este sistema est formado por tres etapas, la primera es el control de la velocidad
mediante la variacin de la frecuencia con la que trabaja el motor de induccin, la
segunda es la adquisicin y sensado de la seal anloga del motor. Y finalmente la
tercera etapa es el control de posicin angular mediante el microcontrolador.
Palabras clave
xiv
ABSTRACT
In this research project it describe the creation and implementation of a control system
for the angular position of induction motors know as squirrel cage motor, through the
use of a microcontroller PIC18F25K20, an incremental encoder and an inverter of
frequency. The implementation of this system uses control similar to the traditional
engines, but with additional details on the programming of the microcontroller to make
a suitable treatment of the signs.
This system consists of three stages, the first is the control of the speed by varying the
frequency of the induction motor works, the second is the acquisition and sensed of the
analog signal of the engine. And finally the third stage is the control of the angular
position by the microcontroller.
By controlling the angular position they constitute only two working positions for the
engine based on a graduated reference position.
Keywords
Control system, angular position, induction motor, squirrel cage motor, encoder,
microcontroller Pic, and inverter.
xv
GLOSARIO DE TERMINOS
MI.-Motor de induccin.
VI.-Instrumentos virtuales.
AI.-Entrada analgica.
AO.-Salida analgica.
Hz.-Frecuencia en hercios.
grabadas en su memoria
UARTS.-Chip de los sistemas digitales que permite convertir datos recibidos en forma
xvi
I2C.- Estndar que permite la comunicacin de gama alta entre microcontroladores,
xvii
INTRODUCCION
El proyecto se llev a cabo con el desarrollo de cinco captulos, los mimos que se
describen as:
Capitulo I.- Con el anlisis y planteamiento del problema, luego con la delimitacin de
contenidos, espacio y tiempo. Finalmente se realiza la justificacin del proyecto y se
plantea los objetivos
Captulo IV.- Tiene el desarrollo del proyecto punto por punto del diseo e
implementacin de un sistema de control de posicin angular para motores trifsicos
asncronos por medio del uso de un microcontrolador.
xviii
CAPTULO I
EL PROBLEMA
1.1. TEMA
Sistema electrnico para el control de posicin angular del eje de un motor trifsico
asncrono.
1
En nuestro pas regin an no se ha desarrollado una investigacin o proyecto que
permita el control de un eje en motores trifsicos asncronos por medio de variadores en
conjunto con el microcontrolador por lo que el sector productivo an carece de esta
tecnologa.
1.3. DELIMITACIN
DELIMITACIN DE CONTENIDOS
DELIMITACIN ESPACIAL
DELIMITACIN TEMPORAL
2
1.4. JUSTIFICACIN
Otro de los motivos que llevo al desarrollo de este proyecto, fue el inters y la necesidad
de contribuir al pas con los conocimientos en microcontroladores para el campo de la
industria, pues existe un sinnmero de empresas industriales que se podran beneficiar
de este proyecto.
Por otro lado, en el mbito didctico fue de gran ayuda para futuros proyectos de este
tipo en el que estn inmersos los motores de corriente alterna y los microcontroladores.
3
1.5. OBJETIVOS
4
CAPTULO II
MARCO TERICO
5
2.1.1 SISTEMAS ELECTRONICOS DIGITALES
Salidas. Las salidas son actuadores u otros dispositivos (tambin transductores) que
convierten las seales de corriente o voltaje en seales fsicamente tiles. [5]
6
Elementos activos de un circuito electrnico.
Los elementos activos de un circuito electrnico, son los que producen energa y se
denominan fuentes o generadores.
Las fuentes de corriente o las fuentes de tensin son ejemplos de elementos activos. Los
dispositivos activos proporcionan al circuito energa elctrica. [6]
Los elementos pasivos de un circuito electrnico, son los que utilizan la energa
elctrica durante su funcionamiento y se denominan consumidores o cargas, como:
resistencias, condensadores y bobinas. Un elemento pasivo no genera energa; o bien la
consume transformndola en calor. [6]
Microcontroladores.
7
Frecuentemente, estos dispositivos integrados pueden ser controlados por instrucciones
de procesadores especializados. [7]
Los circuitos de control son aquellos que mediante la adecuada operacin de una serie
de elementos electrnicos, nos darn una respuesta deseada en base a las necesidades y
a los requerimientos expresados en forma de instrucciones. Los circuitos de control
reciben y procesan la informacin de cualquier sistema industrial sobre las condiciones
del mismo. Esta informacin representa hechos tales como, posiciones mecnicas de
partes mviles, cmaras, dispositivos de medicin de distancia, velocidad, rpm, etc.
El circuito de control tiene la capacidad de tomar toda esta informacin emprica y
combinarla con la subministrada por el operador con el fin de tomar decisiones. Esta
informacin representa la respuesta deseada del sistema, es decir, el resultado esperado.
La decisin que toma el circuito de control no es una elaboracin propia del sistema,
solamente es el reflejo de los deseos del diseador, quien previo todas las posibles
condiciones de entrada, ha elaborado la lgica necesaria, para que las condiciones de
salida sean la apropiadas, de ah que la tarea de un diseador es llevar a cabo la
integracin de todos los elementos que intervienen en un circuito de control de una
manera segura y eficiente. [8]
Los circuitos de control de cualquier ndole, se pueden representar por tres partes
principales de las cuales podemos resaltar a continuacin:
8
Lgica del circuito: La seccin lgica es aquella encargada de la toma de decisiones del
sistema, de acuerdo con la informacin adquirida por los elementos de entrada, y de
esta manera proveer una mejor respuesta posible a los elementos de salida. La seccin
de lgica de un circuito emplea diferente tcnicas tales como control con contactos,
control digital, control por PLC y control por microcontroladores.
Elementos de salida: Los elementos de salida son aquellos elementos que comprende a
los actuadores. Los elementos de salida toman las seales de salida de la parte lgica del
circuito y la transforman a forma utilizables tales como la visualizacin de pantalla. [8]
9
2.1.4 SISTEMAS DE ADQUISICIN DE DATOS
Un sistema de adquisicin de datos es el instrumento que nos sirve para obtener datos
de velocidad, posicin o distancia. Estos datos pueden estar presentados en forma
digital o analgica. Consiste, en tomar un conjunto de seales fsicas, convertirlas en
tensiones elctricas y digitalizarlas de manera que se puedan procesar en un
microcontrolador. [10]
Seales Digitales
Las seales digitales son seales cuantificadas; slo varan a intervalos (escalonados)
determinados. O sea, entre un intervalo y el siguiente no pueden tomar valores
intermedios. Cuando la seal digital slo puede tomar dos estados diferentes, se
denominan seal binaria (1, 0); este es el tipo de seal digital, o informacin, con que
operan los sistemas digitales, como se indica en la figura 2.2. [10]
10
Seales Analgicas
a) Sensores o transductores
Un sensor es un dispositivo que convierte una propiedad fsica o fenmeno en una seal
elctrica correspondiente medible. La capacidad de un sistema de adquisicin de datos
para medir los distintos fenmenos depende de los transductores para convertir las
seales de los fenmenos fsicos mensurables en la adquisicin de datos por hardware.
[10]
11
b) Acondicionamiento de la seal
Amplificacin.
Excitacin.
- Filtrado.
Multiplexado. [10]
b) Tratamiento de la seal
En esta etapa la seal adquirida debe ser sometida a convertidores analgicos - digital
(A/D) y digital - analgico (D/A), para de esta manera procesar informacin de un
sistema fsico. Para el control de posicin angular, velocidad y distancia se utilizan
microcontroladores, que son las interfaces entre las seales y la interfaz de usuario,
realizando funciones de cuantificacin y codificacin.
12
c) Visualizacin de datos adquiridos
Un motor elctrico es una mquina elctrica que transforma energa elctrica en energa
mecnica por medio de interacciones electromagnticas.
Funcionamiento
13
Partiendo del hecho de que cuando pasa corriente por un conductor produce un campo
magntico, adems si lo ponemos dentro de la accin de un campo magntico potente,
el producto de la interaccin de ambos campos magnticos hace que el conductor tienda
a desplazarse produciendo as la energa mecnica. Dicha energa es comunicada al
exterior mediante un dispositivo llamado eje [11].
Principales tipos
Motores de CC
Su fcil control de posicin, paro y velocidad la han convertido en una de las mejores
opciones en aplicaciones de control y automatizacin de procesos. [11].
Pero con la llegada de la electrnica su uso ha disminuido en gran medida, pues los
motores de corriente alterna, del tipo asncrono, pueden ser controlados de igual forma a
precios ms accesibles para el consumidor medio de la industria. A pesar de esto los
motores de corriente continua se siguen utilizando en muchas aplicaciones de potencia
(trenes y tranvas) o de precisin (mquinas, micro motores, etc.) [11].
14
Motores de Corriente Alterna
Motores sncronos
Motores asncronos
Motores sncronos
Motores asncronos
La diferencia del motor asncrono con el resto de los motores elctricos radica en el
hecho de que no existe corriente conducida a uno de sus devanados (normalmente al
rotor). [11]
La corriente que circula por el devanado del rotor se debe a la fuerza electromotriz
inducida en l por el campo giratorio; por esta razn, a este tipo de motores se les
designa tambin como motores de induccin.
15
No obstante, y gracias al desarrollo de la electrnica de potencia (inversores y ciclo
convertidores), en los ltimos aos est aumentando considerablemente la utilizacin de
este tipo de motores a velocidad variable
Con el desarrollo del prototipo del sistema de control de posicin angular de un motor
trifsico asncrono se eliminan los problemas generados en la industria al hablar de
control de posicin angular y variacin de velocidad en motores trifsicos ya que no
existe en la actualidad. Adems de que en el mbito didctico se deja una secuela para
que se desarrollen ms proyectos similares.
16
CAPTULO III
METODOLOGA
17
3.4. PROCESAMIENTO Y ANLISIS DE LA INFORMACIN
18
CAPTULO IV
DESARROLLO DE LA PROPUESTA
Construccin simple
Volumen minimizado
Reduccin de costos
Reduccin de peso
Mantenimiento completamente reducido en comparacin a otros motores.
19
Est compuesto por tres partes principales que son el estator, que es donde se almacena
el bobinado, el rotor que es la parte mvil del motor y la carcasa que son las
protecciones para el eje del rotor.
La principal y nica diferencia radica en el rotor, para este caso est constituido por
algunos devanados muy parecidos a los del estator, su estructura es de mayor
complejidad y su delicadeza aumenta significativamente por lo que requiere
mantenimientos con mayor frecuencia. Cabe recalcar que este tipo tiene anillos rosantes
en el eje del rotor para el control de fase de arranque.
20
Figura 4. 2 Motor de rotor bobinado
Fuente: Articulo de motores elctricos [12]
Este tipo tiene un rotor definido por barras cerradas en cortocircuito muy similares a
una jaula, facilitando as su construccin y su simplicidad de manejo como de
mantenimiento.
Cabe recalcar que los motores de induccin requieren una corriente de arranque mayor a
la nominal y si hubiera un tiempo de respuesta elevado el motor puede recalentar y
sufrir daos. Por lo que se estableci un tiempo de respuesta mximo en funcin del
tamao del motor y de su velocidad.
Para que el arranque del motor pueda ser ptimo fue necesario que el par de arranque
sea superior al par resistente de la carga.
21
POTENCIA NOMINAL DEL MOTOR Relacin arranque vs carga
nominal
De 1.50 Kw a 5 Kw 3.0
De 5 Kw a 15 Kw 2.0
De ms de 15 Kw 1.5
22
4.2. Recoleccin y anlisis de informacin sobre la respuesta de sensores o
transductores en motores trifsicos asncronos.
Para finalizar esta seal elctrica debe ser tratada de forma electrnica para conseguir
impulsos vlidos.
23
Figura 4.4 Principio de funcionamiento de un encoder
Fuente: Encoder absoluto. [15]
La principal diferencia con el encoder incremental radica en que la posicin angular
queda definida por el cdigo de salida que es nico para cada posicin al dar la vuelta
completa, esto ayuda a que estos encoders no pierdan su posicin cuando exista una
prdida de alimentacin.
24
Para poder codificar estas seales elctricas obtenidas se emplea cdigo gray y
consecuentemente el cdigo binario ya que este fcilmente puede ser manipulado por
cualquier dispositivo de control mediante el proceso electrnico respectivo.
EQUIVALENCIA
DECIMAL BINARIO CODIGO GRAY
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
Tabla 4.2 Equivalencia de cdigos
Fuente: Autor
25
4.2.2 Encoder incremental
De acuerdo a los tres canales se pueden captar tres seales cuadrticas que determinar
los desfases que tendr cada una.
26
Figura 4.7 Representacin grfica de las seales incrementales
Fuente: Encoder incremental. [16]
360
360 =
/
27
Figura 4.8 Variador
Fuente: Sistemas de regulacin y control automticos. [17]
Dnde:
La red de c.a es la alimentacin del variador que puede ser monofsica o trifsica
dependiendo del requerimiento del motor.
Salida y entrada (Comunicaciones), que no son otra cosa las conexiones para comunicar
al variador con una red industrial mediante interfaces como RS-232, Ethernet, profibus,
USB y ordenadores. Para cada fabricante o marca de variadores existe un respectivo
software con las indicaciones necesarias para poder estableces el bus de
comunicaciones.
Salida al motor, que es la conexin al motor a travs de una conexin directa, estrella o
triangulo por medio de las tres fases (U-V-W).
= 60
2
28
Dnde:
n = velocidad en rpm
f = frecuencia (HZ)
2p = nmero de pares de polos del motor
La velocidad obtenida a travs de esta expresin matemtica nos indica la velocidad real
del motor, claro que al hablar de un motor asncrono la velocidad real de giro siempre
ser menor de la calculada por el efecto de desplazamiento que es alrededor de un 4%.
Para variar progresivamente la velocidad de un motor asncrono necesitamos de la
ayuda de los variadores.
Cabe recalcar que los motores de inducciones pueden lograr variar la velocidad a travs
de tres mtodos que son:
29
4.3.1 Variacin por nmero de polos
Este mtodo es anlogo y antiguo en comparacin a los otros dos mtodos se genera
variando el nmero de pares con el nmero de polos. Para variar el nmero de polos del
motor se colocan distintos bobinados en el estator del motor, luego se los interconecta y
se consigue la variacin deseada.
Se requiere un motor especial con los devanados necesarios y que los terminales
sean puestos al exterior del estator para el intercambio de polos.
No es posible tener un control continuo de velocidad.
Mayor tamao y peso para el motor
Costo ms elevado debido a la carcasa
Bajo rendimiento.
La velocidad del motor puede ser controlada de manera limitada por este mtodo
variando el voltaje de lnea de un par al primario del estator y as induciendo un
incremento en el deslizamiento.
30
Tambin son conocidos como drivers de CA o inversores, debido a que el voltaje es
variado simultneamente con la frecuencia.
31
Figura 4.10 Variador de frecuencia
Fuente: Sistemas de regulacin y control automticos. [18]
32
Los electrodomsticos, para el control de temperatura, calefacciones, cocinas
elctricas.
La informtica, para controlar dispositivos finales como impresoras, cmaras,
mdems y otros.
Y finalmente en la ms importante y quizs la ms empleada al industria, para
controlar motores, sensores y actuadores.
DOMINIO
BITS PRESTACIONES FABRICACIN EN EL COSTOS
MERCADO
MEDIA
4 BAJA MEDIA BAJA BAJO
BAJA
MICROCONTROLADOR MEDIO
8 MEDIA MEDIA ALTA ALTA
BAJO
MEDIA ALTA MEDIO
16 MEDIA MEDIA
ALTO
32 ALTA MEDIA BAJA BAJA ALTO
33
El procesamiento de los datos, esto est estrechamente ligado a la rapidez de cada
microcontrolador, debemos conocer qu tipo de clculos va a realizar y su magnitud.
Sin dejar de lado su precisin.
Memoria, para esto se debe conocer la informacin a almacenarse por parte de la
aplicacin con una versin preliminar o pseudocdigo.
El respectivo consumo
Costos o tambin conocido como ancho de palabra.
Espacio en la placa o proteccin de caja, entonces se necesita conocer el tipo de
encapsulado.
PRINCIPALES FABRICANTES
34
Su producto ms conocido y vendido es el Zilog Z80
de 8 bits
35
Figura 4.11 Grabador de microcontroladores
Fuente: Sistemas de regulacin y control automticos. [19]
De la mano con el hardware est el software necesario, existen varios pero dos de los
ms empleados son:
Mplab que es un editor gratuito propio de la marca Microchip, tiene todos los modelos
disponibles por microchip y adems permite la grabacin directa o autnoma al chip.
Una vez analizados los requerimientos bsicos para el proyecto, comparados los
motores de induccin existentes como el de rotor devanado y el de jaula de ardilla se
decidi emplear el motor de jaula de ardilla ya que es el ms comn y por ende el ms
empleado en la industria por las razones bien diferenciadas que son:
Bajo coste
Mantenimiento minimizado
36
Facilidad de adquisicin
Tienen una alto grado de proteccin
Estn compuestos por pocos componentes
Es robusto
Puede instalarse en ambientes de riesgo
Las instalaciones que posee son una lnea monofsica y otra trifsica es decir
tiene conexiones a 110 y a 220.
El arranque se va a emplear
37
La frecuencia a la que trabajar el motor
50hz
N de
2 4 6 8 10 12 16 24 32 48
polos
Velocidad
3000 1500 1000 750 600 500 375 250 188 125
(rpm)
Una vez solventadas estas preguntas se pudo establecer un cuadro comparativo entre
cuatro motores de induccin jaula de ardilla como se indica en la tabla 4.6.
38
CAPACIDAD VOLTAJE CORRIENTE VELOCIDAD
TIPO
(HP) (V) (A) (rpm)
Jaula de
0,25 220/300 1,98 ~ 0,98 1425 ~1100
ardilla
Jaula de
0,5 220/340 2,8 ~ 1,75 1425 ~1100
ardilla
Jaula de
1 220/380 3,6 ~2,08 1425 ~1100
ardilla
Jaula de
1,5 220/440 5,2 ~2,6 1180
ardilla
Jaula de
5 220 14 1750
ardilla
Jaula de
10 230/460 27 ~14 1425 ~1750
ardilla
Tabla 4.6 Datos de motores jaula de ardilla
Fuente: Autor
De acuerdo a estos datos analizados se estableci que nuestro prototipo no necesita ms
de 1HP, una velocidad no mayor a 1000rpm, cuyo voltaje manejado ser de 200 voltios
y cuya corriente nominal no superara los 3.6 amperios.
MOTOR SELECCIONADO
Potencia 0,25 HP
Voltaje 220 voltios
Corriente
1,98 amperios
mxima
Velocidad
1424 rpm
mxima
Velocidad
1100 rpm
mnima
Numero de
6
polos
Tabla 4.7 Datos de motor seleccionado
Fuente: Autor
39
4.6. Seleccin del microcontrolador adecuado capaz de realizar el control del
motor.
Se conoci que los requisitos mnimos que necesita nuestro microcontrolador fueron:
De acuerdo con los requisitos se realiz una tabla comparativa con los
microcontroladores que podan cumplir las necesidades requeridas.
40
MODELO DE ENTRADA/ SALIDAS
BITS MEMORIA CONVERTIDORES
MICROCONTROLADOR SALIDA PWM
PIC18F25K20 8 25 32kb 11 2
PIC18F4320 16 4 768b 10 4
MC68HC08DB48 16 16 48kb 6 4
MC68HC908MR32 32 6 16kb 10 6
Tabla 4.8 Datos tcnicos de microcontroladores
Fuente: Autor
MODELO DE
COSTO PROGRAMADOR SOPORTE
MICROCONTROLADOR
CARACTERISTICAS PRINCIPALES
Memoria Flash 32 Kb
Numero de instrucciones
16384
permitido
Memoria de SRAM 1536 b
Memoria de EEPROM 256 b
entradas y salidas 25
PWM 2
E-USART 1
Timers 8/16-bits 1x83x16
Tabla 4.10 Datos tcnicos del PIC seleccionado
Fuente: Autor
41
4.7. Recoleccin de informacin sobre la programacin en el microcontrolador
seleccionado.
42
Figura 4.13 Lenguaje ensamblador
Fuente: Pic Microcontrolles-Programing. [20]
43
En la figura 4.12 se aprecia el ahorro en conjunto de instrucciones del cdigo ejecutable
al lenguaje de programacin en C.
EL lenguaje C permite la operacin tanto con el byte como el bit, adems se encuentra
estandarizado y es portable.
Primero se establece el programa escrito en C, a su vez este se compila por ASM para
ser traducido a cdigo de mquina, finalmente se almacena en la memoria flash del
microcontrolador en palabras de 16 bits que contienen una instruccin especifica (cada
palabra).
int: un tipo de dato entero con signo de 16, 32 64 bits, dependiendo del
compilador.
44
short: Un nmero de 16 bits de rango igual a -32763 a 32762.
volatile: Especifica una variable que almacena datos cuyo contenido puede
cambiar en cualquier momento sea por la accin del programa como reaccin
de la interaccin del usuario con el programa
static: Especifica una variable que slo puede cambiar por efecto del programa.
typedef: Define un tipo de dato para fcil manejo del programador basado en los
datos definidos por el compilador.
sizeof: Funcin que devuelve el tamao en bytes del tipo de dato al que se
aplica.
45
default: Define las acciones a ejecutar no especificadas por una instruccin case
dentro de una estructura condicional switch.
for: Bucle que se ejecuta tantas veces como se cumplan las condiciones
especificadas dentro del parntesis de la instruccin.
auto: Una de las cuatro clases de almacenamiento de datos, auto es la opcin por
defecto, las otras tres son register, static y extern.
Declaraciones globales
Inclusin de libreras
46
{
Sentencias
Sentencias
Sentencias
Sentencias
47
Figura 4.16 Seleccin de un proyecto en Mplab
Fuente: Autor.
48
Figura 4.17 Entorno de programacin en Mplab
Fuente: Autor.
Es necesario mencionar que se trabaj con el compilador Hitech que, de igual manera es
propio de la marca Microchip.
ENCODER
USUARIO
MICROCONTROLADOR
ORDENADOR
49
Figura 4.19 Esquema del proyecto
Fuente: Autor.
Un variador de frecuencia
El motor de induccin
El encoder incremental
Un microcontrolador
Para el variador se analiz los mtodos existentes y se eligi trabajar con el variador de
frecuencia, que fue el encargado de modificar la velocidad, el frenado y el arranque del
motor.
Se eligi la marca LG, por su disponibilidad, forma de trabajo y garanta al trabajar con
motores de induccin, como con los mdulos de PWM y PID.
50
Monitoreo y parametrizacin mediante PC basada en herramienta de software.
Diseo modular
Temperatura de operacin 10 C 50 C
Fcil acople lateral
Paneles de conexin extrables
Terminales de control sin tornillos
51
Figura 4.21 Diagrama de bloques de control con el variador
Fuente: Autor.
52
4.8.3 Encoder incremental
4.8.4 El microcontrolador
53
4.9. Diseo de las etapas para desarrollar el sistema de control de posicin
angular empleando la informacin tcnica.
Para el diseo de las etapas se tom en cuenta cada uno de los elementos analizados que
se encontraban inmersos en nuestro proyecto, y el orden en que se requiere su diseo.
Una vez elegidos los elementos vamos se define que la primera etapa es el acoplamiento
del motor con el variador de frecuencia y estos a su vez a la lnea de alimentacin
trifsica.
54
4.9.2 Acoplamiento del motor y el encoder
La seal captada por el encoder pasa por una modulacin PWM para llegar en forma de
pulsos al microcontrolador
55
En esta etapa se dise el diagrama para la tarjeta que posteriormente se puso en placa,
luego de las pruebas respectivas en el protoboard.
Este diagrama permiti el anlisis de cada elemento inmerso en la etapa de control que
realizo el PIC, en primera estancia control al variador con la seal pwm, despus
acogi las tres seales del encoder o sensor rotativo, seales que estaban distribuidas en
la velocidad, el sentido de giro y la posicin angular.
Al haber trabajado con el encoder incremental, se necesit dar una posicin referencia
en el microcontrolador o tambin conocida como posicin cero, que dara el punto de
partida para el control de la misma.
56
4.10. Realizar las placas de los circuitos electrnicos para cada etapa de
desarrollo
Una vez realizados los esquemticos de cada etapa del proyecto, se elabor la placa de
cada segmento del proyecto.
La placa del variador de frecuencia que en este caso tuvo el motor, requera de un
circuito adicional con filtros para evitar armnicos, capacitores para evitar la cada
tensin, y los respectivos bornes para las lneas de tensin tratadas.
Para esta para solo se necesit el acoplamiento mediante bornes fuertes, que no
produzcan cambios bruscos en la seal, no se emple ninguna placa para el tratamiento
de la seal.
57
4.10.3 Placa del Microcontrolador
Para la placa del microcontrolador se tom en cuenta, las seales de entrada y salida con
las que trabajo, la seal pwm, por ende el modulo deba estar activo, se trabaj con
interrupciones para el control de la posicin angular.
58
4.11. Evaluacin y comprobacin del funcionamiento del prototipo.
Una vez realizadas todas las etapas del diseo del prototipo se obtuvo la variacin
angular del eje de nuestro motor asncrono entre 0 y 120 grados. Es decir la oscilacin
de movimiento del motor nicamente se daba entre estos dos ngulos.
El variador trabajo a 50 Hz, con una seal pwm que alimento el microcontrolador. Esto
permiti el control del movimiento del eje del motor entre los dos ngulos ya
mencionados como se muestra en la figura 4.31 donde el eje del motor se encuentra en
la posicin 120.
120
59
De igual manera se pudo comprobar que luego de esta posicin regresaba a la inicial
que era 0, o la posicin inicial. Claro que visiblemente era mnima la diferencia, por lo
que fue necesario marcar las dos posiciones en el eje del motor para comprobar su
funcionamiento.
60
4.12. Costo del proyecto.
VALOR VALOR
DESCRIPCION CANTIDAD
UNITARIO TOTAL
TOTAL $ 858,90
61
CAPTULO IV
CONCLUSIONES Y RECOMENDACIONES
Conclusiones
62
Recomendaciones
El acople del encoder debe realizarse con todos los cuidados necesarios para no
ocasionar daos en los sensores, y que se pierda la seal real.
Al realizar la eleccin del variador, debemos tener en cuenta que tenga los
mdulos de PWM y PID.
63
REFERENCIAS
64
[11] J, Lpez. (2013, junio) Motores Elctricos. [Online].
http://biblio3.url.edu.gt/Libros/2013/ing/pim/12.pdf
65
ANEXOS
66
ANEXO A.- Datasheet del variador
67
68
69
70
71
72
73
74
75
76
77
ANEXO B.- Datasheet del encoder
78
79
ANEXO C.- Datasheet del microcontrolador
80
81
82
83
ANEXO D.- Programacin en Mplab con Hitech
#include<p18f25k20.h>
#include <TIMERS.h>
#include <adc.h>
#include"variables.h"
#include"display.h"
#fuses INTRC_IO,NOWDT,NOLVP,MCLR,NOPROTECT
#use delay(clock=4000000)
#use delay(clock=4000000)
#use rs232(baud=2400,xmit=PIN_A0,rcv=PIN_A1)
void interrupt_at_low_vector(void)
84
_asm GOTO low_isr _endasm
#pragma code
/* ... */
void interrupt_at_high_vector(void)
#pragma code
interrupcion_tmr1();
if(PIR1bits.ADIF==1)
analoga_lec();
ANSELH=0;
//RB digital
85
OSCCON=0b01110111;
//modo Idle_OFF & a 16 MHz & utiliza HFINTOSC & estabilizar HFINTOSC
& oscilador interno
OSCTUNEbits.PLLEN=0 ;
//Pll_OFF (multipicador *4), total a 64MHz
ADCON2=0b10110110;
//just right & 16TAD & FOSC/64
ADCON1bits.VCFG0=0;
//V ref+ Vdd=3.3v
ADCON1bits.VCFG1=0;
//V ref- Vss=0 v
TRISA=0b00011111;
//"entradas"
ANSEL=0b00000001;
//RA0 anloga
LATB=0;
TRISB=0;
TRISC=0b00000000;
T1CON=0b11110101; //TMR1_ON & a 16 bit & con osc principal & prescaler
1:8 & osc del TMR1_OFF & osc interno (FOSC/4)
86
ADCON0=0b00000001; //canal 0 & adc_ON
ESTADO=OFF;
BANDERAS._UNA_VES=0;
BANDERAS._SENSOR_ACTIVO=0;
BANDERAS._RUN=0;
BANDERAS._INICIO=0;
BANDERAS._PROGRAMANDO=0;
_ALARMAS._SENSOR_PREVIO=0;
_ALARMAS._SENSOR_POSTERIOR=0;
_ALARMAS._PROGRAMACION=0;
_ALARMAS._PROGRAMADO=0;
PORTC=0b11111111;
while(1)
//INTERRUPCIONES
/*Interrupcion de timer*/
void interrupcion_tmr1()
BANDERAS._UNA_VES=1;
87
BANDERAS._5MS=!BANDERAS._5MS;
UN_SEGUNDO++;
PUNTERO++;
TMR1H=0b11110110;
TMR1L=0b00111011;
ADCON0bits.GO_DONE=1;
//realizar conversion adc
PIR1bits.TMR1IF=0;
/*Interrupcion de analoga*/
void analoga_lec()
SENSOR=SENSOR+SENSOR_GRABAR;
NUMERO_LECTURAS++;
if (NUMERO_LECTURAS>=4)
sensa++;
SENSOR=SENSOR>>2;
PROMEDIO_SENSOR_LLAMA=PROMEDIO_SENSOR_LLAMA+
SENSOR;
PROMEDIO_SENSOR_LLAMA=PROMEDIO_SENSOR_LLAMA>>1;
SENSOR=0;
if(inicial==0)
88
{
if(no_programado==1||BANDERAS._PROGRAMANDO==1)
inicial=1;
if(SENSOR_GRABAR>300)
ANALOGA=SENSOR_GRABAR;
//analoga=set point
histeresis_alto=ANALOGA*4;
//histeresis en +20%
ALTO_1=histeresis_alto/10;
lim_alto=ANALOGA-ALTO_1;
//limite superior del set point
lim_bajo=80;
PIR1bits.ADIF=0;
//limpio bandera de interrupcin anloga
//GRABAR EN EEPROM
void GUARDA_EPROM()
EEADR=0X00;
EEDATA= ADRESH;
// el alto guarda
EECON1bits.EEPGD=0;
EECON1bits.CFGS=0;
EECON1bits.WREN=1;
89
INTCONbits.GIE=0; //apaga las interrupciones
INTCONbits.PEIE=0;
EECON2=0x55;
EECON2=0xAA;
while (PIR2bits.EEIF==0);
EEADR=0X01;
EECON1bits.EEPGD=0;
EECON1bits.CFGS=0;
EECON1bits.WREN=1;
EECON2=0x55;
EECON2=0xAA;
while (PIR2bits.EEIF==0);
INTCONbits.PEIE=1;
PIE1bits.TMR1IE=1;
PIE1bits.ADIE=1;
T1CON=0b11110101;
90
PIR2bits.EEIF=0; //limpia bandera de interrupcin de eprom
_ALARMAS._PROGRAMADO=1;
//LEER EEPROM
void RECUPERAR_EPROM()
EECON1bits.EEPGD=0;
EECON1bits.CFGS=0;
EECON1bits.EEPGD=0;
EECON1bits.CFGS=0;
EECON1bits.RD=1;
//inicia lectura
dato1=EEDATA;
//byte bajo se guarda en dato1
valor=dato2<<8|dato1;
set_tris_a(0x22);
set_tris_b(0x00);
setup_comparator(NC_NC_NC_NC);
setup_comparator(NC_NC_NC_NC);
output_low(EN1_2);
91
output_low(EN3_4);
output_low(A_1);
output_low(A_2);
output_low(A_3);
output_low(A_4);
void accion(void){
int x,y;
do{
x=getch();
#use rs232(baud=1200,xmit=PIN_A2)
switch(x){
case'U':
for(y=0;y<=15;y++){
printf("U");
delay_ms(5);
output_b(0x01);
break;
case'L':
for(y=0;y<=15;y++){
printf("L");
delay_ms(5);
output_b(0x02);
break;
92
case'R':
for(y=0;y<=15;y++){
printf("R");
delay_ms(5);
output_b(0x04);
break;
case'D':
for(y=0;y<=15;y++){
printf("D");
delay_ms(5);
output_b(0x08);
break;
case'O':
for(y=0;y<=15;y++){
printf("O");
delay_ms(5);
output_b(0x00);
break;
#use rs232(baud=2400,xmit=PIN_A0,rcv=PIN_A1)
}while(x!='O');
93
void main(void){
char password[]="YES";
char word[];
int z;
config();
output_b(0x00);
do{
#use rs232(baud=2400,xmit=PIN_A0,rcv=PIN_A1)
gets(word);
if(strcmp(word,password)){
output_b(0x0f);
#use rs232(baud=1200,xmit=PIN_A2)
for(z=0;z<=30;z++){
printf("A");
delay_ms(5);
#use rs232(baud=2400,xmit=PIN_A0,rcv=PIN_A1)
accion();
else{
output_b(0x00);
}while(TRUE);
#include<p18f25k20.h>
94
//#include"variables.h"
void display()
{
switch(ESTADO)
{
case 0:
PORT_C=0b1000000;
break;
case 1:
PORT_C=0b1000000;
break;
case 2:
PORT_C=0b1111001;
break;
case 4:
PORT_C=0b0100100;
break;
case 5:
PORT_C=0b0110000;
break;
case 6:
PORT_C=0b0011001;
break;
95