Implementacion proyecto en FPGA PDF

Title Implementacion proyecto en FPGA
Author A. Guerrero Calpa
Pages 8
File Size 1.4 MB
File Type PDF
Total Downloads 60
Total Views 170

Summary

1 Implementacion proyecto en FPGA Técnicas de integración I. O BJETIVOS En la figura 1 se puede observar la alimentación del encoder I-A. Objetivo general y su salida ası́ como la alimentación del motor. Después de diseñado el soporte, se busca la hoja de datos del Motor para Implementar un si...


Description

1

Implementacion proyecto en FPGA T´ecnicas de integraci´on

I.

O BJETIVOS

I-A. Objetivo general Implementar un sistema que monitoree 4 m´odulos principales de un autom´ovil generando una alerta cuando cierto par´ametro se salga del rango asignado de operaci´on y pueda ser visualizado en una pantalla celular.

En la figura 1 se puede observar la alimentaci´on del encoder y su salida as´ı como la alimentaci´on del motor. Despu´es de dise˜nado el soporte, se busca la hoja de datos del Motor para conocer el rango de operaci´on y su valor nominal.

I-B. Objetivos espec´ıficos Implementaci´on de cada perif´erico bajo una tarjeta FPGA Nexys 4 Unificaci´on de m´odulos dentro de un modulo superior para una comunicaci´on serial a un dispositivo m´ovil II.

V ELOCIDAD

Caracterizaci´on del modulo velocidad. Para caracterizar el modulo de velocidad se dispuso de una base en la cual el encoder se encuentra sobre-puesto entre el eje del motor y el circulo de referencia del encoder anclado al eje. La distancia entre los detectores y la circunferencia se dise˜no de tal forma que fuera la m´ınima posible, en este caso 3 mil´ımetros en cada lado. Esto para tener la menor variaci´on de la circunferencia. Adem´as se asign´o un angulo de 90 grados respecto al eje del motor, ya que las ranuras dispuestas en esta circunferencia son de tama˜no menor a 5 mil´ımetros por lo que una desviaci´on generar´ıa el no conteo de este espacio.

Figura 2.

Especificaci´on del fabricante - Motor RF310TA

En la figura 2 se pueden resaltar 3 valores importantes para la caracterizaci´on del encoder, el primero es el rango de operaci´on del motor que va desde 1 voltio hasta 6 voltios, en seguida el valor del voltaje nominal en el que se realizaron las pruebas y por u´ ltimo las revoluciones por minuto de 2800. Partiendo de dicha informaci´on se desplegaron 2 series de pruebas en las que se pretend´ıa medir la velocidad del motor mediante el encoder. Por otro lado un tac´ometro, esto con el fin de caracterizar el encoder y, de ser requerido, realizar ajustes al soporte para mayor precisi´on. V Motor Tacometro hz Tacometro (RPM) Osciloscopio HZ 1v 16hz 1030 348hz 2v 36hz 2215 745hz 2.5v 45.8hz 2730 925hz 3v 56hz 3392 1.15khz 4v 70hz 4574 1.52khz 5v 94hz 5724 1.89khz 6v 113hz 7282 2.28khz En II se evidencia las mediciones realizadas para el motor en Hertz y revoluciones por minuto (rpm). Se puede apreciar que los resultados fueron o´ ptimos. Al multiplicar el valor suministrado por el tac´ometro se debe multiplicar por 20 debido a los orificios que tiene la circunferencia y es el dato generado por el encoder. Dise˜no digital del sistema

Figura 1.

Base de encoder y motor modulo de velocidad

Despu´es de tener la certeza de lo que se espera medir, con el sensor, se realizo el modelo digital, representado por medio de diagrama de bloques. Esto se puede observar en la siguiente figura.

2

la polarizaci´on de los diodos que conforman a los segmentos, se tiene una configuraci´on de 8 a´ nodos que corresponde a los a´ nodos de cada grupo de siete segmentos, y de donde se parte a realizar el control junto con se˜nales digitales para cada uno de los leds para la representaci´on de un s´ımbolo, o en nuestro caso n´umeros. Claramente la composici´on del display se indica en la figura 5. Para el proyecto solo se usaron 4 grupo de segmentos, puesto que la cantidad m´axima de rpms del motor no excede a un numero de 4 d´ıgitos.

