De los enlaces anteriores, el que más se acerca al propósito de mi proyecto es Collin’s Lab: Infrared heart sensor.
MATERIALES:
Arduino |
2 Resistencias una 270 y otra de 10. |
2 LED infrarojos uno receptor, el otro emisor. |
Baquelita |
Cables |
Protoboard |
Cautín y soldadura |
Se separa los LED con cinta aislante para que no tengan contacto.
PROGRAMANDO ARDUINO
PARA VISUALIZAR...
Se utiliza Processing. (la programación fue encontrada en la red)
Programación.
/* Processing code for this example
// Graphing sketch
// This program takes ASCII-encoded strings
// from the serial port at 9600 baud and graphs them. It expects values in the
// range 0 to 1023, followed by a newline, or newline and carriage return
// Created 20 Apr 2005
// Updated 18 Jan 2008
// by Tom Igoe
// This example code is in the public domain.
*/
import processing.serial.*;
Serial myPort; // The serial port
int xPos = 1; // horizontal position of the graph
void setup () {
// set the window size:
size(400, 300);
// List all the available serial ports
println(Serial.list());
// I know that the first port in the serial list on my mac
// is always my Arduino, so I open Serial.list()[0].
// Open whatever port is the one you're using.
myPort = new Serial(this, Serial.list()[0], 9600);
// don't generate a serialEvent() unless you get a newline character:
myPort.bufferUntil('\n');
// set inital background:
background(0);
}
void draw () {
// everything happens in the serialEvent()
}
void serialEvent (Serial myPort) {
// get the ASCII string:
String inString = myPort.readStringUntil('\n');
if (inString != null) {
// trim off any whitespace:
inString = trim(inString);
// convert to an int and map to the screen height:
float inByte = float(inString);
inByte = map(inByte, 0, 1023, 0, height);
// draw the line:
stroke(127,34,255);
line(xPos, height, xPos, height - inByte);
// at the edge of the screen, go back to the beginning:
if (xPos >= width) {
xPos = 0;
background(0);
}
else {
// increment the horizontal position:
xPos++;
}
}
}
COMPROBANDO
Revise si funcionaba, pero el LED infrarojo receptor es muy sencible así que decidí armar una caja para disminuir la cantidad de luz y hacer un orificio por donde el dedo ingresará y probar de nuevo.
PASANDO EL ESQUEMA A LA BAQUELITA
Después de combrobarlo, se pasa a una baquelita para que sea mucho más comoda la utilización del codificador y pensar en la presentación del proyecto, es decir, el montaje.
Para esto necesitamos los mismos materiales. LED infrarojo receptor y LED infrarojo emisor, resistencias 270 y 10, cables.
Ahora compruebo si los LED infrarrojos emisores funcionan.
SIGUIENTE PASO
Intentar con LED infrarojo emisor redondo y correr la programación.
Ahora toca idear una manera para hacer el montaje en baquelita y dentro de la pelota con la que se hará el montaje final y que funcione!!!
PROGRAMANDO ARDUINO
int val;
void setup() {
//no es necesario declarar el pin analogo de entrada
Serial.begin(9600);
//velocidad con la cual va a estar leyendo datos de la fotocelda
pinMode(13, OUTPUT);
}
void loop() {
int val = analogRead(1);
//retorna el valor entre 0 y 1023 de la entrada del pin#
Serial.println(val);
// delay(1000);
//para poder leer los datos en la pantalla
if
(val >= 200) {
digitalWrite (13, HIGH);
}
else
digitalWrite (13, LOW);
}
void setup() {
//no es necesario declarar el pin analogo de entrada
Serial.begin(9600);
//velocidad con la cual va a estar leyendo datos de la fotocelda
pinMode(13, OUTPUT);
}
void loop() {
int val = analogRead(1);
//retorna el valor entre 0 y 1023 de la entrada del pin#
Serial.println(val);
// delay(1000);
//para poder leer los datos en la pantalla
if
(val >= 200) {
digitalWrite (13, HIGH);
}
else
digitalWrite (13, LOW);
}
PARA VISUALIZAR...
Se utiliza Processing. (la programación fue encontrada en la red)
Programación.
/* Processing code for this example
// Graphing sketch
// This program takes ASCII-encoded strings
// from the serial port at 9600 baud and graphs them. It expects values in the
// range 0 to 1023, followed by a newline, or newline and carriage return
// Created 20 Apr 2005
// Updated 18 Jan 2008
// by Tom Igoe
// This example code is in the public domain.
*/
import processing.serial.*;
Serial myPort; // The serial port
int xPos = 1; // horizontal position of the graph
void setup () {
// set the window size:
size(400, 300);
// List all the available serial ports
println(Serial.list());
// I know that the first port in the serial list on my mac
// is always my Arduino, so I open Serial.list()[0].
// Open whatever port is the one you're using.
myPort = new Serial(this, Serial.list()[0], 9600);
// don't generate a serialEvent() unless you get a newline character:
myPort.bufferUntil('\n');
// set inital background:
background(0);
}
void draw () {
// everything happens in the serialEvent()
}
void serialEvent (Serial myPort) {
// get the ASCII string:
String inString = myPort.readStringUntil('\n');
if (inString != null) {
// trim off any whitespace:
inString = trim(inString);
// convert to an int and map to the screen height:
float inByte = float(inString);
inByte = map(inByte, 0, 1023, 0, height);
// draw the line:
stroke(127,34,255);
line(xPos, height, xPos, height - inByte);
// at the edge of the screen, go back to the beginning:
if (xPos >= width) {
xPos = 0;
background(0);
}
else {
// increment the horizontal position:
xPos++;
}
}
}
COMPROBANDO
Revise si funcionaba, pero el LED infrarojo receptor es muy sencible así que decidí armar una caja para disminuir la cantidad de luz y hacer un orificio por donde el dedo ingresará y probar de nuevo.
PASANDO EL ESQUEMA A LA BAQUELITA
Después de combrobarlo, se pasa a una baquelita para que sea mucho más comoda la utilización del codificador y pensar en la presentación del proyecto, es decir, el montaje.
Para esto necesitamos los mismos materiales. LED infrarojo receptor y LED infrarojo emisor, resistencias 270 y 10, cables.
MONTAJE PARA LA PRESENTACIÓN FINAL
Pelota de carita feliz |
Abrirla por la mitad |
Montar dentro la baquelita |
Así se ve. |
Hacer un orificio donde quedan los LED para ahí poner el dedo. |
Separar con cinta aislante los LEDs para que no hagan contacto los puntos de soldadura. |
TRATANDO DE SOLUCIONAR
Ahora compruebo si los LED infrarrojos emisores funcionan.
LED infrarojo emisor redondo. |
Probando LED infrarojo receptor redondo. |
Intentar con LED infrarojo emisor redondo y correr la programación.
Esta es la manera más efectiva de aprovechar la intesidad de la luz emitida por el LED |
Al ubicar el LED infrarojo Emisor frente a la uña y por el lado de la yema del dedo el LED infrarojo Receptor moviendo un poco funciona. |
Corriendo la programación. |
Funciona, pero dejando el dedo en un punto específico. |
Ahora toca idear una manera para hacer el montaje en baquelita y dentro de la pelota con la que se hará el montaje final y que funcione!!!
No hay comentarios:
Publicar un comentario