Veamos por partes cada uno de ellos:
SISTEMA DE CONTROL (ARDUINO)
Esquema eléctrico:
Circuito en placa protoboard:
Código fuente:
int Led = 13;
String estado;
//Serial myPort;
void setup()
{
Serial.begin(9600);
pinMode(Led,OUTPUT);
}
void loop()
{
if(Serial.available()!=10)
{
estado = Serial.readString();
Serial.println(estado);
if(estado == "APAGADO")
digitalWrite(Led,LOW);
if(estado == "ENCENDIDO")
digitalWrite(Led,HIGH);
}
}
INTERFAZ - PC - PROCESSING
//libreriasimport processing.serial.*;
Serial port;
boolean activado = false;
String envioEstado = "APAGADO";
void setup(){
println(Serial.list());
port = new Serial(this, Serial.list()[1], 9600);
size(600,400);//tamaño de la ventana
background(128); //color de fondo
fill(#ff0000);
rect(350,75,200,200);//para mostrar el color seleccionado
textSize(64);
fill(#ffffff);
text("OFF", 390, 195);
}
void draw()
{
//action botton
if(mousePressed){
//para subir la intensidad
if(mouseX>350 && mouseX<550 && mouseY>75 && mouseY<275)
{
if(activado)
{
fill(#ff0000);
rect(350,75,200,200);
textSize(64);
fill(#ffffff);
text("OFF", 390, 195);
println("apagado");
activado = false;
envioEstado = "APAGADO";
println(envioEstado); // en la consola
port.write(envioEstado); // por el puerto Serial
}
else
{
fill(#00ff00);
rect(350,75,200,200);
textSize(64);
fill(#ffffff);
text("ON", 400, 195);
println("encendido");
activado = true;
envioEstado = "ENCENDIDO";
println(envioEstado); // en la consola
port.write(envioEstado); // por el puerto Serial
}
delay(800);
}
}
}
No hay comentarios:
Publicar un comentario