Publicado por

Arduino (P2)

Publicado por

Arduino (P2)

Design Thinking Un artista audiovisual ha pedido un encargo. Necesita crear una pieza que simule un Theremin y que a la vez…
Design Thinking Un artista audiovisual ha pedido un encargo. Necesita crear una pieza que simule un Theremin y que…

Design Thinking

Un artista audiovisual ha pedido un encargo.

Necesita crear una pieza que simule un Theremin y que a la vez esté adaptado para que personas sordas. Para ello, a la vez que va cambiando la frecuencia de sonidos, también afectará a los colores de un led RGB.

Se le plantea crear un Theremin digital con entradas analógicas. Para ello se realiza la siguiente idea:

Un sensor fototransmisor capatará la cantidad de luz que le llega y como consecuencia, cuando pasemos la mano alrededor del sensor la cantidad de luz que le llegará se irá modificando. Dependiendo de los datos que devuelva el fototransmisor se le pasarán unos datos a un Piezo y emitirá diferentes sonidos.

Se propone la realización de un prototipo con Arduino, conectado por puerto USB a un ordenador que le dará una potencia máxima 5V. Con este simulador se podrá plantear una idea mucho más desarrollada y perfecionada.

Producto desarrollado

Componentes

Nos encontramos con diferentes  acciones que actúan sobre diferentes controles:

Iluminación (leds)

Tenemos dos leds, uno sencillo rojo y otro RGB.
El primero, el led rojo,  lo usamos para indicarnos que se están calibrando los fototransmisores. Cuando se apaga ya podemos iniciar el juego de luces y sonidos.

El Led RGB se usa para mostrar la versión audio en colores. Estos sensores tienen, a parte del cátodo que va a tierra, tres pines. Depende de la tensión que salen de los pines se modula el color del LED.

Audio

Se utiliza un elemento denominado Piezo que lo que hace es vibrar cuando recibe una señal. En nuestro caso la señal la recibimos mapeada desde uno de los  fototransistores, más concretamente el que le da la seña de rojo al pin del Led RGB.

Acción del usuario o entorno

El  entorno envía la acción a través de los fototransistores. Hay tres que envían la señal al Led RGB (rojo, verde y azul).

El usuario interactúa con los tres fototransistores aunque sólo uno de ellos, el mismo que envía la señal al pin rojo, es el que envía la señal a Piezo. El resto hace que la luz se modifique también cuando pasamos la mano a su alrededor. Por lo tanto se modifican el resto de colores.

Desarrollo

En las conexiones de los diferentes sensores y elementos se han tenido en cuenta  conectar los cátodos o emisores a tierra y los ánodos o colectores a difrentes pines.

En concreto destacar que hay 6 pines digitales en la placa de Arduino, marcados con ~ (~3, ~5, ~6, ~9, ~10, ~11). El LED RGB conecta sus diferentes pines en tres de estos pines digitales (en concreto el 9, 10, 11).

