Академический Документы
Профессиональный Документы
Культура Документы
Nivel y Paralelo
Octavo ¨A¨
Integrantes
Fecha de Envío
Miércoles 10 de julio del 2019
Fecha de Entrega
Lunes 22 de julio del 2019
Docente: Ing. Edgar Patricio Córdova Córdova
MARZO 2019 – AGOSTO 2019
AMBATO - ECUADOR
2019
1. TEMA
Control PID de un motor DC
2. OBJETIVOS
a. Objetivo General
Establecer un control PID de un motor DC empleando un encoder, con la FPGA
y una interfaz de Labview..
b. Objetivos Específicos
Configurar la tarjeta FPGA para que se comunique con LabVIEW
Realizar un contador de flancos en FPGA y Generar una señal de voltaje en FPGA
Crear un control PID en RT de la tarjeta FPGA e implementar una interfaz de operación
simple para el control del motor DC.
Construir el sistema de control y todos los circuitos necesarios para la puesta en operación
del mismo.
3. FUNDAMENTACIÓN TEÓRICA
LabVIEW
Las aplicaciones en LabVIEW imitan la apariencia de instrumentos reales (como multímetros,
generadores de señal, osciloscopios, etc), por lo que son llamados instrumentos virtuales o
VIs.
Los VIs de LabVIEW son gráficos, impulsados por el flujo de datos y la programación basada
en eventos, y son multiobjetivos y multiplataforma. También tienen la flexibilidad orientada
a objetos y características multithreading y de paralelismo. Los VIs se pueden implementar
en tiempo real y en FPGA.
FPGA. - Las FPGAs son dispositivos que permiten describir un circuito digital usando un
lenguaje específico (los dos más comunes son VHDL y Verilog) y que tras cargarlo en el
integrado, es creado físicamente en el chip. Su nombre es un acrónimo inglés que significa
matriz de puertas reprogramable o Field Programmable Gate Array. [1]
Internamente se componen principalmente de cables, puertas lógicas, biestables, y puertos de
entrada y salida. Todo ello sin conectar, como una plantilla en blanco, hasta que se les carga
un bitstream el cual es un archivo generado a partir de la descripción del circuito. [1]
Su estructura interna posee la siguiente forma:
Ilustración 1 Estructura FPGA. Fuente: [1]
ETAPAS DE FPGA
CARACTERISTICAS DE FPGA
Bloques Lógicos Configurables (CLB): Son las unidades lógicas básicas en las FPGA.
Los números exactos y sus características varían en cada dispositivo pero cada CLB
consiste en una matriz configurable de switches con 4 o 6 inputs, algunos circuitos de
selección (MUX), y flip-flops. La matriz de interruptores es altamente flexible y puede ser
configurada para manejar lógica combinacional, registradores de cambio o RAM. Como
en cada caso, se puede encontrar más información en las hojas técnicas de cada
dispositivo.
Interconexiones: Mientras que los CLB proveen la capacidad lógica, las interconexiones
envían la señal entre los CLB y los inputs y outputs.
SelectIO (IOBs): Actualmente las FPGA tienen soporte para docenas de estándares I/O
por lo que proporcionan la interface ideal en un sistema. Los inputs y outputs en las FPGA
están agrupados y cada grupo es independiente y capaz de soportar distintos estándares
I/O.
Memoria: Cuentan con un Bloque de RAM Embebida que permite tener memoria dentro
de un chip para nuestros diseños. Algunas cuentan con hasta 10Mbits de memoria
repartida en bloques de 36Kbits.
Gestión Completa de Reloj: Esta característica está presente en la mayoría de los FPGA.
[2]
MOTOR DC
En magnetismo se conoce la existencia de dos polos: polo norte (N) y polo sur (S), que
son las regiones donde se concentran las líneas de fuerza de un imán. Un motor para
funcionar se vale de las fuerzas de atracción y repulsión que existen entre los polos. De
acuerdo con esto, todo motor tiene que estar formado con polos alternados entre el estator
y el rotor, ya que los polos magnéticos iguales se repelen, y polos magnéticos diferentes
se atraen, produciendo así el movimiento de rotación.
Ilustración 3Motor dc
Control PID
Un controlador PID (Proporcional Integrativo Derivativo) es un mecanismo de control
genérico sobre una realimentación de bucle cerrado, ampliamente usado en la industria
para el control de sistemas.
Estructura del PID
Consideremos un lazo de control de una entrada y una salida (SISO) de un grado de
libertad:
Encoder
Un encoder es un dispositivo de detección que proporciona una respuesta. Los Encoders
convierten el movimiento en una señal eléctrica que puede ser leída por algún tipo de
dispositivo de control en un sistema de control de movimiento. El encoder envía una señal
de respuesta que puede ser utilizado para determinar la posición, contar, velocidad o
dirección. Un dispositivo de control puede usar esta información para enviar un comando
para una función particular.
Para explicar como funciona un encoder debemos mencionar que un encoder se compone
básicamente de un disco conectado a un eje giratorio. El disco está hecho de vidrio o
plástico y se encuentra “codificado” con unas partes transparentes y otras opacas que
bloquean el paso de la luz emitida por la fuente de luz (típicamente emisores infrarrojos).
En la mayoría de los casos, estas áreas bloqueadas (codificadas) están arregladas en forma
radial.
A medida que el eje rota, el emisor infrarrojo emite luz que es recibida por el sensor óptico
(o foto-transistor) generando los pulsos digitales a medida que la luz cruza a través del
disco o es bloqueada en diferentes secciones de este. Esto produce una secuencia que
puede ser usada para controlar el radio de giro, la dirección del movimiento e incluso la
velocidad. Los encoders son utilizados en una infinidad de campos e industrias que van
desde máquinas de fax, electro-domésticos de consumo hasta robótica, minería transporte,
maquinaria, aeroespacial y más. [5]
4. MATERIALES Y EQUIPOS:
Circuito: CONTROL PID
Tarjetas FPGA y SBRIO Cable Ethernet
Computador con LabVIEW v13 Alimentación (FPGA y SBRIO)
Motor dc Encoder
Proto Board
5. PROCEDIMIENTO Y DESARROLLO.
Creamos un nuevo VI para la obtención de los datos en un Encoder, el cual estará diseñado
con un case el cual si el valor censado es TRUE, se almacenará la variable, es similar a un
Contador caso contrario si es FALSE se realizará un subproceso en el cual se compara una
variable externa y mediante un clock establecido lo linealizaremos a minutos para el
control de la información, hay que tener en cuenta que se utilizará un flat secuencia que
sirve para repetir el proceso internamente similar a una película de rollo.
Ilustración 8Lectura
Generaremos un control PWM para establecer la velocidad de nuestro motor para ello
usaremos el Dutty Cycle y un valor de externo de referencia también se usara un flat
secuence para que el sistema este ejecutándose de manera constante.
7. ANÁLISIS DE RESULTADOS
a. Resultados Esperados
b. Resultados Obtenidos
Se realizó la implementación del software y la implementación hardware del
controlador PID. Como se ha descrito anteriormente el controlador PID cuenta con
tres acciones: proporcional, integral y derivativa.
Una vez que se realizó el diseño del controlador PID en software, se procedió a diseñar
la arquitectura del controlador PID en lógica reconfigurable. Para esto se necesita
definir la operación de la derivada y de la integral.
Se consideró que existen otros métodos más complejos en la sintonización de los
controladores por lo que se deja en un futuro cercano realizar una sintonización más
óptima de las ganancias de las arquitecturas ya que las ganancias no llegan a afectar el
diseño de las arquitecturas propuestas.
8. CONCLUSIONES
9. BIBLIOGRAFÍA
[1] «Qué es una FPGA y por qué jugarán un papel clave en el futuro,» [En línea]. Available:
https://planetachatbot.com/qu%C3%A9-es-una-fpga-y-por-qu%C3%A9-jugar%C3%A1n-un-
papel-clave-en-el-futuro-e76667dbce3e. [Último acceso: 19 12 2018].
[2] «Diseño Digital con VHDL,» 09 2014. [En línea]. Available:
http://www.academia.edu/8408759/Caracter%C3%ADsticas_de_los_FPGA. [Último acceso:
19 12 2018].
[3] «NATIONAL INSTRUMENT,» [En línea]. Available:
http://sine.ni.com/np/app/main/p/ap/imc/lang/es/pg/1/sn/n17:imc,n24:sbRIO/fmid/1240/.
[Último acceso: 19 12 2018].