Mostrando entradas con la etiqueta processing. Mostrar todas las entradas
Mostrando entradas con la etiqueta processing. Mostrar todas las entradas

sábado, 17 de noviembre de 2018

Comunicación arduino-processing mediante puerto serie II

En este caso vamos a imprimir en la pantalla el número  que estamos pulsando en el mando de televisión.
Para ello hemos montado en nuestra placa de arduino un receptor de infrarrojos.



Lo primero es conocer los códigos de los botones de mi mando de TV, en mi caso sansumg. Para lo que tenemos que cargar el siguiente programa en la placa de arduino e ir apuntando los resultados que salen en el monitor.

Una vez que tenemos los código de cada botón leídos y apuntados debemos hacer que nuestra placa nos envíen por puerto serie el número del botón pulsado para ello cargaremos el siguiente programa en nuestra placa de arduino:

En este programa mediante un switch evaluamos el código entrante en el receptor  de infrarrojos y comparamos con los valores tomados. Una vez comparados los códigos enviaremos por el puerto serie el valor del botón pulsado mediante la instrucción Serial.write(número  botón);

Ahora lo que nos tocará será mediante processing leer el código que estamos mandando por el puerto serie. Tenemos que tener cuidado con el puerto que tenemos definido. El programa que os dejo esta preparado para el puerto COM4 de mi ordenador, pero dependiendo donde se conecte la placa de arduino puede cambiar. Debemos revisar el puerto y poner el nombre que corresponda donde pone myport = new Serial(this,"COM4",9600); cambiando COM4 por lo que nombre del puerto donde está conectada la placa de arduino.

El programa que creamos será:

De esta manera representará en pantalla el número del botón pulsado.
En el siguiente vídeo os muestro el funcionamiento:



En el centro de la pantalla se ve la pantalla que nos pone tecla y según pulsamos nos aparecerá el botón correspondiente. No cambia rápido al haber introducido un delay de un segundo para que se vea bien el número pulsado.




jueves, 15 de noviembre de 2018

Introducir audio en processing

Para introduccir audio en processing lo primero que tenemos que hacer es cargar la librería minim.dff
Una vez cargada la librería empezamos a programar:
  1.  Introducimos librería.
  2. Introducimos el audio que queremos en una carpeta llamada data.
  3. Creamos objeto m para introducir la canción en él
  4. Introducimos reproductor mediante audio player
  5. Instancio objeto m
  6. Cargamos en m la canción en mp3 y lo reproducimos en el objeto p reproductor
El código quedaría  así:

La carpeta con el proyecto lo puedes descargar desde este enlace .
Si quieres solamente el programa recuerda crear la carpeta data donde metemos el audio y cambiar el nombre del audio en el  código de processing.

Programa mejorado representando ondas. Con loop para que se reproduzca de manera continua y con teclas paramos, adelantamos ...

martes, 30 de octubre de 2018

Arduino-Processing conexión por puerto serie

Mediante el puerto serie podemos comunicar nuestro arduino con processing. En este caso vamos a controlar el encendido de tres LEDs mediante un programa realizado en processing comunicándonos con la placa de arduino mediante el puerto serie.

PRIMERO PROGRAMA EN ARDUINO

Lo primero que tenemos que hacer es cargar el siguiente programa a nuestro arduino:

Analicemos el programa

Lo primero es definir los pines en los que vamos a conectar los LEDs que serán el 2,4 y 7. En el setup configuramos el puerto serie para la comunicación a una velocidad de 9600bps. Configuramos los pines de los leds de salida y los ponemos en LOW para que no se enciendan.

En el loop lo primero que hacemos es comprobar si hay información de entrada en el puerto serie. Si existe información comprobaremos si es una "H" enviada por processing o una "L". Si es una "H" encenderemos los leds de manera consecutiva durante un segundo. 
Si es una "L" apagamos todos los LEDs



SEGUNDO EJECUTAR PROGRAMA PROCESSING

Una vez cargado el programa en la placa, ejecutamos el programa de processing.

Analicemos el programa

En el setup() abrimos comunicación mediante puerto serie y le indicamos el puerto en el que está conectado.
En void draw() creamos la ventana con los botones que dirigirán el funcionamiento de los diodos. 

Consiguiendo cuando ejecutemos una ventana donde nos aparecerán dos botones, uno para el encendido de los leds y otro para el apagado


En la función mousePressed() cuando pulsemos el botón ON enviamos por el puerto serie H para que nos lo lea nuestro programa de arduino encendiendo los tres diodos.
Si pulsamos el botón de OFF enviaremos una L en el puerto serie y nuestro programa de arduino cuando detecte la L apagará el dispositivo si estuviera encendido.


FUNCIONAMIENTO DEL CIRCUITO

En el siguiente vídeo podéis ver el vídeo del funcionamiento.