A estos pines digitales se les ha enviado información analógica (la luz ambiental a través de los fototransmisores, que están conectados a la placa de Arduino a los pines analógico (A0, A1, A2).

Hay que destacar un error que me he encontrado en el libro. La resistencia del pin rojo debería ser diferente a las del verde y el azul. Esto es debido a que necesita menos tensión para funcionar.

Para ello lo que se ha realizado es un cambio de resistencia en fototransmisor que envía la señal al rojo. En vez de 10Kilo ohmios le pasamos 1 Kilo ohmio y esto hace que llegue menos tensión.

Hay un red Rojo que conectado a tierra y al pin 13 que lo que hace es apagarse cuando en el se han calibrado los sensores a través del código recogido en el setup()

El bizer está conectado el pin 8 y envía una frecuencia según los valores recogidos por el fotsensor.


// FOTOTRANSISTOR
// ----------------
// Los fototransistores emiten un corriente proporcional a la cantidad de luz que absorven.
// Creamos las varibles constantes que nos indicarán donde están conectados Fototransistores o sensores de luz en la placa de Arduino
// Están conectados a los Pines de ENTRADAS ANALÓGICAS de la placa de Arduino
// cada Fototransistor le pasará un dato a un pin del LED RGB
const int redSensorPin = A0;
const int greenSensorPin = A1;
const int blueSensorPin = A2;

// LED RGB (emitirá una luz según la iluminación que le lleguen a los 3 fototransmisores
// ----------------
// Declaramos las variables que afectarán al sensor RGB
// Conectamos los tres terminales del sensor a tres de los 6 pines de arduino PWM ~ (9, 10, 11) identificados conn ~
// Hacemos constantes porque son variables que no se modifican, son fijas
const int greenLEDPin = 9;
const int blueLEDPin = 10;
const int redLEDPin = 11;

//FOTOTRANSISTOR para el Theremín
// ----------------
//Creamos variables enteras para uno de los fototransistores que será el que
//modifique el sonido emitido por el PIEZO

//_ Valores iniciales
int sensorValue;//variable que leerá el valor leído con la función analogRead(). En concreto el A0
int sensorLow; //el valor incial es de 1023
int sensorHigh = 0; //el valor inical es 00

// El fototransitor se tiene que calibrar. Cuando se calibra la luz del Pin se apaga y significa que
// el piezo comienza a funcionar porque los sensores de luz o fototransitores ya están calibrados
// Constante que indica que el sensor conectado a A0 ha terminado la calibración.
// Está conectado al pin 13
const int ledPin = 13;

// LED RGB
// ----------------
//_ Valores iniciales de los terminales del LED RGB que se usarán para modular el LED
// Valores de entrada
int redValue= 0;
int greenValue= 0;
int blueValue= 0;
// Valores de salida
int redSensorValue= 0;
int greenSensorValue= 0;
int blueSensorValue= 0;

void setup() {
// Establecemos la conexión entre la placa de Arduino y el ordenador
// para poder ver los valores de la entrada analógica en la pantalla del ordenador
// El argumento 9600bit/seg es la velocidad con la Que Arduino se comunicará
// usando el puerto serie IDE para ver la información que se envía desde el microcontrolador
// en este caso también veremos los valores mapeados con el método map()
Serial.begin(9600); //configuramos la comunicación serie a 9600 bps

//definimos los diferentes pin del LED RGB
pinMode(greenLEDPin, OUTPUT);
pinMode(redLEDPin, OUTPUT);
pinMode(blueLEDPin, OUTPUT);

//definimos el pin del LED rojo
pinMode(ledPin, OUTPUT);

//digitalWrite() es la función que permite enviar 5V o 0V a un pin de salida usando los
//dos argumentos posibles HIGH o LOW
//encendemos el LED rojo
digitalWrite(ledPin, HIGH);

//Hacemos un bucle para calibrar los valores máximos y mínimos del sensor conectado al pin A0
//que en nustro caso es el redSensorPin (el primero a la izda)
while(millis() < 5000){ sensorValue = analogRead(redSensorPin); // guardamos el valor recogido por el sensor, // en la variable creada al inicio if (sensorValue > sensorHigh){ //si ese valor que recoge es mayor que 0 es que recibe señal
sensorHigh = sensorValue; // cambiamos el valor del sensorHigh
// que al inicio era 0 con el valor que recoge el redSensorPin
// que recordamos es el que está conectado al A0
}
if (sensorValue < sensorLow){ //si el sensorValue es menor que 1023 que es l valor incial,
// es decir, no se pasa de rango
// le asignamos su valor a sensor low

sensorLow = sensorValue;
}
// como es un bucle estos valores van cambiando hasta que deje de ser cierta la condición
// en ese momento se mantien un valor de sensorHigh y otro de sensorLow y
// nos indica que ya está calibrado y se apaga la luz del LED rojo
}
digitalWrite(ledPin, LOW); //apagamos el led Rojo

}
void loop() {
// Theremin
// =========

sensorValue = analogRead(redSensorPin);//leemos el redSensorPin A0 y lo guardamos en la variable
//esta lectura la hace constantemente por el loop por lo que el tono cambiará si modificamos
//la luz que recibe el fotoTransistor conectado a A0

// El método map() crea un nuevo array con los resultados de la llamada a la
// función indicada aplicados a cada uno de sus elementos.argumentos de map()
// map(valor, fromLow, fromHigh, toLow, toHigh)

// mapeamos el valor que recibimos en el sensorValue poniendo como como
// límite de valores de entrada sesorLow y sensorHigh
// así le asignamos un valor proporcional que esté entre 50 y 40000 (que es el intervalod e
// frecuencia que genera Arduino)

int pitch = map(sensorValue, sensorLow, sensorHigh, 50, 40000);

// llamamos a la función tone() para reproducir sonido
// recoge tres agumentos:
// 1.- el pin que reproduce el sonido, en nuestro caso el 8 que es donde está conectado el PIEZO
// 2.- la frecuencia que está recogida en la variable entera pitch que ha mapeado los datos del sensor
//. para transformala en una frecuencia leible por el PIEZO
// 3.- delay que es el tiempo que reproduce dicha nota
tone(8, pitch, 20);
delay(10); //añadimos un delay de 10 milisegundos para dar tiempo a la reporducción del sonido
//

// Cambio de iluminación. El LED RGB
// Usamos la función analogWrite para cambiar el brillo del LED a través de los pines PWM

// Necesita dos argumento. El pin en el que escribe (redLEDPin = 11, blueLEDPin = 10, greenLEDPin =9)
// y el valor de 0 a 255

redSensorValue = analogRead(redSensorPin);
delay(5);
greenSensorValue = analogRead(greenSensorPin);
delay(5);
blueSensorValue = analogRead(blueSensorPin);
delay(5);

// Como el valor de lectura es entre 0 y 1023 que es el valor que viene del sensor
// lo que hacemos es dividirlo entre 4.
// Otro posible sistema sería mapearlo
redValue =redSensorValue/4;
greenValue = greenSensorValue/4;
blueValue = blueSensorValue/4;

//Visualizamos los datos mapeados en el ordenador
Serial.print(«Datos Mapeados t Rojo: «);
Serial.print(redValue);
Serial.print(«t Verde: «);
Serial.print(greenValue);
Serial.print(«t Azul: «);
Serial.println(blueValue);

//Le pasamos los dos argumentos a analogWrite para que genere menos luz cada pin
analogWrite(redLEDPin, redValue);
analogWrite(greenLEDPin, greenValue);
analogWrite(blueLEDPin, blueValue);

}

