Proyecto
control 1: Aplicación acordeón con Processing y Arduino
Jiménez Juan
Carlos COD. 2010119031
GRUPO 2
Ingeniería Electrónica,
Facultad de Ingeniería
Universidad del Magdalena
Resumen—Este proyecto inició con
la capacitación en el manejo de Processing el cual es una herramienta de programación
muy didáctica y útil para quienes no son grandes programadores, con la ayuda de
éste programa se creó una aplicación muy interactiva y fue una acordeón virtual
luego para complementar la experiencia se introdujo el control por hardware, en
el cual se presionan los botones de la acordeón por medio de unos pulsadores
que se comunica con Processing a través
de una placa de desarrollo Arduino, usando comunicación serial se logró
transmitir y recibir datos entre el computador y el circuito de control
externo.
INTRODUCCIÓN
En este informe se tratan los
apartes más relevantes de la aplicación Arduino-Processing, se presenta el
desarrollo y construcción del código además de los inconvenientes principales
que se encontraron durante el proceso. La importancia de éste proyecto radica
en afianzar los conocimientos sobre programación de software y hardware y la
comunicación de medios externos al computador, la utilización de Processing y
Arduino es un campo nuevo en el manejo de las herramientas debido a esto se
requiere de las fuentes oficiales y foros en la web para agilizar la
programación.
MARCO TEÓRICO
Processing es un lenguaje de
programación, entorno de desarrollo, y comunidad en línea. Desde el año 2001, Processing
ha promovido la alfabetización de software con las artes visuales y la
alfabetización visual con la tecnología. Inicialmente creado para servir como
un bloc de dibujo de software, y para enseñar los fundamentos de programación
de computadoras dentro de un contexto visual, Processing se convirtió en una
herramienta de desarrollo para los profesionales.
Por otro lado Arduino es una
plataforma de electrónica abierta para la creación de prototipos basada en
software y hardware flexibles y fáciles de usar. Se creó para artistas,
diseñadores, aficionados y cualquiera interesado en crear entornos u objetos
interactivos. Arduino puede ser utilizado para desarrollar objetos autónomos e
interactivos, como prototipos o interactuar con software instalado en el ordenador.
Dada su rápida curva de aprendizaje y su precio económico es ideal para
educadores, diseñadores y cualquiera interesado en la electrónica y robótica.
DESARROLLO DE LA APLICACIÓN
En esta parte haremos una
explicación del código en Processing con el cual se generó la aplicación cabe
destacar que mediante el compilador de arduino se programó previamente el hardware para que pudiera hacerse la
comunicación serial directamente con Processing. También es importante decir
que el código aquí explicado es el de la aplicación final pero que previa a la
inclusión de arduino se tenía un código más extenso pero también con más
errores.
Primero que todo se llamaron las
librerías necesarias en éste caso
Luego se hacen las declaraciones
de variables correspondientes, cabe destacar que AudioPlayer se usa para
declarar los sonidos que se van a reproducir
Una vez hecho lo anterior hacemos
las configuraciones necesarias primero para la comunicación serial, para imagen
de fondo y tamaño de la pantalla, luego se le asignan a variables los distintos
fragmentos de sonido y por último se hace la configuración del arduino como lo
son los pines de entrada y salida.
El último fragmento de código
corresponde a la ejecución de las acciones de control. Primero colocamos la
imagen de fondo como fondo, a continuación explicaremos un fragmento de código
usado para la reproducción de un sonido y una vez tengamos esto la acción se
vuelve repetitiva para los demás sonidos
En un sí, preguntamos si en el
pin especifico que estamos usando para determinada tecla del acordeón tiene un
alto, si tiene un alto es porque hemos presionad la tecla. Dado que se
presentaron problemas con la reproducción entonces se vuelve a configurar la
variable para asignarle el sonido e inmediatamente ponemos a reproducirla. Como
queremos saber en la pantalla cual tecla del acordeón se reprodujo entonces las
siguientes sentencias son para dibujar un rectángulo en el lugar de la tecla
por último para que la comunicación sea bilateral se enciende y apaga un led en
un tiempo determinado por un retardo. Lo anterior se repite para los restantes
siete sonidos.
Para finalizar la explicación
podemos mencionar que frecuentemente se presentaron errores como:
Array Index Out Of Bounds: Este error se presenta por la
declaración de variables ya sea de la librería debido a esto se exede la
capacidad de algún vector que me genera un desbordamiento.
NullPointerException: Esta excepción puede ser lanzada por
múltiples causas, la más habitual es que estamos intentando acceder a un
atributo de un objeto para el que todavía no hemos reservado memoria.
Además de éstos dos comunes
errores se presentaron y se pueden presentar muchos otros éstos se dan debido a
la estructura y lógica que le demos a nuestro código de programa.
En las siguientes figuras se
muestran las partes de la aplicación:
Figura 1. Esquema
general
Figura 2. Arduino
Mega 2560
Figura 3. Processing
Figura 4. Pulsadores
para controlar botones del acordeón
Figura 5 interfaz
visual
REFERENCIAS
http://www.consultoriajava.com/index.shtml









No hay comentarios:
Publicar un comentario