Figura 3. Diagrama de caja negra del m´odulo encoder

Se compone de tres se˜nales, la primera llamada Clk, representa el reloj de la tarjeta programable FPGA. Para nuestro caso es de 100 MHz; la segunda se˜nal el reset, corresponde al control que nos ofrecer´a las condiciones iniciales de nuestro medidor; y la ultima se˜nal llamada En, representa la se˜nal digital otorgada por el dispositivo o´ ptico.

Figura 5. Conexi´on de a´ nados y c´atodos[2]

Figura 6. Diagrama de tiempos para encendido de los a´ nodos[2]

Por u´ ltimo se tiene el diagrama de flujo, para el reconocimiento de la se˜nal y el calculo de velocidad se˜nalada en el display, Figura 7

Figura 4. Diagrama de bloques

En la figura 4 se puede evidenciar con m´as detalle, el funcionamiento del sistema. Comenzando principalmente por un bloque llamado contadores cuya funcionalidad corresponde el de generar un divisor de frecuencia llamado out, el cual se dirigir´a al siete segmentos de la FPGA. que actuara como un reloj de refresco para cada uno de los segmentos para la visualizaci´on de la velocidad del motor. Para el bloque display de siete segmentos, se recibi´o el dato y se realizo un encendido y apagado de cada grupo de segmentos, a una frecuencia de 4kHz, el comportamiento corresponde al diagrama de tiempos de la figura 6. Generando la sensaci´on de encendidos continuo ante la visi´on humana. Para el caso de

Figura 7. Diagrama de flujo

3

Caracterizaci´on modulo de nivel III.

P RUEBA Y FUNCIONAMIENTO DE TODO EL SISTEMA

III-A. Simulaciones Al sistema se le realizaron pruebas con una se˜nal de 312 Hz, la cual pasa a comportarse como la se˜nal del encoder. Se procedi´o a realizar el conteo de la se˜nal durante el tiempo de encendido para despu´es pasarla a frecuencia. Al obtener este valor se realizo la conversi´on a revoluciones por minuto y posteriormente a multiplicar el n´umero de ranuras del encoder; y as´ı llegar al valor total de los rpms. Figura8

Figura 10. Montaje en FPGA 2

Figura 8. Simulaci´on en gtkwave

IV.

T EMPERATURA

La figura 9 y en 10 muestran la implementacion del modulo de temperatura. Lo que hace el codigo en Verilog es tomar un valor de tension analoga del sensor de temperatura, lo pasa a valores binarios, y en base a ellos se hace el calculo de grados cent´ıgrados. A partir de la lectura obtenida por el sensor de temperatura se generan unos rangos con 5 grados cent´ıgrados de error en la medici´on.

‘ t i m e s c a l e 1 ns / 1 ps module L e v e l ( b , c , d , e , f , g , h , i , j , k , l , m, n , o , p , c l k i n ) ; input b ; input c ; input d ; input e ; input f ; input g ; input h ; output reg i ; output reg j ; output reg k ; output reg l ; o u t p u t r e g m; output reg n ; output reg o ; output reg p ; input clkin ; reg [ 0 : 6 ] dat ; reg [ 0 : 7 ] data temp ; always@ ( p o s e d g e c l k i n ) b e g i n

Figura 9. Montaje en FPGA

El c´odigo en verilog mostrado a continuaci´on muestran los registros y conexiones a LEDs para el funcionamiento del modulo de temperatura. En el se pueden encontrar los rangos de temperatura arrojados por el sensor, y los valores en binario de salida la cual ser´a la se˜nal de entrada para el multiplexor y el m´odulo bluetooth.

dat [6]= h ; dat [5]= g ; dat [4]= f ; dat [3]= e ; dat [2]= d ; dat [1]= c ; dat [0]= b ;

/ / t e m p n o r m a l =8 ’ b01110111 ; / / d e c i m a l 1 1 9 ; t e m p e r a t u / / i f ( d a t...


Similar Free PDFs