Debate0en Arduino (P2)

No hay comentarios.

Publicado por

PEC 2 – Proyecto Arduino – Termómetro de la piel con indicaciones en LCD y luz LED

PEC 2 – Proyecto Arduino – Termómetro de la piel con indicaciones en LCD y luz LED
Publicado por

PEC 2 – Proyecto Arduino – Termómetro de la piel con indicaciones en LCD y luz LED

Descripción del proyecto Realizado con los componentes de la plataforma Arduino, el miniproyecto “Termómetro de la piel con indicaciones en LCD y…
Descripción del proyecto Realizado con los componentes de la plataforma Arduino, el miniproyecto “Termómetro de la piel con indicaciones…
  • Descripción del proyecto

Realizado con los componentes de la plataforma Arduino, el miniproyecto “Termómetro de la piel con indicaciones en LCD y luz LED” dispone de interacciones con los controles de iluminación (luz LED RGB) e imagen (pantalla LCD). El prototipo cuenta con la placa Arduino, el potenciómetro, la pantalla LCD, 4 resistencias de 220 Ω, la luz LED RGB y el sensor de temperatura TMP36.

Su funcionamiento es sencillo e intuitivo: al colocar el dedo sobre el sensor de temperatura, se registra la temperatura de la piel del usuario y se muestra en la pantalla LCD, simultáneamente, la luz LED cambia de color en correspondencia con la variación de la temperatura (por encima de 22 grados, la luz es blanca; entre 22 y 23, se vuelve azul; entre 23 y 24, verde; y entre 24 y 25, roja). Además, se ofrece la posibilidad de ajustar el contraste de la Pantalla LCD mediante el potenciómetro, y los datos relativos a los valores del sensor, los voltios y temperaturas se visualizan en el monitor de puerto serie del IDE.

 

  • Enlace al vídeo del prototipo

Debate0en PEC 2 – Proyecto Arduino – Termómetro de la piel con indicaciones en LCD y luz LED

No hay comentarios.

Publicado por

PEC2 – Interacción tanginle

Publicado por

PEC2 – Interacción tanginle

