ELO 330: Programación de Sistemas
Proyecto
Grupal : GUI Crazy Motors
Integrantes:
- Gabriel
Ahumada
gabriel DOT ahumada AT alumnos DOT usm DOT cl
- Constanza
Valdés constanza
DOT valdes AT alumnos DOT usm DOT cl
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:
Objetivos de la Solución:
- Familiarizar al usuario, en el uso de motores para distintas
aplicaciones.
- Generar una interfaz gráfica amistosa y autoexplicativa para el
usuario
- Controlar motores de manera remota, mediante el ASIC "Crazy
Motors"
Diagrama General:
Para la implementación de este
proyecto se plantea el siguiente diagrama que explica el funcionamiento
del programa principal:
Ambientes de desarrollo utilizados:
Interfaz
Desarrollada:
Herramientas de Hardware
Utilizados:
-
- Microprocesador Arduino Atmega328P
|
|
|
|
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.