CAPITULO II MARCO TEORICO A. ANTECEDENTES DE LA INVESTIGACION.
CAPÍTULO II MARCO TEORICO 1. ANTECEDENTES DE LA …
Transcript of CAPÍTULO II MARCO TEORICO 1. ANTECEDENTES DE LA …
CAPÍTULO II
MARCO TEORICO
1. ANTECEDENTES DE LA INVESTIGACION
Con el paso del tiempo, la necesidad de hacer que el funcionamiento
industrial sea mas preciso, muchas han sido las investigaciones y desarrollos
que se han realizado para cumplir con este objetivo. Principalmente, el buen
desempeño de los motores se ha hecho fundamental y las estrategias para
lograrlo han ido proliferando.
Durante la ejecución del proceso investigativo se han revisado
diversas investigaciones que anteceden este Trabajo de Grado, las cuales
contribuyen en la orientación teórica que requiere todo estudio científico. La
revisión de literatura, puso de manifiesto que en los principales estudios de la
automatización y el control los sistemas de control juegan un papel de gran
importancia.
Acosta (2000) en su trabajo de investigación detalla el diseño y
construcción de un sistema capaz de regular la velocidad de un motor de
corriente alterna de una fase, mediante la utilización de controles inteligentes,
además en el desarrollo de este, se definen algunas teorías que permiten
elaborar o diseñar controles mediante una técnica de la inteligencia artificial
llamada control difuso. Además en este estudio se concluyo como y porque
los sistemas de control inteligente, están sustituyendo a los controles
9
10
tradicionales, por la simplificación del diseño y construcción de los mismos,
así como también el aumento de su eficacia durante su uso. Básicamente
este trabajo de investigación fue el de mayor aporte por tratarse del control
de un motor a pesar de ser un motor AC, pero que utilizaba como estrategia
de control una de las tecnologías propuestas para la finalización de esta
investigación.
Franco y otros (2005) señalan en su trabajo denominado Monitor de
Motores DC, la importancia que tiene un sistema de adquisición de datos
fiable, así como el respectivo control para motores DC, concluyendo que se
pueden obtener valores de corriente, voltaje, velocidad y otras variables
involucradas en el funcionamiento del motor que puedan iniciar el
desempeño optimo del mismo. Esta investigación permitió tomar el criterio
necesario para la elección del circuito controlador del motor.
Pereira y Bortolucci (2004) realizaron un sistema de control automático
para puertas y barreras con motores DC, basado en un microcontrolador, con
capacidad de controlar el sentido de giro alimentación, posee una etapa de
frenado y un sensor amperimetrito. De aquí se tomaron conclusiones que
permitieron optimizar el proceso de control.
Salvatori (2003) realizo la investigación para controlar la velocidad de
un motor de inducción monofásico con rotor tipo jaula de ardilla; a través de
un microcontrolador, que genera las señales PWM necesarias para controlar
un puente inversor monofásico de transistores por el método de relación
11
voltaje/frecuencia constante (VVVF ó V/F). El inversor es alimentado por
voltaje, y este voltaje proviene de un puente rectificador de diodos. Estos
elementos conforman la etapa de potencia del circuito,
Mientras que el microcontrolador y el driver del inversor, conforman la etapa
de control. El aporte de esta investigación fue el diseño de su etapa de
control.
2. BASES TEORICAS
2.1 MOTOR DE CORRIENTE CONTINUA
Según Kosow (1978), el motor de corriente continua es aquel que
convierte energía eléctrica de cc en energía mecánica. Para ello se
suministra energía eléctrica a los conductores y al campo magnético del
dinamo a fin de producir un movimiento relativo entre ellos y provocar por lo
tanto energía mecánica. El diagrama eléctrico de estos motores se muestra
en la Figura (ver Figura No. 1).
Figura No. 1 Motor de corriente continua
Fuente: Buban, P (1997). Motores de Corriente Continua. p.312
12
2.2 PRINCIPIO DEL FUNCIONAMIENTO DE LOS MOTORES DE
CORRIENTE CONTINUA
Según Ruiz (1993), el principio básico de un motor cc, es la creación
de un imán giratorio en la parte interior móvil del mismo, es decir en el rotor.
Esto se lleva a cabo por medio de un dispositivo que se llama colector, que
se encuentra en todas las maquinas cc. A partir de una alimentación cc,
provista por una fuente externa el colector suministra las corrientes alternas
necesarias para la creación del imán giratorio.
Cuando el motor gira y sur del electroimán oscilan dentro de un
ángulo de 90º (ver Figura No. 2), es decir los polos norte y sur no rotan,
están estacionados cuando el rotor gira. Esto equivale a tener un electroimán
en el rotor que gira a igual velocidad que dicho rotor, pero en sentido
opuesto. Si se coloca el rotor junto a un imán permanente fijo, el estator y los
polos magnéticos de polaridad opuesta se atraerán unos con otros (a fin de
alinearse), el rotor comenzara a girar. Una vez que el rotor rota cierto ángulo
se produce una conmutación y los polos norte y sur del imán vuelven a su
posición, repitiéndose este ciclo una y otra vez. El sentido de rotación
depende de la polaridad del voltaje aplicado a las escobillas del motor.
13
Figura No. 2
Conmutación del motor
Fuente: Ruiz, F (1993). Principio de funcionamiento de los motores CC.
p.55
2.3 GENERADOR DE CORRIENTE CONTINUA
Para Kosow (1978) un generador de corriente continua es aquel que
convierte energía mecánica en energía eléctrica, esto se logra a través de
que el movimiento rotatorio lo proporciona un motor primario (una fuente de
energía mecánica) a fin de originar un movimiento relativo entre los
conductores y el campo magnético de la dinamo para así generar energía
eléctrica.
14
2.4 PRINCIPIO DE FUNCIONAMIENTO DE LOS GENERADORES DE
CORRIENTE CONTINUA
Para Ruiz (1993), la variación del flujo magnético una bobina de
alambre causa la inducción de un voltaje entre los extremos de dicha bobina.
Si se hace rotar un conductor cerrado entre dos imanes, las líneas de fuerzas
magnéticas se cortaran y se inducirá un voltaje “e” depende del sentido del
movimiento del conductor cerrado y de cómo este corta las líneas de fuerzas
magnéticas.
Al colocar un rectificador, se convertirá el voltaje indicado ca en un
voltaje cc (con ondulaciones). En consecuencia, se tendrá cc a la salida del
generador. Cuanto mas rápido gira el rotor, mas líneas de fuerza se cortaran
y mas elevado será el voltaje de salida. Además, cuanto más potente es el
imán del estator, mas líneas de fuerza habrá y por tanto más alto será el
voltaje de salida.
2.5 MOTOR DE IMAN PERMANENTE (CCIP)
Según Chapman (2003) los motores de imán permanente tienen sus
polos hechos de imanes permanentes. Estos motores presentan beneficios
tales como: no requieren de un circuito de campo externo, no requieren de
embobinado de campo, por tanto pueden ser mas pequeños y recomendados
en caso de ahorro de espacio y dinero.
15
Sin embargo los motores CCIP, presentan algunas desventajas como
son: no producen una densidad de flujo alta, presenta riesgo de
desmagnetización, la cual puede ser causada por el excesivo calentamiento
que puede presentarse durante largos periodos de sobrecarga.
Un CCIP es básicamente la misma maquina que un motor de
derivación, excepto que el flujo de un motor CCIP es fijo. Por tanto, no es
posible controlar la velocidad de un motor CCIP variando la corriente de
campo ni el flujo. Los únicos métodos disponibles de control de velocidad
para un motor CCIP son el control de voltaje en el inducido y el control de la
resistencia del inducido.
2.6 MOTOR DE CORRIENTE CONTINUA SERIE
Para Chapman (2003), en estos motores la corriente inducida, la
corriente de campo y la corriente de línea son la misma. Sus embobinados
de campo se encuentran en serie con el circuito inducido (ver Figura No. 3).
Figura No.3
Motor Serie
Fuente: Buban, P. (1997). Motores de Corriente Continua. p.313.
Devanado del Campo
Escobillas
Inducido
16
2.7 MOTOR DERIVACION
Chapman (2003), expone que este tipo de motores es aquel cuyo
circuito de campo obtiene su potencia directamente a través de los
terminales del inducido del motor. Operan a una velocidad relativamente
constante cuando se conectan a cargas variables.
Para Buban (1997) el motor derivación también recibe el nombre de
motores de corriente continua en paralelo, ya que, el campo y los devanados
del inducido se conectan en paralelo (ver figura No.4).
Figura No.4
Motor Derivación
Fuente: Buban, P. (1987). Motores de Corriente Continua. p.315
VT
Ea
Ra
Raj
Rf
Lf
+
_
VT=Ea+IaRa
17
Este tipo de motor derivación en paralelo, opera a una velocidad
constante cuando se conecta a cargas variables. Se emplean usualmente en
prensas taladradoras para trabajo pesado, cintas transportadoras y prensas
tipo graficas.
2.8 MOTOR COMPUESTO
Buban y otros (1997) señalan que el motor compuesto tiene un campo
en derivación y uno en serie; es decir; es una combinación de los motores
serie y paralelo.
Ofrecen la ventaja del par grande de un motor en serie y la velocidad
constante de un motor en derivación. Los motores compuestos pueden ser
de derivación corta o larga, según la forma como se conecte al campo en
derivación, esto se puede apreciar en la siguiente figura (ver Figura No.5)
18
Figura No. 5
Motor Compuesto
Fuente: Buban, P. 1987. Motores de corriente continua. p.312
2.9 CONVERTIDOR ANALOGICO-DIGITAL
Según Tocci (1992) un convertidor Analógico Digital es un dispositivo
que convierte una señal analógica en una señal digital usualmente en una
señal codificada numéricamente. Un convertidor funciona como una interfase
entre un componente analógico y uno digital. Un circuito muestreador y
mantenedor, es frecuentemente una parte integral de un convertidor
Analógico-Digital. La conversión de una señal analógica, en su
correspondiente señal digital (numero binario) es una aproximación, ya que la
Derivación Corta
Devanado del campo paralelo
Derivación Larga
Devanado del campo en serie
19
señal analógica puede tomar un numero infinito de valores, por cuanto la
cantidad de diferentes números que puede estar formado por un conjunto
finito de dígitos es limitada. Este proceso de aproximación es llamado
cuantizacion.
Cuando se utilizan convertidores analógico-digitales, se deben tomar
en cuenta los siguientes parámetros:
Resolución: Es la mínima variación de la tensión analógica de entrada que
hace la palabra digital de salida a otro código adyacente.
Tiempo de conversión: Es el tiempo que transcurre desde que comienza la
conversión de la tensión analógica hasta que se obtiene la palabra digital de
salida.
Código de Entrada: Son los códigos binarios con los que trabaja el
convertidor analógico-digital.
Error de Desplazamiento: Es el valor de tensión analógica de entrada para
obtener la palabra 00…0.
Error de Fondo de Escalera: Producido por un amplificador preferencial de
salida que puede variar la recta de transferencia.
Error de Linealidad: Se produce debido a la desviación de lo ideal de la
línea recta de transferencia.
Códigos Omitidos: Son aquellas palabras digitales que no aparecen en la
salida.
20
2.10 MICROCONTROLADORES
González (2000), expone que los microcontroladores son dispositivos
de amplias aplicaciones entre las cuales se pueden mencionar: las
comunicaciones, el control, la electrónica electromotriz y otros. Estos
dispositivos, tienen la reputación de ser muy confiables y fáciles de
programar.
La cantidad de familias y referencias que poseen estos dispositivos
permiten que los diseñadores pueden escoger el mas apropiado para cada
tarea especifica que se deba realizar. Como dato curioso, pero que a su vez
confirma la cantidad y versatilidad de los microcontroladores es que en un
automóvil moderno se encuentran hasta cincuenta de ellos, realizando
diferentes funciones como el control de frenos ABS, sistema de seguridad,
computadora de viaje, control de aires acondicionados y otros.
Existen gran cantidad de modelos y fabricantes, los cuales se ajustan
a las necesidades y presupuestos disponibles. Estos aparatos ofrecen
muchas ventajas a pesar de su bajo costo. Otras características son:
• Ambiente de desarrollo totalmente integrado bajo ambiente Windows.
• Se puede examinar y modificar la memoria, registros y otros.
• Diferentes modos de ejecución, por pasos y de corrido.
• Conexión serial con la computadora.
• Circuito de reloj incorporado.
21
• Frecuencia de reloj de hasta 30MHz.
• Múltiples puertos de entrada y salida programables.
• Alta inmunidad al ruido externo.
• Protección de la memoria de programa.
Entre sus aplicaciones se pueden mencionar como las mas comunes:
• Control de procesos automáticos, de maquinas, herramientas,
aparatos de maniobra de posición y velocidad, otros.
• Controladores de periféricos.
• Sistemas industriales para el conteo de elementos, la generación de
bases de tiempo, otros.
• Sistemas de alarmas de todo tipo.
Actualmente un microcontrolador es un sistema integrado, aspecto
muy atractivo para su aplicación en muchos campos. Integran en un chip de
potencia que permite poseer controladores periféricos inteligentes capaces
de tratar procesos muy rápidos de una forma directa.
Un microcontrolador posee una gran capacidad para atender a las
interrupciones en cuanto a rapidez y gestión de prioridades. Su arquitectura
esta dotada para el multiprocesamiento. Posee memoria RAM y ROM interna
de gran capacidad y facilidad para implementarla exteriormente.
22
2.11 CARACTERISTICAS DEL MICROCONTROLADOR MICROCHIP
16F873
Este microcontrolador forma parte de la familia de los PIC16F87X. (ver
Figura No.6).
PRINCIPALES CARACTERÍSTICAS
Set de instrucciones reducido (RISC). Sólo 35 instrucciones para aprender.
Las instrucciones se ejecutan en un sólo ciclo de máquina excepto los
saltos que requieren 2 ciclos.
• Opera con una frecuencia de clock reloj de hasta 20 MHz (ciclo de
máquina de 200 ns)
• Memoria de programa: 4096 posiciones de 14 bits.
• Memoria de datos: Memoria RAM de 192 bytes (8 bits por registro).
• Memoria EEPROM: 128 bytes (8 bits por registro).
• Stack de 8 niveles.
• 22 Terminales de I/O que soportan corrientes de hasta 25 mA.
• 5 Entradas analógicas de 10 bits de resolución.
• 3 Timers.
• Módulos de comunicación serie, comparadores, PWM.
23
CARACTERÍSTICAS ESPECIALES:
• La memoria de programa se puede reescribir hasta 1000 veces.
• La memoria EEPROM se puede reescribir hasta 1000000 de veces.
• Los datos almacenados en la memoria EEPROM se retienen por 40
años y no se borran al quitar la alimentación al circuito.
• 13 fuentes de interrupción: Señal externa (RB0), Desborde de TMR0,
cambio en el estado de los terminales RB4, RB5, RB6 o RB7, ciclo de
escritura en la memoria EEPROM completado y ciclo de conversión
A/D finalizado.
Figura No.6
Diagrama de pines del Microcontrolador 16F873
Fuente: www.microchip.com. Hoja Técnica 16F873. p.1
24
2.12 DESCRIPCION DE PINES DEL MICROCONTROLADOR 16F873
El 16F873 consta de un procesador con una ALU y un Decodificador
de Instrucciones, una memoria de programas tipo FLASH de 4K palabras de
14 bits, una memoria de datos SRAM on 192 posiciones de 8 bits. También
existe una zona de 128 bytes de EEPROM para datos no volátiles.
Igualmente dispone de interrupciones, un temporizador, WDT (perro
guardián), los terminales de E/S (PORTA, PORTB y PORTC) configurables
por software y los módulos especiales (timers, comparadores, puerto serie).
El microcontrolador PIC 16F873 posee 22 pines de entrada/salida
configurables por software.
PORTA: RA0-RA5:
• Los terminales RA0-RA3 y RA5 son bidireccionales y manejan señales
TTL. Pueden configurarse como entradas analógicas
• El terminal RA4 como entrada es Schmitt Trigger y cómo salida es
colector abierto. Este terminal puede configurarse como clock de
entrada para el contador TMR0.
PORTB: RB0-RB7:
• Los terminales RB0-RB7 son bidireccionales y manejan señales TTL.
25
• Por software se pueden activar las resistencias de pull-up internas,
que evitan el uso de resistencias externas en caso de que los
terminales se utilicen como entrada (esto permite, en algunos casos,
reducir el número de componentes externos necesarios).
• RB0 se puede utilizar como entrada de pulsos para la interrupción
externa.
• RB4-RB7 se pueden utilizar para la interrupción por cambio de estado.
PORTC: RC0-RC7:
• Los terminales RC0-RC7 son bidireccionales y manejan señales TTL.
• Se utilizan en los módulos de PWM, comparadores y transmisión
serial.
CIRCUITO DE RELOJ
Para que el PIC 16F873 procese instrucciones, necesita un reloj cuyos
impulsos determinen la velocidad de trabajo. El oscilador que genera esos
impulsos esta implementado dentro del circuito integrado, pero para regular,
seleccionar y estabilizar la frecuencia de trabajo hay que colocar
externamente cierta circuiteria entre los pines OSC1/CLKIN y
OSC2/CLKOUT.
La frecuencia de reloj principal determina el ciclo de instrucción (tiempo que
26
tarda una instrucción en ejecutarse). En los PICs, un ciclo de instrucción
emplea cuatro periodos de oscilación del reloj principal. Por ejemplo si la
frecuencia del reloj principal es de 4 MHz, un ciclo de instrucción tardara en
realizarse:
T oscilación del reloj principal = 1/F del reloj principal = 1/4MHz =
250ns
Ciclo de instrucción = T oscilación x4 = 250ns x 4 = 1µs
Según los componentes externos que se coloquen se configuran
cuatro tipos de osciladores:
• Tipo RC: Es un oscilador de bajo costo y poca estabilidad. Solo
precisa una resistencia y un capacitor externo.
• Tipo HS: Es un oscilador de alta velocidad y muy estable funciona en
frecuencias comprendidas entre 4 y 20MHz. Utiliza un cristal de
cuarzo o un resonador cerámico.
• Tipo XT: También emplea el cristal de cuarzo o el resonador
cerámico. Trabaja en frecuencias medias, comprendidas entre
100KHz y 4MHz.
• Tipo LP: Empleado en aplicaciones de bajo consumo, lo que conlleva
una frecuencia pequeña. A mas velocidad, mas consumo. Usa cristal o
resonador, y las frecuencias de trabajo oscilan entre 35 y 200KHz.
27
ESTADO DE REPOSO
Cuando el microcontrolador funciona en modo reposo (sleep) la
potencia necesaria es menor de 3mA.
PERRO GUARDIÁN (WATCHDOG)
El temporizador perro guardián (watchdog) es independiente del reloj
principal (posee su propio oscilador), por lo tanto en el modo en bajo
consumo puede seguir funcionando. Cuando llegue al valor máximo FFh, se
produce el desbordamiento del perro guardián, se iniciara tomando el valor
00h y provocara un reset. El tiempo típico es de 18ms, pero utilizando un
divisor de frecuencia (programable por software) se pueden alcanzar 2.3
segundos.
La utilización del perro guardián permite controlar los posibles
cuelgues del programa, esto es si durante el programa hemos previsto poner
a cero el perro guardián para evitar que se genere un reset, en el momento
que por un fallo no previsto el programa se quede en un bucle sin fin, al no
poder poner a cero el perro guardián, este generara un reset sacando al
programa del bucle.
28
TEMPORIZADORES
TEMPORIZADOR TMR0
Contador de 8 bits, similar al del PIC16F84.
TEMPORIZADOR TMR1
De los tres temporizadores disponibles en los PIC16F87X éste es el
único que tiene un tamaño de 16 bits y que actúa como un
Temporizador/Contador. Para manejar 16 bits es preciso concatenar dos
registros de 8 bits: TMR1H:TMR1L, que son los encargados de guardar la
cuenta en cada instante. Dicho valor evoluciona desde 0000H hasta FFFFH y
al regresar nuevamente al valor 0000H se acciona la señalización TMRlF, y
si se desea se puede provocar la petición de una interrupción.
El valor existente en TMR1H:TMR1L puede ser leído o escrito y los
pulsos de reloj que originan la cuenta ascendente pueden provenir del
exterior o de la frecuencia de funcionamiento del microcontrolador (Fosc/4).
El TMR1 puede funcionar de tres maneras:
• Como temporizador.
• Como contador síncrono.
• Como contador asíncrono.
En el modo temporizador el valor concatenado TMRII-l:TM1L se
incrementa con cada ciclo de instrucción (Fosc/4). En el modo contador, el
29
incremento se puede producir con los flancos ascendentes de un reloj, cuya
entrada se aplica a las líneas RCO y RCI de la puerta C, o por los impulsos
aplicados en la línea RCO.
TEMPORIZADOR TMR2
El TMR2 es un temporizador ascendente de 8 bits y que también
puede realizar operaciones especiales para el Puerto Serie Síncrono (SSP) y
para los módulos de Captura y Comparación. La señal de reloj del TMR2 es
la interna Fosc/4, y antes de ser aplicada pasa por un pre-divisor de
frecuencia con rangos 1:1, 1:4 y 1:16. La salida del TMR2 atraviesa un post-
divisor de frecuencia con rangos comprendidos entre 1:1 hasta 1:16,
pasando por los 16 valores posibles. Al entrar el microcontrolador en modo
de reposo, se detiene el oscilador interno y TMR2 deja de funcionar.
MÓDULOS DE CAPTURA Y COMPARACIÓN
Los PIC16F87X disponen de dos módulos CCP, que se diferencian
por su nomenclatura, CCP1 y CCP2, dado que su funcionamiento
prácticamente es igual.
30
MÓDULOS CCP EN MODO CAPTURA
En modo captura, una pareja de registros captura el valor que tiene
TMR1 cuando ocurre un evento especial en el pin RC2/CCP1 para el módulo
CCP1 y en el pin RC1/T1OSI/CCP2 para el módulo CCP2. Los eventos
posibles que pueden ocurrir sobre dichas pines son:
• Un flanco ascendente.
• Un flanco descendente.
• Cada 4 flancos ascendentes.
• Cada 16 flancos ascendentes.
Al efectuar la captura se activa el señalizador CCP1F para el módulo CCP1,
y si el bit de permiso está activado también se puede originar una petición de
interrupción. Una interesante aplicación del modo de captura es la medición
de los intervalos de tiempo que existen entre los impulsos que se aplican a
un pin del PIC.
MÓDULOS CCP EN MODO COMPARACIÓN
En esta forma de trabajo, la pareja de registros CCPR1H-L compara
su contenido, de forma continua, con el valor del TMR1. Cuando coinciden
ambos valores se pone si el señalizador CCP1IF, y el pin RC2/CCP 1, que se
halla configurada como salida, soporta uno de los siguientes eventos:
31
• Pasa a nivel alto.
• Pasa a nivel bajo.
• No cambia su estado pero se produce una interrupción.
MODO PWM
Con este modo de trabajo se consiguen pulsos cuyo ancho en el nivel
alto es de duración variable y que son enormemente útiles en el control de
los motores. La pata RC2/CCP 1 está configurada como salida y la oscilación
entre los niveles lógicos 0 y 1 a intervalos variables de tiempo. Se intenta
obtener un pulso cuyo nivel alto tenga un ancho variable (Duty Cicle), dentro
del intervalo fijo del período del pulso.
Para conseguir la oscilación de la pata se usa un comparador que
pone a 1 (Set) un flip-flop cuando el valor del registro PR2 coincide con la
parte alta del TMR2, momento en que TMR2 toma el valor 00H. Luego el flip-
flop sé resetea y se pone a 0 cuando otro comparador detecta la coincidencia
del valor existente en CCPR1H con el de la parte alta de TMR2. Variando los
valores que se cargan en PR2 y en CCPR1L se varía el intervalo de tiempo
en que la pata de salida está a 1 y a 0 .
CONVERSOR A/D
Los PIC16F87X disponen de un conversor A/D de 10 bits de
resolución y 5 canales de entrada. A través de una entrada seleccionada se
32
aplica la señal analógica a un condensador de captura y mantenimiento y
luego dicho valor se introduce al conversor, que usando la técnica de
aproximaciones sucesivas proporciona un resultado digital equivalente de 10
bits. La tensión de referencia puede implementarse con la tensión interna de
alimentación del PIC o bien con una externa introducida por las patas
RA3/AN3/VREF+ y RA2/AN2/VREF-.
PUERTO DE COMUNICACIÓN SERIE SÍNCRONO
Este módulo, llamado MSSP, integrado en los PIC16F87X proporciona
un excelente medio de comunicación con otros microcontroladores o peri-
féricos que trabajan en serie.
Tiene dos alternativas de trabajo:
• SPI (Serial Peripheral Interface).
• I2C (Inter-Integrated Circuit).
La comunicación en modo SPI la utilizan principalmente las memorias RAM y
EEPROM y utiliza tres líneas. En el modo I2C sólo se emplean dos líneas y
se usa en la comunicación de circuitos integrados diversos. Básicamente el
módulo MSSP está basado en dos registros: el SSPSR, que es un registro de
desplazamiento que transforma la información serie en paralelo y viceversa,
y el registro SSPBUF, que actúa como buffer de la información que se recibe
o se transmite en serie. En transmisión, el byte que se desea enviar se carga
en el SSPBUF y automáticamente se traspasa a SSPSR, donde se va
33
desplazando bit a bit, sacándolo al exterior al ritmo de los pulsos de reloj. En
recepción, los bits van entrando al ritmo del reloj por una pata del PIC y se
van desplazando en el SSPSR hasta que lo llenan, en cuyo momento se tras-
pasa la información al SSPEUF.
En el modo SPI se utilizan tres líneas del PIC, mientras que en el modo I2C
sólo se emplean dos líneas para la comunicación del PIC maestro con los
circuitos integrados que funcionan como esclavos.
USART
El USART soporta la comunicación serie síncrona y asíncrona. Puede
funcionar como un sistema de comunicación bidireccional asíncrona o full
duplex, adaptándose a multitud de periféricos que transfieren información de
esta manera. También puede trabajar en modo unidireccional o halfduplex.
En resumen puede trabajar de tres maneras:
• SERIE ASÍNCRONA (Full duplex, bidireccional).
• SERIE SÍNCRONA-MAESTRO (Halfduplex, unidireccional).
• SERIE SÍNCRONA-ESCLAVO (Halfduplex, unidireccional).
En el primero, las transferencias de información se reali zan sobre dos líneas
TX y RX, saliendo y entrando los bits por dichas líneas al ritmo de la
frecuencia controlada internamente por el USART.
34
En el modo síncrono la comunicación se realiza sobre dos líneas, la DT, que
traslada los bits en ambos sentidos a la frecuencia de los pulsos de reloj que
salen por la línea CK desde el maestro.
ORGANIZACIÓN DE LA MEMORIA
Hay 2 bloques de memoria en el PIC16F873, la memoria de programa y
la memoria de datos cada bloque tiene su propio bus (arquitectura Hardvard).
La memoria de datos está divida en:
• Memoria de uso general
• Registros especiales
• Memoria EEPROM
MEMORIA DE PROGRAMA
• El PIC16F873 dispone de una memoria de programa de 4096
posiciones (0000H a 03FFH) de 14 bits cada una. La memoria está
dividida en 2 páginas.
• El contador de programa (PC) es el registro que contiene, en todo
momento, la dirección de la próxima instrucción a ejecutarse. Este
registro, de 13 bits, es capaz de direccionar hasta 8192 posiciones de
memoria (más que suficiente para las 4096 del PIC16F873).
35
• Stack de 8 niveles. Son 8 registros de 13 bits en los que el
microcontrolador va almacenando las direcciones de retorno de las
diferentes subrutinas.
• La posición 0000H de la memoria es el denominado Vector de Reset.
Esta es la dirección de memoria que se carga en PC cuando el
microcontrolador, estando alimentado, sale del estado de reset
(MCLR=5Vcc). En esta dirección se debe almacenar un GOTO al
inicio del programa.
• La dirección 0004H es el denominado Vector de interrupción. Cuando
el sistema de interrupciones se encuentra habilitado y se produce un
evento, en PC se carga automáticamente esta dirección. En ella debe
comenzar la rutina de atención a las interrupciones.
• La memoria de programa propiamente dicha se divide en dos páginas
(0005-07FF y 0800-0FFF).
• La página se debe selecciona por software. Para ello se utiliza el bit 3
del registro PCLATH.
36
ORGANIZACIÓN DE LA MEMORIA
MEMORIA DE DATOS
La memoria de datos es del tipo RAM. Está compuesta por registros
de 8 bits y dividida en 2 áreas: Registros especiales y Registros de uso
general
La memoria está dividida en 4 bancos.
• Banco 0: 000H-07FH
• Banco 1: 080H-0FFH
• Banco 2: 100H-17FH
• Banco 3: 180H-1FFH
Cada banco se compone de 128 registros de 8 bits cada uno. Los
primeros 20 registros se reservan para los registros especiales, los restantes
se utilizan para uso general. No todos los registros están implementados
físicamente.
El banco se debe seleccionar por software. Para ello se utilizan los bits
RP0 y RP1 del registro STATUS.
REGISTROS DE USO GENERAL
Sólo están implementados físicamente los registros del banco 0 y el 1.
Son 192 registros. Las direcciones en el banco 2 y 3 están mapeadas a las
37
direcciones correspondientes del banco 0 y 1 respectivamente. Por ejemplo,
la dirección 02CH (banco 0) y 12CH (banco 2) acceden al mismo registro
(02CH).
Los registros especiales están repartidos en los 4 bancos. A
continuación veremos las funciones de los principales.
REGISTRO STATUS
Este registro contiene algunos bits que representan el estado de la
ALU (operaciones aritméticas y lógicas), el estado de Reset y el bit de
selección del banco de la memoria de datos.
No utilizar la instrucción CLRF STATUS. Cuando se ejecuta una
instrucción que afecta los bits Z, C o DC, la escritura sobre los mismos queda
inhabilitada. Si se desea forzar a 0 alguno de estos bits se utiliza la
instrucción BCF (BCF junto a BSF, SWAPF y MOVWF ya que son las únicas
instrucciones que no afectan el estado del registro STATUS).
DESCRIPCIÓN DE CADA BIT
IRP: Se utiliza para el direccionamiento indirecto (permite seleccionar el
banco).
IRP=0: Banco 0 y 1 seleccionado.
IRP=1: Banco 2 y 3 seleccionado.
RP1: RP0: Bits de selección del banco de memoria de datos.
38
RP0=0 y RP1=0: Banco 0 seleccionado.
RP0=0 y RP1=1: Banco 1 seleccionado.
RP0=1 y RP1=0: Banco 2 seleccionado.
RP0=1 y RP1=1: Banco 3 seleccionado.
TO: Bit de Time-out: Este bit se coloca automáticamente en 1 luego de
ejecutarse la instrucción CLRWDT, SLEEP o de finalizado el ciclo de Power-
up (inicialización). El bit vuelve a 0 automáticamente cuando ocurre un
evento de time-out de WDT.
PD: Bit de Power-down: Este bit se coloca automáticamente en 1 luego de
ejecutarse la instrucción CLRWDT o de finalizado el ciclo de Power-up
(inicialización). El bit vuelve a 0 automáticamente cuando se ejecuta la
instrucción SLEEP.
Z: Bit Cero
Z=1: Si el resultado de una operación aritmética o lógica es cero.
Z=0: Si el resultado de una operación aritmética o lógica no es cero.
DC: Bit de acarreo del 4to bit (útil para trabajar con dígitos BCD):
DC=1: En una operación de suma, el resultado de la operación entre los 4
bits menos significativos de los sumandos es mayor a 15. El resultado en una
resta es igual o mayor a 0.
DC=0: En una operación de suma, el resultado de la operación entre los 4
bits menos significativos de los sumandos es mayor a 15. El resultado en una
resta es menor a 0.
39
C: Bit de acarreo
C=1: El resultado de una suma es mayor a 255. El resultado de una resta es
igual o mayor a 0.
C=0: El resultado de una suma es menor o igual a 255. El resultado de una
resta es menor a 0.
REGISTRO OPTION
Este registro se etiquetara OPTION_REG. Este cambio se debe a que
OPTION es una etiqueta reservada (la instrucción OPTION se utiliza en
algunos microcontroladores de la línea).
El registro contiene una serie de bits de control relacionados con la
configuración de TMR0, la interrupción externa y la habilitación de las
resistencias de pull-up del PORTB. Todos los bits del registro se pueden leer
o escribir desde el software.
DESCRIPCIÓN DE CADA BIT
RBPU: Habilitación de las resitencias de pull-up del PORTB. Cuando un
terminal se utiliza como entrada, el mismo debe tener un nivel de tensión de
VDD (1 lógico) o 0 Vcc (0 lógico). Para fijar la tensión a uno de éstos niveles
debe conectarse, en cada entrada, una resistencia. En el caso del PORTB,
40
los PIC16F87X tienen incorporadas resistencias de pull-up (fijan la tensión en
VDD).
RBPU=1: Resistencias de pull-up habilitadas.
RBPU=0: Resistencias de pull-up inhabilitadas.
Los demás bits se relacionan con las interrupciones.
REGISTRO INTCON
Contiene una serie de bits relacionados con las interrupciones. Todos
los bits del registro se pueden leer o escribir desde el software. (Ver
Interrupciones para más detalles)
PCL Y PCLATH
El contador de programa (PC) indica en todo momento la próxima
instrucción a ejecutarse. Es un registro de 13 bits. Los 8 bits menos
significativos se encuentran en el registro PCL (se puede leer y escribir). Los
5 bits más significativos (PCH) no pueden ser modificados o leidos
directamente Todas las modificaciones sobre PCH se hacen a través del
registro PCLATH.
La posibilidad de alterar el valor de PC, es una herramienta que,
utilizada con cuidado puede resultar muy poderosa.
41
FSR E INDF - DIRECCIONAMIENTO INDIRECTO
El registro INDF (que no está implementado físicamente) se utiliza
junto con FSR para el direccionamiento indirecto.
Cuando se modifica el valor de INDF, se modifica también el valor del
registro al que apunta FSR.
MEMORIA EEPROM
El PIC16F873 tiene 128 registros de memoria de uso general del tipo
EEPROM. El contenido de estos registros no se borra cuando se quita la
alimentación al circuito. La información almacenada se mantiene inalterable
durante años.
REGISTROS ESPECIALES UTILIZADOS PARA LEER Y ESCRIBIR EN LA
MEMORIA EEPROM
La memoria EEPROM se puede leer o escribir durante la operación
normal. Esta memoria no está mapeada directamente en la memoria de
datos. Para acceder a alguno de los 128 registros EEPROM de 8 bits, debe
utilizarse un procedimiento de acceso indirecto que involucra a 4 registros
especiales:
EEADR: Dirección del registro EEPROM (00H-7FH)
EEDATA: Contenido del registro EEPROM.
42
EECON1: Contienen una serie de bits de control.
EECON2: Se utiliza exclusivamente en la rutina de escritura.
EL PROCESADOR O CPU
El procesador responde a la arquitectura RISC, que se identifica
porque el juego de instrucciones se reduce a 35, donde la mayoría se
ejecutan en un ciclo de reloj, excepto las instrucciones de salto que necesitan
dos ciclos.
La ALU (Unidad Aritmético Lógica), ubicada dentro del procesador
realiza las operaciones lógicas y aritméticas con dos operandos, uno que
recibe desde el registro W (registro de trabajo) y otro que puede provenir de
cualquier registro interno.
MEMORIA DE PROGRAMA
La memoria de programa es del tipo flash. La memoria flash es una
memoria no volátil, de bajo consumo que se puede escribir y borrar
eléctricamente. Es programable en el circuito como la EEPROM pero de
mayor densidad y más rápida.
El PIC 16F873 posee una memoria de 4K palabras, es decir permite
hasta 4096 instrucciones de 14 bits cada una.
MEMORIA DE DATOS
Se encuentra en dos zonas bien diferenciadas:
43
MEMORIA TIPO RAM (SRAM)
Se divide en 4 bancos o paginas de 128 registros de 8 bits cada uno,
aunque no todos los registros están implementados físicamente. Los
registros se dividen en:
• Registros especiales: Cada uno tiene una función específica que se
analizará más adelante.
• Registros de uso general: Son los registros que le permiten al usuario
almacenar valores temporalmente (variables) durante la ejecución del
programa.
MEMORIA DE DATOS TIPO EEPROM
Esta compuesta de por 128 registros de 8 bits cada uno. Este tipo de
memoria es capaz de guardar la información mas de 40 años.
2.12 MAX-232 (TRANSMISOR/RECEPTOR MULTICANAL RS-232 CON
ALIMENTACION DE +5V)
En el envío de niveles lógicos (bits) a través de cables o líneas de
transmisión necesita la conversión a voltajes apropiados. En un circuito
lógico o con microprocesador se trabaja con niveles de voltaje inferiores a
0.8V para representar al voltaje lógico 0 y voltajes mayores a 2V para
representar el voltaje lógico 1. Por lo general, cuando se trabaja con familias
44
TTL y CMOS se asume que un “0” es igual a cero voltios y un “1” a +5
voltios.
Cuando la distancia de comunicación que se pretende hacer es muy
corta, se pueden conectar directamente el transmisor y el receptor para hacer
la transferencia de bits usando los mismos niveles lógicos tradicionales de 0
y 5 voltios. Pero cuando la distancia es mayor de 2 metros, la información
digital se afecta notablemente por la acción de atenuación en el cable, el
ancho de banda del mismo y la velocidad de comunicación. La interfase RS-
232 es una de las diferentes soluciones que hay para esta situación,
básicamente consiste en cambiar los niveles lógicos de la salida o envío de 0
y 5 voltios a dos niveles de voltaje de mayor magnitud; uno positivo (+V) para
representar el “0” lógico y uno negativo (-V) para representar el “1” lógico. En
el equipo receptor de la información se realiza el proceso contrario, los
niveles positivos y negativos que llegan se convierten a los niveles lógicos
tradicionales de 0 y 5 voltios.
En la práctica, los niveles de voltaje lo determinan las fuentes de
alimentación que se apliquen a los circuitos de la interfase, los niveles mas
comunes son de ±12 voltios hasta ±15 voltios. Una interfase RS-232, esta
compuesta por el circuito transmisor que convierte la señal de bajo voltaje del
equipo lógico a los niveles de voltaje alto que se necesitan en la línea de
transmisión y un receptor que realiza la función inversa. En los manuales de
45
circuitos integrados se llaman line drivers y line receivers, respectivamente, a
los circuitos que ejecutan esta conversión de niveles de voltaje.
Por lo general, se utiliza con las interfases RS-232 cable multipar o
cable ribbon con un solo conductor como referencia de tierra. El ruido que se
capta a través de la línea aun puede originar problemas. Para reducir el
efecto se suele conectar un condensador en paralelo con la salida del circuito
transmisor. Según la reglamentación, los estándares de la interfase RS-232
permiten una separación máxima de 15m.
Cuando se trabaja con interfase RS-232, es necesario dotar de fuente
doble polaridad (+V y –V) tanto al transmisor como al receptor. El circuito
especial que se presenta, soluciona esta situación. El MAX-232 de MAXIM
INTEGRATED PRODUCTS de Sunnyvele, California que se muestra a
continuación (ver Figura No.7) pertenece a la familia de line drivers/receivers
para interfase RS-232, según la norma EIA-132EV28/V.24, en aquellas
aplicaciones donde no se dispone de fuentes dobles ±12 voltios.
Figura No.7
Diagrama de pines del MAX-232
Fuente: www.maxin-ic.com. Hoja técnica del MAX-232.p.2
46
2.13 LOGICA DIFUSA
Calvo (1997), afirma que la lógica difusa (Fuzzy Logic) ha surgido
como una herramienta lucrativa para el control de subsistemas y procesos
industriales complejos, así como también para la electrónica de
entretenimiento y hogar, sistemas de diagnostico y otros sistemas expertos.
Aunque la lógica difusa se invento en Estados Unidos el crecimiento
rápido de esta tecnología ha comenzado desde Japón y ahora nuevamente
ha alcanzado USA y también Europa.
La lógica difusa es básicamente una lógica multievaluada que permite
valores intermedios para poder definir evaluaciones convencionales como
si/no, verdadero/falso, negro/blanco, etc. Las nociones como “mas bien
caliente” o “poco frio” pueden formularse matemáticamente y ser procesados
por computadoras.
De esta forma se ha realizado un intento de aplicar una forma mas
humana de pensar en la programación de computadoras. La lógica borrosa
se inicio en 1965 por Lofti A. Zadeh, profesor de ciencia de computadoras en
la Universidad de Berkeley, cuando publico un articulo titulado “Conjuntos
Difusos” en la revista científica Informatizan and Control. En este artículo
describió a través de la teoría matemática, como poder trabajar
matemáticamente con expresiones imprecisas, tal como lo hace el ser
humano.
47
2.14 CONJUNTO FUZZY
Calvo (1997), también expone que la noción mas básica de sistemas
fuzzy es un subconjunto fuzzy. En primer lugar se considera un conjunto X
con todos los números reales entre 0 y 10 que son llamados el universo de
discurso. Ahora se define un subconjunto A de X con todos los números
reales en el rango entre 5 y 8.
A= [5,8]
Ahora se muestra el conjunto A por su función característica, es decir,
esta función asigna un número 1 o 0 al elemento en X, dependiendo de si el
elemento esta en el subconjunto A o no. Esto conlleva al grafico siguiente
(ver Grafico No.1).
Grafico No.1
Asignación de 1 o 0 al elemento perteneciente al Subconjunto A
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.2
0 5
1
I
8 x
48
Se pueden interpretar los elementos que se les ha asignado el numero
1 como los elementos que están en el conjunto A y los elementos que se les
ha asignado el numero 0 como los elementos que no están en el conjunto A.
Este concepto es suficiente para muchas áreas de aplicación, pero se
pueden encontrar fácilmente situaciones donde carece de flexibilidad. Para
comprender este concepto se presenta este ejemplo:
Se quiere describir el conjunto de gente joven. Mas normalmente se
puede denotar:
B={conjunto gente joven}
Como por lo general la edad comienza en 0, el rango mas inferior de
este conjunto esta claro. El rango superior, por otra parte, es mas bien
complicado de definir. Como un primer intento se coloca el rango superior 20
años, por lo tanto se define B como un intervalo denominado.
B={0,20}
Ahora la pregunta es ¿Por qué alguien es en su cumpleaños 20 joven
y al día siguiente no? Obviamente este es un problema estructural, porque si
se mueve el límite superior del rango desde 20 a un punto arbitrario se puede
plantear la misma pregunta.
Una manera más natural de construir el conjunto B estaría en suavizar
la separación estricta entre el joven y el no joven. Se hará esto para permitir
no solamente la (crispada) decisión “el/ella SI esta en el conjunto de gente
joven” o “el/ella NO esta en el conjunto de gente joven”, sino también las
49
frases mas flexibles como “ el/ella SI pertenece un poquito mas al conjunto
de gente joven” o “ el/ella NO pertenece aproximadamente al conjunto de
gente joven”
Se pasa a continuación a mostrar como un conjunto fuzzy que permite
definir una noción como “el/ella es un poco joven”.
Tal y como se constata arriba se pueden usar conjuntos fuzzy para
hacer computadoras mas sabias, y ahora se tiene que codificar la idea mas
formalmente. En este ejemplo primero se codifican todos los elementos del
Universo de Discurso con 0 y 1. Una manera de generalizar este concepto
esta en permitir mas valores entre 0 y 1 de hecho, se permiten infinitas
alternativas entre 0 y 1, denominando el intervalo de unidad Yo=[0,1].
La interpretación de los números ahora asignados a todos los
elementos del Universo de Discurso es algo más difícil. Por supuesto, el
numero 1 asignado a un elemento significa que el elemento esta en el
conjunto B y 0 significa que el elemento no esta definitivamente en el
conjunto B. El resto de valores significan una pertenencia gradual al conjunto
B.
Para ser mas concretos se muestra ahora en la figura (ver Grafico
No.2) el conjunto de gente joven de forma similar al primer ejemplo por su
función característica.
50
Grafico No.2
Función Característica del conjunto de gente joven
Fuente: Calvo, Oscar (1997). Sistema de Control basados en Lógica
Difusa. p.4
De esta forma unos 25 años de edad todavía seria joven al grado de
50 por ciento.
Ahora se sabe que es un conjunto fuzzy. Pero que se puede hacer con
el?
2.15 OPERACIONES CON CONJUNTOS FUZZY
Ahora que se tiene una idea de lo que son conjuntos fuzzy, se pueden
introducir las operaciones básicas sobre conjuntos fuzzy. Parecido a las
operaciones sobre conjuntos booleanos también se pueden interseccionar,
unificar y negar conjuntos fuzzy. En su primer articulo sobre conjuntos fuzzy,
L.A Zadeh sugirió el operador mínimo para la intersección y el operador
0 30 25
1
µB
20
0.5
edad
51
máximo para la unión de dos conjuntos fuzzy. Es fácil ver que estos
operadores coinciden con la unificación booleana e intersección si nosotros
únicamente consideramos los grados miembros 0 y 1.
A fin de aclarar esto, se muestran varios ejemplos. Sea A un intervalo
fuzzy entre 5 y 8 y B un numero fuzzy entorno a 4. Los gráficos
correspondientes se muestran en los siguientes gráficos (ver Grafico No.3 y
No.4).
Grafico No.3
Intervalo Fuzzy entre 5 y 8
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.5
0 5 8
1
µA
x
52
Grafico No.4
Numero Fuzzy entorno a 4
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.6
El siguiente grafico (ver Grafico No.5) muestra la operación AND (Y)
del conjunto fuzzy A y el numero fuzzy B.
Grafico No.5
Operación AND
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.6
0 4
1
µB
x
5 8
µA?
0 4
1
µB
x
53
La operación OR (O) del conjunto fuzzy B y de negación del conjunto
A se muestran en los gráficos siguientes (ver Gráficos No.6 y No.7).
Grafico No.6
Operación OR
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.7
Grafico No.7
Negación del conjunto A
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.7
5 8
µA?
0 4
1
µB
x
0 5 8
1
µA
x
54
EL CONTROL FUZZY (CONTROL DIFUSO)
Los controladores fuzzy son las aplicaciones más importantes de la
teoría difusa. Ellos trabajan de una forma bastante diferente a los
controladores convencionales; el conocimiento experto se usa en vez de
ecuaciones diferenciales para describir un sistema. Este conocimiento puede
expresarse de una manera muy natural, empleando las variables lingüísticas
que son descritas mediante conjuntos fuzzy.
Ejemplo: El péndulo invertido
El problema esta en equilibrar una varilla sobre una plataforma móvil
que puede moverse en dos únicas direcciones, a la izquierda o a la derecha.
Ante todo, se tiene que definir (subjetivamente) cual es la velocidad del
andén: alta, baja, etc. En el grafico a continuación (ver Grafico No.8) aparece
la definición de velocidades del péndulo. Esto se hace para especificar las
funciones pertenecientes al conjunto fuzzy.
• Negativo alto (celeste)
• Negativo bajo (verde)
• Cero (rojo)
• Positivo bajo (azul)
• Positivo alto (morado)
55
Grafico No.8
Definición de las velocidades del Péndulo
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.9
Lo mismo se hace para el ángulo entre la plataforma y la varilla y
también para la velocidad angular de este ángulo (ver Gráficos No.9 y No.10)
Positivo alto Positivo bajo Negativo bajo Negativo alto
Velocidad Angular 0 cero Velocidad
Actual Max.
Velocidad Min.
Velocidad
1
56
Grafico No.9
Definición de Angulo entre Plataforma y Varilla
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Grafico No.10
Definición de la Velocidad Angular
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.10
Positivo alto Positivo Negativo Negativo
Angulo 0 cero max. Angulo
-max. Angulo
1
1 Positivo alto Positivo bajo Negativo Negativo alto
Velocidad Angular 0 cero Max.
Velocidad -Max. Velocidad
57
Apréciese que, para hacerlo mas fácil, se supone al principio que la
varilla esta en una posición cercana a la central para un ángulo mayor de 45º
en cualquier dirección no pueda por definición ocurrir.
Ahora se darán variar reglas para saber que hacer en situaciones
concretas:
Considere por ejemplo: la varilla esta en posición central (el ángulo es
cero) y no se mueve (la velocidad angular es cero). Obviamente esta es la
situación deseada y por lo tanto no se tiene que hacer nada (la velocidad es
cero).
Se considera otro caso: el polo esta en la posición central como antes,
pero esta en movimiento a baja velocidad en la dirección positiva.
Naturalmente se tendría que compensar el movimiento de la varilla
moviendo la plataforma en la misma dirección a baja velocidad. De esta
forma se han constituido dos reglas que pueden ponerse en una forma mas
formalizada como esta:
• Si el ángulo es cero y la velocidad angular es cero entonces la
velocidad será cero.
• Si el ángulo es cero y la velocidad angular es positiva baja entonces la
velocidad será positiva baja.
Se pueden resumir todas las reglas aplicables en el siguiente cuadro (ver
Cuadro No.1).
58
Cuadro No.1
Resumen de Reglas
Velocidad NA NB C PB PA
V NA NA
NB NB C
A C NA NB C PB PA
N PB C PB
GPA PA
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.11
Donde NA es una abreviatura para negativa alta, NB para negativa
baja entre otros.
A continuación se muestra como estas reglas pueden aplicarse con
valores concretos para el ángulo y la velocidad angular. Para ello se van a
definir dos valores explícitos para el ángulo y la velocidad angular para
operar con ellos como se muestran en los gráficos (ver Gráficos No.11 y
No.12).
59
Grafico No.11
Valor actual del Angulo
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.12
Positivo alto Positivo bajo Negativo bajo Negativo alto
Angulo 0 cero max. Angulo -max. Angulo
1
Angulo actual
60
Grafico No.12
Valor actual de la Velocidad Angular
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.13
Ahora se muestra como aplicar las reglas a esta situación real.
Si el ángulo es cero y la velocidad angular es cero entonces la
velocidad será cero.
Esta es la variable lingüística ángulo donde se centra el conjunto
“cero’’ y el ángulo actual, se muestra en el grafico siguiente (ver Grafico
No.13).
Positivo alto Positivo bajo Negativo Negativo alto
Vel. Angular 0 cero max. Velocidad
-max. Velocidad
1
Velocidad actual
61
Grafico No.13
Variable Lingüística “Angulo”
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.13
Se puede notar en el siguiente grafico (ver Grafico No.14), que el valor
real pertenece al conjunto fuzzy en un grado de 0.75.
Grafico No.14
Valor actual del Angulo
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.14
0 Angulo actual
1
Angulo
0
Angulo actual
1 Angulo
0.75
62
Ahora se muestra en el Grafico No.15 la variable lingüística “velocidad
angular” donde es centrado en el conjunto fuzzy “cero” y el valor actual de la
velocidad angular.
Grafico No.15
Variable Lingüística “Velocidad Angular”
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.15
Se puede notar en el siguiente grafico (ver Grafico No.16) que el valor
real pertenece al conjunto fuzzy “cero” en un grado de 0.4.
0 Velocidad Angular actual
1
Angulo
63
Grafico No.16
Valor real de la Velocidad Angular
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.15
Como las dos partes de la condición de la regla están unidas por una
Y (operación lógica AND) se calcula el min (0.75, 0.4)=0.4 y se corta el
conjunto fuzzy “cero” de la variable velocidad a este nivel según la regla (ver
Grafico No.17).
Si el ángulo es cero y la velocidad angular es negativa baja entonces
la velocidad será negativa baja.
Si el ángulo es cero y la velocidad angular es positiva baja entonces la
velocidad será positiva baja.
Si el ángulo es positivo bajo y la velocidad angular es negativa baja
entonces la velocidad será cero:
0 Velocidad Angular actual
1
Angulo
0.4
64
Grafico No.17
Operación AND entre el Angulo y la Velocidad
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.15
Estas cuatro reglas solapadas desembocan en un resultado único, el
cual se muestra en el grafico siguiente (ver Grafico No.18)
Velocidad Angular actual
1 Angulo
0.4
0
0 Angulo actual
1 Angulo
0.75
0 Angulo actual
1 Angulo
0.4 min
65
Grafico No.18
Resumen de las cuatro reglas
Fuente: Calvo, Oscar (1997). Sistemas de Control Basados en Lógica
Difusa. p.17
El resultado del controlador fuzzy es un conjunto fuzzy (de velocidad),
así que se tiene que escoger un valor representativo como salida final. Hay
varios métodos heurísticos (métodos de claridad o defuzzification) uno de
ellos es tomar el centro de gravedad del conjunto fuzzy.
2.16 ARQUITECTURA DE UN CONTROLADOR BASADO EN LOGICA
DIFUSA
Rojas (1999) quien presenta a través de la Figura No.8 la
configuración básica de un controlador basado en lógica difusa (CPL), el cual
Velocidad
El Resultado 0 cero
1
66
comprende cuatro principales componentes: interfaz de fusificación, una
base de conocimiento, una lógica de toma de decisiones o de inferencia y
una interfaz de Defusificación.
Figura No.8
Configuración básica de un controlador basado en Lógica Difusa
Fuente: Rojas, Esteban (1999). Automatización y Control. p.3
La interfaz de fusificación envuelve las siguientes funciones:
• Medida de los valores de las variables de entrada.
Base de Datos
Base de Reglas
Base de Conocimiento
Interfaz de Defusificación
Procedimiento de Inferencia
Interfaz de Fusificación
Actuador Procesos Sensores
67
• Desarrollar el escalamiento (normalización), que transfiere los rangos
de los valores de las variables de entrada en el correspondiente universo de
discurso.
• Desarrolla la función de fusificación que convierte los datos de entrada
en valores lingüísticos apropiados, los cuales pueden ser vistos como
etiquetas de conjuntos difusos.
• La base de conocimiento comprende un conocimiento del dominio de
la aplicación y la meta del control que acompaña. Esto consiste de una “base
de datos” y una base de reglas (difusas) lingüísticas de control.
• La base de datos provee definiciones necesarias, las cuales son
usadas para definir las reglas lingüísticas de control y la manipulación de los
datos difusos en el CLD (Controlador Lógico Difuso).
• La base de reglas caracteriza la meta del control y la estrategia de
control del dominio del experto por el significado de un conjunto de reglas de
control.
• La lógica de toma de decisión, tiene la capacidad de simular las
decisiones hechas por el humano basado en conceptos difusos y de
inferencia de acciones de control difuso empleando implicaciones difusas y
las reglas de inferencia de lógica difusa.
La interfaz de Defusificación desarrolla las siguientes funciones:
68
• Un escalamiento, el cual convierte el rango de valores de las variables
de salidas en el correspondiente universo de discurso.
• Defusificación, lo cual produce una acción de control no difuso de la
acción de control difusa inferida.
2.17 LA ESTRATEGIA DE FUSIFICACION
Rojas (1999), establece que la fusificación esta relacionada con lo
vago y lo impreciso del lenguaje natural. Esto es una valoración subjetiva, la
cual transforma una medición en una valoración del valor subjetivo, y por lo
tanto, esto podría ser definido como una correspondencia de un espacio de
entrada observado a conjuntos difusos en el universo de cierta entrada la
fusificación juega un papel importante en el manejo de la información incierta,
la cual puede ser por naturaleza objetiva o subjetiva.
En aplicaciones de control, los datos observados son usualmente
precisos. Dado que la manipulación de los datos en teoría de conjunto difuso,
la fusificación es necesaria en una primera etapa. La experiencia en el diseño
de un CLD (Controlador Lógico Difuso), sugiere los siguientes pasos para el
trato de la fusificación.
Un operador de fusificación conceptualmente convierte un valor
preciso en un sigleton difuso con un cierto universo de discurso.
69
Básicamente un sigleton difuso es un valor exacto y por lo tanto la
fusificación no produce difusión en este caso. Esto interpreta una entrada X0
como un conjunto difuso A con la función de pertenencia µA(x) igualmente a
cero excepto en e l punto X0, en el cual µA(x0) es igual a uno.
Cuando el dato observado es perturbado por ruido aleatorio, un
operador de fusificación podría convertir el dato probabilístico en números
difusos, esto es, data (probabilística) difusa. De esta, la eficiencia
computacional es mejorada dado que los números difusos son mucho más
fáciles de manipular que las variables aleatorias.
En sistemas de gran escala y otras aplicaciones, algunas
observaciones relacionadas con el comportamiento de tales sistemas son
exactas, mientras otros son medibles solo en el sentido estadístico y hay
algunos híbridos que requieren tanto modo de caracterización probabilística
como deterministico. La estrategia de fusificación en este caso es usar el
concepto de números híbridos, los cuales involucra incertidumbre (numero
difuso) y aleatoriedad (números aleatorios).
2.18 BASE DEL CONOCIMIENTO
La base del conocimiento de un CLD según Rojas (1999), comprende
dos componentes llamados base de datos y base de reglas de control difuso.
Los conceptos asociados con la base de datos son usados para
caracterizar las reglas de control difusas y la manipulación de los datos
70
difusos en un controlador lógico difuso. Esos conceptos son definidos
subjetivamente, basados en la experiencia y en el juicio del ingeniero, en
este sentido se debe notar que escoger las correctas funciones de
pertenencia de un conjunto de términos que juegan un papel importante en la
realización de una aplicación.
Aspectos importantes relacionados con la construcción de la base de
datos de un controlador difuso (CLD):
• Discretización/Normalización del Universo de Discurso: La
representación de información incierta con conjuntos difusos trae el problema
de cuantificar dicha información para procesarla en el computador. En
general la representación depende de la naturaleza del universo de discurso.
Si el universo es continuo se puede formar un universo de discurso en un
CLD que puede ser discreto o continuo. Si el universo es continuo se puede
formar un universo discreto por Discretización del universo continuo.
Además, un universo continuo puede ser normalizado.
• Desratización de un universo de discurso: Discretizar un universo de
discurso frecuentemente se refiere a cubanización. En efecto, la cuantización
discretiza un universo en cierto numero de segmentos (niveles de
cuantización). Cada segmento es etiquetado con un elemento genérico y
forma un elemento discreto. Luego, un conjunto difuso es definido asignando
valores de grado de pertenencia a cada elemento genérico del nuevo
71
universo discreto; con lo que se puede construir una tabla de búsqueda
basada en el universo discreto, lo cual define la salida de un controlador para
todas las posibles combinaciones de las señales de entrada, esto se
procesaría fuera de línea para recortar el tiempo de ejecución del
procesador. En el caso de un controlador lógico difuso con universo continuo,
el número de niveles de cuantización debe ser suficientemente grande para
proveer una aproximación adecuada y también debe ser pequeña para
ahorrar memoria de almacenamiento. El escoger los niveles de cuantización
tiene una influencia esencial en el grado de precisión con que puede
obtenerse un control.
Para el propósito de la cuantización se necesita un escalamiento, lo
cual sirve para transformar las variables medidas en valores en el universo
discreto. La correspondencia puede ser uniforme (lineal), no uniforme (no
lineal) o ambos. Por otro lado, la escogencia de los niveles de cuantificación
refleja algún conocimiento previo. En general, debido a la cuantificación, el
desarrollo de un CLD es menos sensitivo a pequeñas desviaciones en los
valores de las variables de estado del proceso.
• Normalización de un universo de discurso: La normalización de un
universo de discurso requiere una discretización del universo de discurso en
un número finito de segmentos, con una correspondencia de cada segmento
en un apropiado segmento del universo normalizado. En este ajuste un
72
conjunto difuso es entonces definido asignando una función explicita para la
función de pertenencia. La normalización de un universo continuo también
envuelve un conocimiento previo del estado de entrada/salida; de igual forma
la correspondencia puede ser uniforme, no uniforme o ambos.
• Partición Difusa del Espacio de Entrada-Salida: Una variable
lingüística en el antecedente de una regla de control difuso forma un espacio
de entrada difuso con respecto a un cierto universo de discurso, mientras que
en la consecuencia de la regla forma un espacio de salida difuso. En general,
una variable lingüística es asociada con un conjunto de términos, con cada
término en el conjunto de términos definidos sobre el mismo universo de
discurso. Entonces, una partición difusa determina cuantos términos podrían
existir en un conjunto de términos. Esto es equivalente a encontrar el número
de conjuntos difusos primarios. El número de conjuntos difusos primarios
determina la granularidad del control obtenido con un CLD. Dado que un
universo normalizado implica que el conocimiento del espacio de
entrada/salida vía un escalamiento, se puede lograr un conjunto de términos
simétricos formados. Si este no es el caso, o se usa un universo no
normalizado, los términos podrían no ser asimétricos e irregularmente
distribuidos en el universo. Por lo tanto, el número de conjunto de términos
en el espacio de entrada difuso determina el número máximo de reglas de
control difusas que pueden ser construidas. En el caso de un sistema difuso
73
de dos entradas y una salida, si las cardinalidades de T(x) y T(y) son 3 y 7
respectivamente, el máximo numero de reglas es 3*7=21. Puede notarse que
la partición difusa de un espacio de entrada/salida difuso no es deterministica
y no tiene una solución única. Usualmente, se necesita un procedimiento de
ensayo y error para encontrar la partición difusa optima.
2.19 COMPLETITUD
Intuitivamente, un algoritmo de control difuso debería siempre ser
capaz de inferir una acción apropiada de control para cada estado del
proceso. Esta propiedad es llamada completitud. La completitud de un CLD
se relaciona con su base de datos, base de reglas o ambas.
2.20 ESTRATEGIA DE LA BASE DE DATOS
La estrategia de la base de datos tiene que ver con los soportes sobre
los cuales son definidos los conjuntos difusos primarios. La unión de esos
soportes deberá cubrir el correspondiente universo de discurso. En este
sentido la completitud da el grado de creencia en las reglas de control difuso
relacionadas con el CLD.
2.21 ESTRATEGIA DE BASE DE REGLAS
La estrategia de la base de reglas tiene que ver con las mismas reglas
de control difuso. La propiedad de completitud se incorpora a las reglas de
74
control difuso a través de la experiencia de diseño y es conocimiento del
ingeniero. Se añade una regla siempre que una condición no es incluida en la
base de reglas ó siempre que el grado de acople parcial entre algunas
entradas y las condiciones difusas predefinidas es menos que cierto nivel. Lo
primero muestra que no resultara acción de control, lo ultimo indica que no se
disparara ninguna regla dominante.
2.22 FUNCION DE PERTENENCIA DE UN CONJUNTO DIFUSO
Hay dos métodos usados para la definición de conjuntos difusos,
dependiendo de ya sea que el universo de discurso sea discreto o continuo:
a) numérico y b) funcional.
Definición numérica: En este caso, el grado de la función de
pertenencia de un conjunto difuso es representado como un vector de
números cuya dimensión depende del grado de discretización.
Definición funcional: Una definición funcional expresa la función de
pertenencia de un conjunto difuso en una forma funcional, típicamente una
función en forma de campana, forma de triangulo, forma de trapecio, entre
otros. Tales funciones se usan en controlador lógico difuso porque ellas se
pueden manipular a través de su uso de aritmética difusa, la definición
funcional puede ser fácilmente adaptada a un cambio en la normalización de
un universo.
75
Tanto la definición numérica como la definición funcional pueden ser
usadas para asignar el grado de pertenencia de los conjuntos difusos
primarios. La escogencia del grado de pertenencia esta basada sobre el
criterio subjetivo de la decisión, en particular si la data medida es perturbada
por ruido, las funciones de pertenencia deberían ser lo suficientemente
anchas para reducir la sensibilidad al ruido. Esto aumenta la imprecisión de
lo difuso a más exactamente la caracterización y pertenencia, la cual afecta
la robustez de un CLD.
2.23 BASE DE REGLAS
Un sistema difuso esta caracterizado por un conjunto de declaraciones
lingüísticas basadas en el conocimiento de un experto. El conocimiento de un
experto esta usualmente en forma de reglas “si (premisa) – entonces
(consecuente)”, las cuales son fácilmente construidas por declaraciones
condicionales difusas en lógica difusa. La colección de reglas de control
difusas que son expresadas como declaraciones condicionales difusas forma
la base de reglas o el conjunto de reglas de un CLD.
El escoger las variables de estado del proceso (entradas) y las
variables de control (salidas) de las reglas de control difuso.
Las reglas de control difuso son formuladas más en términos
lingüísticos que en términos numéricos. Una apropiada selección de las
variables de estado del proceso y las variables de control es esencial para la
76
caracterización de la operación de un sistema difuso. Por lo tanto, la
selección de las variables lingüísticas tiene un efecto sustancial sobre el
funcionamiento de un CLD. Como se dijo, la experiencia y el conocimiento
del ingeniero juegan un rol importante durante esta etapa de selección. En
particular el escoger las variables lingüísticas y su función de pertenencia
tienen una fuerte influencia sobre la estructura lingüística de un CLD.
Típicamente, las variables lingüísticas en un CLD son el estado, el error de
estado, la derivada del error de estado, la integral de error de estado, entre
otros.
2.24 DERIVACION Y FUENTE DE LAS REGLAS DE CONTROL DIFUSO
Hay cuatro modos para la derivación de las reglas de control difuso.
Esos cuatro modos no son mutuamente excluyentes y probablemente se
necesite combinarlos para obtener un método efectivo para la derivación de
las reglas de control difuso.
2.25 CONTROLADOR LOGICO DIFUSO BASADO EN LA EXPERIENCIA
DEL EXPERTO Y EN EL CONOCIMIENTO DE LA INGENIERIA DE
CONTROL
Las reglas de control difuso tienen la forma de, declaraciones
condicionales difusas que relacionan las variables de estado en el
77
antecedente o premisa con las variables de control del proceso en la
consecuencia. En esta conexión, en la cual basamos nuestras decisiones es
de naturaleza lingüística más que numérica. Visto desde esta perspectiva, las
reglas de control difuso proveen un marco de trabajo natural para la
caracterización del comportamiento humano y el análisis de decisiones.
La formulación de reglas de control difusas puede ser lograda por
medio de dos métodos heurísticos. Uno de los más comunes involucra una
verbalización introspectiva de la experiencia humana. Un ejemplo típico de tal
verbalización es el manual de operación de una planta. Otro método incluye
interrogación a expertos y operadores usando un cuestionario
cuidadosamente organizado (entrevista estructurada). De esta manera, se
puede formar un conjunto inicial de reglas de control difuso para el dominio
de una aplicación particular. Para lograr un funcionamiento óptimo,
usualmente es necesario un procedimiento de entonación mediante la
técnica de ensayo y error.
2.33 CONTROLADOR LOGICO DIFUSO BASADO EN LAS ACCIONES
DE CONTROL DEL OPERADOR
En muchos sistemas de control industrial, la relación de entrada/salida
no es conocida con suficiente precisión para hacer posible el uso de la teoría
de control clásico para el modelaje y simulación de los procesos. Sin
78
embargo, la habilidad del operador humano permite operar tales sistemas
exitosamente sin tener ningún modelo cuantitativo en mente. En efecto, un
operador emplea conscientemente o inconscientemente un conjunto de
reglas difusas para controlar el proceso. En la práctica, tales reglas pueden
ser deducidas de la observación de las acciones de control del humano en
término de la data de operación de entrada/salida.
2.34 CONTROLADOR LOGICO DIFUSO BASADO EN EL MODELO
DIFUSO DE UN PROCESO
En el método lingüístico, la descripción lingüística de las
características dinámicas de un proceso controlado puede ser vista como un
modelo difuso del proceso. Basado en el modelo difuso, podemos generar un
conjunto de reglas de control difusas para lograr un funcionamiento óptimo
de un sistema dinámico. El conjunto de reglas de control difusas forma la
base de reglas de un CLD. Aunque este método es algo mas complicado,
este logra un mejor funcionamiento en integridad y provee una estructura
más manejable para el tratamiento teórico del CLD. Sin embargo, este
método para el diseño de un CLD no ha sido aun completamente
desarrollado.
79
2.35 CONTROLADOR LOGICO DIFUSO BASADO EN LA
JUSTIFICACION DE LAS REGLAS DE CONTROL DIFUSAS
Hay dos métodos principales para la derivación de las reglas de
control difusas. El primero es un método heurístico en el cual se forma una
colección de reglas de control difusas por análisis del comportamiento de un
proceso controlado. Las reglas de control son derivadas de tal forma que la
desviación de un estado deseado pueda ser corregida y se pueda lograr el
objetivo de control. La derivación es la naturaleza puramente heurística y se
apoya en el conocimiento cualitativo del comportamiento del proceso. El
segundo método es básicamente deterministico, el cual puede determinar
sistemáticamente la estructura lingüística y/o parámetros de las reglas de
control difusa que satisfacen los objetivos y restricciones de control.
La noción básica de esos métodos es llamada identificación
difusa. Como cualquier identificador convencional, la identificación difusa
comprende dos fases; es decir; identificación de la estructura y la estimación
de parámetros.
80
2.36 TIPOS DE REGLAS DE CONTROL DIFUSO
Dependiendo de su naturaleza, corrientemente se usan en el diseño
de un CLD dos tipos de control difuso, por evaluación de estado y por
evaluación del objeto.
Las reglas de control difuso por evaluación del estado, se refiere a la
evaluación del estado del proceso en un tiempo t y computan la acción de
control difusa como una función de (x,….., y) y las reglas de control en el
conjunto de reglas.
En cuanto a las reglas pro-evaluación del objeto, estas son derivadas
de la habilidad de la experiencia del operador y estas predicen las acciones
de control presentes y futuras y evalúan los objetivos de control esto es
llamado “control difuso predictivo”.
2.37 LOGICA DE TOMA DE DECISIONES
La lógica de toma de decisiones tiene la capacidad de tomar las
decisiones simulando el comportamiento humano, basado en los conceptos
difusos e infiriendo acciones de control difuso empleando implicaciones y
reglas de inferencia en lógica difusa.
81
2.38 MECANISMOS DE INFERENCIA
La toma de decisiones en los CLD esta relacionado con lógica difusa y
razonamiento aproximado. En lógica difusa y razonamiento aproximado
existen dos reglas de inferencia importantes llamadas el modus pones
generalizado (GMP) y en modus tollens generalizado (GMT).
• Premisa 1: X es A’
Premisa 2: si X es A entonces Y es B
Consecuencia: Y es B’
• Premisa 1: Y es B’
Premisa 2: si X es A entonces Y es B
Consecuencia: X es A’
La inferencia difusa basada en las reglas de inferencia composicional
para razonamiento aproximado sugerida por Zadeh en 1973. Los conjuntos
A, A’, B, B’ son utilizados como valores lingüísticos para las variables X y Y
en vez de los conjuntos precisos como en lógica clásica.
La regla de inferencia GMP, que se reduce a modus ponens cuando
A’=A y B’=B es un proceso de inferencia directo y es particularmente útil para
los controladores difusos.
La regla de inferencia GMT es un proceso de inferencia reverso el cual
es particularmente utilizado, en los sistemas expertos.
82
Los mecanismos de inferencia empleados en un CLD son
generalmente mucho más simples que los que se usan en un sistema
experto típico, dado que en un CLD el antecedente de una regla no proviene
de la consecuencia de otra. En otras palabras en un CLD no se emplean
mecanismos de inferencia encadenados dado que las acciones de control
están basadas en GMP.
2.39 ESTRATEGIA DE DEFUSIFICACION
La Defusificación consiste en hacer la correspondencia del espacio de
control difuso sobre el universo de discurso de salida en el espacio escalar
de acciones de control; es decir; la transformación difuso-escalar.
Normalmente, se puede utilizar uno de los siguientes métodos para
lograr este objetivo:
• Método de criterio máximo: Este método produce el punto en el cual la
distribución de posibilidades de la acción de control alcanza el valor máximo.
• Método de media de máximo: Este método genera acciones de control
que representan el valor medio de todas las acciones de control cuyas
funciones de pertenencia alcanzan el máximo. En el caso del universo
discreto puede ser representado por:
Zo=? nj=1 Wj/n
83
Donde Wj es el valor del soporte donde la función de pertenencia alcanza su
máximo de valores del soporte.
• Método del centroide o centro de área: Este método es el mas
comúnmente usado y su estrategia genera el centro de gravedad de la
función de distribución de posibilidades de acciones de control en el caso del
universo discreto:
Z0? µz(Wj)Wj/? nj=1µz(Wj)
Donde n es el número de niveles de cuantización de salida.
2.40 SISTEMAS DE CONTROL EN EL ESPACIO DE ESTADOS
Para este tipo de sistemas, comúnmente se utiliza un método
conocido como técnica de ubicación, o de asignación de polos; para esto se
toman las variables de estados medibles y disponibles para la
realimentación. El sistema considerado es de estado completamente
controlable, los polos del sistema de lazo cerrado se pueden ubicar en
cualquier posición deseada mediante una realimentación del estado a través
de una matriz de ganancias de la realimentación de estado.
La técnica de diseño actual empieza con la determinación de los polos
de lazo cerrado deseados a partir de la respuesta transitoria y/o los
requerimientos de la respuesta en frecuencia, tales como la velocidad, el
84
factor de amortiguamiento relativo, o el ancho de banda, al igual que los
requerimientos en estado estable.
Si se decide que los polos de lazo cerrado deseados estén es s=µ1,
s=µ2,….,s=µn, seleccionando una matriz de ganancias apropiada para una
realimentación del estado, es posible obligar al sistema para que tenga los
polos en lazo cerrado en las posiciones deseadas, siempre y cuando el
sistema original sea de estado completamente controlable.
La señal de control es un escalar y se demostrara que una condición
necesaria y suficiente para que los polos en lazo cerrado se ubiquen en
cualquier posición arbitraria en el plano s es que el sistema sea de estado
completamente controlado. Se analizaran tres métodos para determinar la
matriz de ganancias de realimentación requerida.
Se puede observar que, cuando la señal de control es una cantidad
vectorial, los aspectos matemáticos del esquema de ubicación de los polos
se complica. También se advierte que, cuando la señal de control es una
cantidad vectorial, la matriz de ganancias de realimentación del estado es
única. Se puede elegir libremente n parámetros; es decir; además de ubicar n
polos de lazo cerrado de manera adecuada, se tiene la libertad de satisfacer
algunos o todos los requerimientos, si existen, del sistema en lazo cerrado.
En el enfoque convencional de un sistema de control con una sola
entrada y una sola salida, se diseña un controlador (compensador) tal que los
polos dominantes en lazo cerrado tengan un factor de amortiguamiento
85
relativo ? deseado y una frecuencia natural no amortiguada ? n. En este
enfoque, el orden del sistema aumenta en uno o dos, a menos que ocurra
una cancelación de polos o ceros. Se puede observar que en este enfoque
se supone que los efectos sobre la respuesta en lazo cerrado no dominante
son insignificantes.
En lugar de especificar solo los polos dominantes en los polos de lazo
cerrado (enfoque del diseño convencional), el enfoque actual de ubicación de
polos especifica todos los polos en lazo cerrado. Sin embargo, hay un costo
asociado con ubicar todos los polos en lazo cerrado porque hacerlo requiere
de mediciones exitosas de todas las variables de estado, o bien requiere de
la inclusión de un observador de estado en el sistema. También existe un
requerimiento en la parte del sistema para que los polos en lazo cerrado se
ubiquen en posiciones elegidas en forma arbitraria. El requerimiento es que
el sistema sea de estado completamente controlable. Para esto
consideramos un sistema de control:
x’=Ax+Bu
Donde:
• x= Vector de estado (vector de dimensión n)
• u= Señal de control (escalar)
• A= Matriz de coeficientes constantes n x n
• B= Matriz de coeficientes constantes n x 1
86
Se seleccionara la señal de control como:
u= -Kx
Esto significa que la señal de control se determina mediante un estado
instantáneo. Tal esquema se denomina realimentación del estado. En el
análisis siguiente se supone que u no tiene restricciones:
Este es un sistema de control u. Sustituyendo las ecuaciones
anteriores se tiene:
x’(t)=(A-BK)x(t)
La solución de esta solución de esta ecuación se obtiene mediante
x(t)=e
donde:
x(0) es el estado inicial provocado por perturbaciones externas. La
estabilidad y las características de respuesta transitoria se determinan
mediante valores característicos de la matriz A-BK. Si se elige la matriz K en
forma adecuada, la matriz asintóticamente estable y para todos los x(0) 0 es
posible hacer que x(t) tienda a 0 conforme tiende a infinito. Los valores
característicos de la matriz A-BK se denominan polos reguladores. Si estos
se ubican en el semiplano izquierdo del plano s, entonces x(t) tiende a 0
conforme tiende a infinito. El problema de ubicar los polos en lazo cerrado en
las posiciones deseadas se denomina problema de ubicación de polos.
87
3. DEFINICION DE TERMINOS
Acoplamiento: Unión de piezas mecánicas, conexión de dos circuitos
para la transferencia reciproca de electricidad. (Enciclopedia Hispánica, p.9)
Adquisición de datos: Proceso mediante el cual un computador
adquiere datos analógicos digitalizados. (Romero,1995).
Bit: Unidad mas pequeña de medición dentro de la informática y esta
compuesta por dos valores bien establecidos por niveles lógicos, los cuales
pueden tomar el valor “1” lógico o “0” lógico. (González, 2000).
Byte: Esta compuesto por 8 bits y es capaz de almacenar en el,
valores comprendidos ente 0 a 256 en decimal. (González, 2000).
Control: Es la limitación de la salida de un proceso (variable de
proceso) al valor deseado. Un sistema de control retroalimentado es aquel
que tiene que mantener una relación preestablecida salida/entrada,
comparándolas y utilizando la diferencia como medio de control. (Creus,
1993).
Controladores: Son los instrumentos que comparan el valor de la
variable controlada con un deseado y ejercen una acción correctiva de
acuerdo con la desviación en función de las bandas. (Creus, 1993).
Convertidores Analógicos Digitales (ADC): Convierten un nivel de
tensión analógico a una palabra digital correspondiente. (Savant, 1992).
88
Corriente Alterna: Es alterna cuando invierte periódicamente su
polaridad, es decir que cambia de sentido constantemente. (Domínguez,
1986, p.60)
Corriente Continua: Es continua cuando los electrones se desplazan
en un solo sentido a lo largo del conductor. (Domínguez, 1986, p.60).
Curva Característica (de un motor): Representación grafica de la
relación de una variable del motor con otra, tal como velocidad contra par.
(Maloney, 1997, p.G-4)
Defusificación: Etapa de salida del control difuso, esta etapa se
encarga de convertir las variables lingüísticas procesadas a variables
numéricas para que los actuadores puedan interpretarla. (Rojas, 1999).
Dúplex: Consiste en la comunicación de dos canales simultáneos
independientes con Transmisión en ambas direcciones. (Kemple, 1993).
Elemento final de control: Recibe la señal del controlador y modifica
el caudal del fluido o agente de control. La válvula de control es el elemento
final típico. (Creus, 1993).
Elemento primario: Son los instrumentos que están en contacto
directo con la variable y absorben energía del medio controlado. (Creus,
1993).
Ensamblador: Programa que traslada las instrucciones del lenguaje
ensamblador al lenguaje de maquina. (Kemple, 1993).
89
Error: Diferencia algebraica entre el valor leído o transmitido por el
instrumento y el valor real de la variable leída. (Creus, 1993).
Fusificación: Etapa de entrada de la lógica difusa, que se encarga de
convertir las variables entrantes en variables lingüísticas para su posterior
estudio. (Rojas, 1999).
Grado de pertenencia: Es la representación numérica del estado de
pertenencia de una variable sobre una membrecía. (Rojas, 1999).
Half Dúplex: Modo de transmisión o recepción de datos en forma no
simultanea. (Naranjo, 1998).
Inteligencia Artificial: Es una rama de la ciencia que se encarga del
estudio de sistemas que puedan emular o simular el comportamiento del
razonamiento (inteligente) para dar una respuesta a un problema planteado.
(Rojas, 1999).
Interface: Conjuntos de normas que definen la interconexión entre dos
dispositivos que pueden realizar funciones diferentes. Generalmente las
interfaces incluyen los elementos físicos que materializan la comunicación,
por lo que están asociados a un determinado equipo. (Szklanny, 1994).
Intersección de conjuntos: Se define como un nuevo conjunto
generado desde dos conjuntos determinados A y B, intersección de A y B, si
el nuevo conjunto contiene exactamente esos elementos que están
contenidos en A y en B. (Calvo, 1997).
90
Lenguaje Ensamblador: Es un lenguaje orientado a maquina en el
que son utilizados mnemónicos para representar las instrucciones a lenguaje
maquina. (Kemple, 1993).
Lógica Difusa: Más conocida como fuzzy logic, es una nueva área de
investigación de la inteligencia artificial que permite un mejor y apropiado
control de un proceso determinado. (Rojas, 1999).
Microcontrolador: Es un circuito integrado que incluye la unidad
central de proceso (CPU), memoria RAM (Random Access Memory) y ROM
(Read Only Memory) y puertos de entrada, así como circuitos
temporizadores, contadores y otros casos específicos como convertidores
analógicos-digitales. (González, 2000).
Negación de Conjuntos: Se denominan al nuevo conjunto que
conteniendo todos los elementos que están en el universo de discurso pero
no en el conjunto A la negación de A. (Calvo, 1997).
Offset: Desviación permanente que existe en régimen de control
proporcional cuando el punto de consigna esta fijo. (Creus, 1993).
Proceso: Serie de pasos de un fenómeno, lo cual permite una
identificación del mismo. (Creus, 1993).
Registro: Identificación de datos dentro de la unidad de
procesamiento, en el microcontrolador AT89C52 se manejan registros de 1
Byte. (González, 2000).
91
Regulación de velocidad (de un motor): Una medida del cambio
relativo de velocidad que ocurre cuando la demanda de par de la carga varía
del mínimo al máximo (Maloney, 1997, p.G-9)
Rotor: Parte interior en forma de cilindro de un generador o motor que
esta adherido al eje y que gira mientras el exterior (el estator) permanece
estacionario (Maloney. 1997).
Sensor: Se encarga de convertir una variable física en una magnitud
eléctrica, tal como voltaje o corriente, de una manera que puede ser
registrada y manipulada por equipos electrónicos. (Szklanny, 1994).
Señal: Salida o información que emana de un instrumento.
Información representativa de un valor cuantificado. (Creus, 1993).
Señales Digitales: Señales discontinuas en el tiempo y restringidas a
un conjunto de valores discretos unos y ceros lógicos (Cooper, 1993).
Sistema: Combinación de partes reunidas (variables), para obtener un
resultado o formar un conjunto. (Szklanny, 1994).
Software: Conjuntos de programas que se ejecutan o pueden
ejecutarse sobre una computadora o dispositivo procesador de programas,
ejemplo: el microcontrolador. (Szklanny, 1994).
Unificación de Conjuntos: Se llama así a un nuevo conjunto
generado desde dos conjuntos determinados A y B, unificación de A y B, si el
nuevo conjunto contiene todos los elementos que se contienen en A o en B o
en ambos. (Calvo, 1997).
92
Universo: Dado un conjunto A, se denomina “Conjunto Universal A”, a
un conjunto notado por U que contiene a A. Todos los conjuntos involucrados
en cualquier estudio particular deben ser considerados como subconjuntos
del conjunto universal. (Rojas, 1999).
Variable controlada: Dentro del bucle es la variable que se capta a
través del transmisor que origina una señal de realimentación. (Creus, 1993).
Variables Lingüísticas: Una variable lingüística es un quíntuple
(X,T(X),U,G,M) donde X es el nombre de la variable, T(X) es el termino
conjunto (es decir; el conjunto de nombre de valores lingüísticos de X), U es
el universo de discurso, G es la gramática para generar los nombres y M es
un conjunto de reglas semánticas para asociar cada X con su significado.
(Calvo, 1997).
Variable medida: cantidad, propiedad o condición física que es
medible. (Creus, 1993).
4. MARCO REFERENCIAL
VARIABLE DE ESTUDIO
• Control
• Motor
93
5. DEFINICIÓN CONCEPTUAL DE LA VARIABLE
Control: Comprobación o inspección de una cosa, dominio o autoridad
sobre algo (Diccionario de la lengua española, 2004, p.409).
Motor: Maquina giratoria que convierte la energía eléctrica a mecánica
(Maloney, 1997, p.G-7)
6. DEFINICIÓN OPERACIONAL DE LA VARIABLE
Con el fin de cumplir las expectativas funcionales previstas y
fundamentado en un modelo metodológico, el estudio culminara con la
obtención de el diseño de un sistema de control para un motor usando
Control Multivariable y Lógica Difusa, mediante la implementación de un
diseño eficiente, y que sustentado por los datos arrojados facilite el estudio
del funcionamiento del modelo.