Este documento describe el desarrollo de un piano pentatónico construido con un kit de inicio de Arduino. El objetivo del proyecto era crear un instrumento musical simple que permitiera al usuario tocar la escala pentatónica menor de La mediante botones, con una retroalimentación visual en forma de LEDs que se iluminan al presionar cada botón. Contexto y Necesidades del Usuario Se realizó una investigación para comprender las necesidades de los usuarios interesados en aprender música o en buscar una forma…
Este documento describe el desarrollo de un piano pentatónico construido con un kit de inicio de Arduino. El objetivo…

Este documento describe el desarrollo de un piano pentatónico construido con un kit de inicio de Arduino. El objetivo del proyecto era crear un instrumento musical simple que permitiera al usuario tocar la escala pentatónica menor de La mediante botones, con una retroalimentación visual en forma de LEDs que se iluminan al presionar cada botón.
Contexto y Necesidades del Usuario
Se realizó una investigación para comprender las necesidades de los usuarios interesados en aprender música o en buscar una forma interactiva y táctil de experimentar con la creación de sonidos. Se identificó que una herramienta educativa simple podría beneficiar a principiantes de la música.
Problema Identificado
Los usuarios necesitan una forma fácil de entender para explorar conceptos musicales básicos. La falta de retroalimentación visual y táctil en los instrumentos musicales digitales es una barrera para el aprendizaje interactivo.
Objetivos del Proyecto
Crear un instrumento musical basado en Arduino que sea intuitivo de usar, proporcione retroalimentación inmediata y fomente la exploración musical a través de la escala pentatónica.

Debate0en PEC2 – Interacción tanginle

No hay comentarios.

Publicado por

Pec02 Interacción tangible

Publicado por

Pec02 Interacción tangible

https://youtube.com/shorts/_CqOIlK9Eas?feature=shared Este proyecto de Arduino tiene como objetivo crear un sistema que aborde un problema o necesidad específicos mediante una interacción física. Este sistema utiliza un circuito simple que incluye un LED, una pantalla LCD con ajuste de contraste y un botón. Al interactuar con el botón, el sistema se activa para encender el LED y mostrar mensajes relevantes en la pantalla LCD. Entrega de la actividad PEC2 …
https://youtube.com/shorts/_CqOIlK9Eas?feature=shared Este proyecto de Arduino tiene como objetivo crear un sistema que aborde un problema o necesidad específicos mediante…

https://youtube.com/shorts/_CqOIlK9Eas?feature=shared

Este proyecto de Arduino tiene como objetivo crear un sistema que aborde un problema o necesidad específicos mediante una interacción física. Este sistema utiliza un circuito simple que incluye un LED, una pantalla LCD con ajuste de contraste y un botón. Al interactuar con el botón, el sistema se activa para encender el LED y mostrar mensajes relevantes en la pantalla LCD.

Debate0en Pec02 Interacción tangible

No hay comentarios.

Publicado por

PEC 2 – INTERACCIÓN TANGIBLE

Publicado por

PEC 2 – INTERACCIÓN TANGIBLE

En este proyecto, se utiliza un Arduino para hacer música y luces sincronizadas. El Arduino controla un pequeño altavoz llamado piezoeléctrico para tocar una melodía, y al mismo tiempo, enciende y apaga una luz LED para que la música y la luz se coordinen de manera creativa, creando una experiencia audiovisual interesante y entretenida.   Entrega de la actividad PEC2 …
En este proyecto, se utiliza un Arduino para hacer música y luces sincronizadas. El Arduino controla un pequeño altavoz…

En este proyecto, se utiliza un Arduino para hacer música y luces sincronizadas. El Arduino controla un pequeño altavoz llamado piezoeléctrico para tocar una melodía, y al mismo tiempo, enciende y apaga una luz LED para que la música y la luz se coordinen de manera creativa, creando una experiencia audiovisual interesante y entretenida.

 

Debate0en PEC 2 – INTERACCIÓN TANGIBLE

No hay comentarios.

Publicado por

PEC2- Prototipo con Arduino Starter Kit -Interacción Tangible

PEC2- Prototipo con Arduino Starter Kit -Interacción Tangible
Publicado por

PEC2- Prototipo con Arduino Starter Kit -Interacción Tangible

¡Hola a todos! Mi entrega para esta segunda PEC consiste en una agenda construida y programada con Arduino Starter Kit y Arduino…
¡Hola a todos! Mi entrega para esta segunda PEC consiste en una agenda construida y programada con Arduino Starter…

¡Hola a todos!

