ELO 330: Programación de Sistemas

Proyecto Grupal : GUI Crazy Motors

Integrantes: 
                          

Descripción del Problema:

 Un proyecto de nuestra autoría está en vías de desarrollo para convertirse en un circuito integrado. Su implementación está siento probada en una FPGA y su objetivo es controlar motores (dirección y sentido). Requerimos un acceso intuitivo desde el computador que se comunique con el controlador.

        Solución Planteada:

  Para resolver el problema planteado, se tiene la posibilidad de desarrollar en lenguaje JAVA o en lenguaje C++, dado que hay más familiarización en lenguaje C++ para el manejo de puertos serial, se opta por utilizar lenguaje C++ junto con el ambiente Qt, para facilitar el trabajo, debido a sus  potentes bibliotecas.  Para complementar las bibliotecas propias de Qt se utiliza una biblioteca extra llamada "qserialdevice" la cual permite un fácil uso de los puertos serial, pudiendo enviar y recibir datos de manera rápida. Para poder controlar los motores es necesario emitir una señal infrarroja de frecuencia 1[KHz] y con una secuencia determinada por cada comando, definido por las especificaciones de "Crazy Motors", para ello se utiliza un microprocesador Arduino, el cual cuenta con una interfaz para comunicación USB-Serial, lo que resulta muy beneficio para la ejecución de este proyecto. Este microprocesador es programado mediante su propio IDE de programación basado en Processing.

        Esquema General:


esquema


            Objetivos de la Solución:
            Diagrama General:

                Para la implementación de este proyecto se plantea el siguiente diagrama que explica el funcionamiento del programa principal:

flujo

    Ambientes de desarrollo utilizados:

ides
                 

            Interfaz Desarrollada:



Interfaz

            Herramientas de Hardware Utilizados:


            Conclusiones:

                      La construcción de interfaces intuitivas para un usuario son recomendables con librerías QT debido a la facilidad y rapidez del desarrollo.
                      Además, utilizar el microprocesador arduino para tareas sencillas como emitir una señal digital es cómodo gracias al lenguaje que utiliza, muy parecido a C.
                      Finalmente el proyecto Crazy Motors logra adquirir una interfaz gráfica para su control mediante un ordenador.
                   


Códigos Fuentes: GUICrazyMotors.zip