viernes, 13 de marzo de 2020

ARQUITECTURA DE PROCESADORES



Como muchas personas lo conocen, el ascensor o elevador es un sistema vertical, cuyo objetivo es transportar personas u objetos en diferentes niveles. Su principio base se relaciona a un conjunto de piezas mecánicas como ruedas y poleas. Nuestro trabajo es la unión del conocimiento adquirido por la humanidad en los últimos siglos, combinando dispositivos electrónicos con elementos mecánicos para crear sistemas automatizados que faciliten nuestro diario vivir.  No ha sido fácil su desarrollo, por eso, queremos compartir con ustedes el desarrollo de un prototipo de 3 niveles utilizando dispositivos FPGA

Haremos una breve descripción de nuestro componente principal, las FPGA. Estos son dispositivos que internamente se componen de cables, puertas lógicas, biestables y puertos de entrada y salida, dependiendo su referencia unas pueden contar con más salidas, comunicación VGA, entre otros. Una de las mayores ventajas en su flexibilidad al programar y reprogramar las veces que se requiera, descartando el hecho de que su lógica se vea afectada.  


Luego de tener claridad del alcance de nuestra FPGA, empezamos a plantear su programación por medio de máquinas de estado.

No profundizaremos en su clasificación, pero las máquinas de estado es un modo de diseño para circuitos complejos que dependen de variables externas u/o internas, estas se definen a gusto del programador. 

En la imagen siguiente es una vaga descripción física de lo que compone nuestro prototipo, y en la derecha, mostramos el funcionamiento de las puertas del ascensor, lo conforman S10 y S11 los cuales se encargaran de validar si la puerta del prototipo está cerrada o abierta.
Nuestro sistema está constituido por dos motores, uno de ellos se relaciona a subir y bajar el ascensor, el otro se encarga de abrir y cerrar las puertas.

Los sensores Sx son elementos externos como finales de carrera para saber la posición del ascensor o las puertas automáticas y los restantes a los botones de operación.
El sistema garantiza que su manipulación pueda ser desde el exterior (S6, S8, S7, S9) o desde su interior (S5, S4, S3). 


Luego de tener claro el diseño físico de nuestro proyecto dimos paso a la creación de la máquina de estado. Debido a la totalidad de sus dependencias externas (Sx) el cambio de estados X como lo refleja la figura número 6 es demasiado extenso

Nuestro Proyecto tiene 4 estados y un inicio o reset, cada una de las flechas nos indica que debe suceder para pasar al estado siguiente o retornar al estado inicial y así sucesivamente.  A partir de este diseño se creó la respectiva tabla de estados donde tomaríamos como base la programación.

Como observamos en la siguiente tabla, es un modelo que depende de una ecuación, las Sx no solo son señales también pueden ser pulsos externos, actuadores, sensores, etc. Lo ideal es que cambie su estado lógico. Su definición dependerá de un conjunto de estados intermediarios en relación a las entradas y salidas, el historial de las señales determinará para cada instante un estado diferente. Esto se ejecutará en ciclos y el tiempo lo define el usuario.

Cuando tengamos el desarrollo definido y el programa nos genere los archivos necesarios para su programación debemos ser cuidadosos en una de los pasos fundamentales para la ejecución, en este caso hablamos del UCF, en pocas palabras es el mapa de nuestra FPGA, cada dispositivo tiene definidas ciertas entradas y salidas, por eso, es importante resaltar su estructuración al momento de unirlo a nuestro programa. La configuración de nuestra Basys es la siguiente.

Durante la estructuración o mapeo de nuestra FPGA, podemos hacerla de diferentes maneras, una de ellas en contar con nuestro archivo UCF en el cual se describen cada una de las entradas, la asignación de pines se realizará conforme a los nombres definidos en nuestro diseño. 



En la parte izquierda se realiza la configuración de las entradas a la FPGA, cada uno de los pulsadores o interruptores representa las entradas lógicas que se pueden obtener por medio de sensores, estás entradas serán nuestras variables de estado (S0, S1, S2, etc.) dependiendo su combinación activara o desactivara nuestros motores. 


  Conclusiones

  • ·         Antes de abordar cualquier proyecto debemos saber exactamente las limitaciones o nuestro alcance con los componentes y materiales que disponemos, una correcta planeación de un proyecto nos dará una visión de lo que queremos obtener, los resultados y a que publico podemos satisfacer.
  • ·         Uno de los factores fundamentales en el desarrollo de máquinas de estado, es plantear correctamente si diseño estructural y comportamiento, es la base para crear una tabla de combinaciones que satisfagan nuestra necesidad. Si debemos compararlo a nivel de programación, esta al mismo nivel de los diagramas de flujo.
  • ·         Aunque se abordó un proyecto común, el uso de las FPGA se han orientado a aplicaciones mucho más complejas en los últimos tiempos, existen proyectos como la minera de BitCoins o la administración de bases de datos.
  • ·         La estructura o descripción de Hardware le permite a las FPGA tener mayor flexibilidad al momento de procesar múltiples campos, su ejecución será mucho más eficaz si lo comparamos con los Microcontroladores.
  • ·         Si en algún momento requieren el desarrollo en proyectos haciendo uso de la FPGA, se debe tener una base sólida de conocimientos en circuitos lógicos, identificar correctamente cada una de las compuertas, usos, combinaciones, etc. 

Autores.

 

León García Cristian Camilo.

Tecnólogo en electrónica industrial actualmente cursando 7 semestre en la universidad ECCI de Colombia
Actualmente destacado en ferias de electrónica a través de su proyecto
Electrolux destacándose como primeros lugares, estudiado de inglés británico, tiene acciones en una empresa textil donde hace proyectos para emprender, continúa con su proyecto ascensor a través de máquinas de estado



Peñuela Cruz Juan Camilo.

Tecnólogo en mantenimiento electrónico, actualmente cursando sexto semestre en ingeniería electrónica, me desempeño en el área de servicio técnico en la empresa Hanna Instruments, encargada en la fabricación de equipos electrónicos para la medición de variables fisicoquímicas.


Becerra Aldana Nicolás.

Actualmente estudiante de ingeniería electrónica de la universidad ECCI en la cual fue participante y uno de los mejores estudiantes en seminarios de investigación tecnológica en el cual junto con 2 ingenieros desarrollaron e implementaron el primer diseño de un ascensor de tres pisos cuyo funcionamiento era controlado completamente con máquinas de estado.


No hay comentarios:

Publicar un comentario