Mi entrega para esta segunda PEC consiste en una agenda construida y programada con Arduino Starter Kit y Arduino IDE.

Lo he llamado Task Manager y está formado por un LCD y tres leds de colores (Imagen + Luz) = (Led + Texto)

Al conectar nuestro dispositivo a la corriente, el LCD nos muestra un mensaje

» Tasks, To Do Lists». Al pulsar un botón el texto del LCD nos muestra una asignatura y una fecha de entrega, mientras que un led de color acompaña a la asignatura en específico.

Cada pulsación del botón nos ayuda a navegar entre las tres tareas disponibles y activa el led correspondiente a la tarea en respecto;

Apretamos el botón 1 vez = Led Azul + Maths 

Apretamos el botón 2 veces = Led Amarillo + HTML WEB 

Apretamos el botón 3 veces = Led Rojo + Arduino Project

Apretamos más de 3 veces = Leds apagados + Tasks, To Do List 

Demo del prototipo en Youtube HAZ CLICK AQUÍ

Debate0en PEC2- Prototipo con Arduino Starter Kit -Interacción Tangible

No hay comentarios.

Publicado por

20.656 – Interacción tangible – PEC 2

Publicado por

20.656 – Interacción tangible – PEC 2

Entrega de la actividad PEC2 …
Entrega de la actividad PEC2 …

Debate0en 20.656 – Interacción tangible – PEC 2

No hay comentarios.

Publicado por

PEC 2 – Semáforo con Arduino

Publicado por

PEC 2 – Semáforo con Arduino

¡Buenas! El proyecto realizado constituye un semáforo completo, pues ejecuta para personas y coches, teniendo 3 luces led y un sonido para…
¡Buenas! El proyecto realizado constituye un semáforo completo, pues ejecuta para personas y coches, teniendo 3 luces led y…

¡Buenas!

El proyecto realizado constituye un semáforo completo, pues ejecuta para personas y coches, teniendo 3 luces led y un sonido para los coches y dos luces led y un sonido para las personas. Además, tiene un sonido para cuando cambia a verde para los coches. Funciona de la siguiente manera: la luz está verde para coches y roja para personas hasta que se presiona el pulsador, momento en el que el semáforo de coches pasa a estar en amarillo, mientras que el de personas sigue en rojo y suena un pitido continuo de tono grave. Tras pasar 5 segundos, el semáforo de coches pasa a ser rojo y el de personas también durante 2 segundos (por seguridad para los peatones). Luego, el de personas a verde a la par que se inicia un sonido más agudo e intermitente que durará todo el tiempo que el semáforo de personas esté en verde. Después de 5 segundos, el semáforo de personas pasa a ser rojo a la par que el de coches durante 2 segundos (por seguridad para los peatones) y, acto seguido, la luz cambia a verde y suena una sola vez un pitido verde muy agudo para indicar que ya pueden pasar los coches.

Semáforo con Arduino + Para Elisa, https://www.youtube.com/watch?v=-cDxc-dS8xM

Hemos empleado la herramienta de Tinkercad para realizar los esquemas del proyecto. A continuación se puede ver la vista de circuito.

Adicionalmente, hemos añadido una melodía al inicio del programa para que sea más divertido, pero no involucra nada del semáforo.
¡Un saludo!

Debate0en PEC 2 – Semáforo con Arduino

No hay comentarios.

Publicado por

PEC 2 – Alarma de seguridad

Publicado por

PEC 2 – Alarma de seguridad

La presente memoria corresponde al desarrollo y ejecución de un mini proyecto utilizando la plataforma Arduino. Cuyo objetivo principal fue reproducir el sonido de un sistema de alarma utilizando componentes principales como un buzzer piezoeléctrico, pulsador y un LED rojo.     Entrega de la actividad PEC2 …
La presente memoria corresponde al desarrollo y ejecución de un mini proyecto utilizando la plataforma Arduino. Cuyo objetivo principal…

La presente memoria corresponde al desarrollo y ejecución de un mini proyecto utilizando la plataforma Arduino. Cuyo objetivo principal fue reproducir el sonido de un sistema de alarma utilizando componentes principales como un buzzer piezoeléctrico, pulsador y un LED rojo.

 

 

Debate0en PEC 2 – Alarma de seguridad

No hay comentarios.