viernes, 5 de mayo de 2017

Arduino: proyecto 3 Love-o-meter

Este proyecto trataba de construir un circuito con leds(3), resistencias(3) y un sensor de temperatura(1) (TMP36) que al variar la temperatura las luces se encendían o se apagaban.
No fue muy complicado de hacer, ya que no llevaba el circuito demasiados componentes. Respecto al código, no es un código muy complicado de entender aunque si era un poco extenso.
El único problema que tuve era que al calentar el sensor de temperatura de la placa ni se encendía si se apagaban los leds, la solución fue cambiar los valores introducidos anteriormente en el código.



Interfaz 



Código 
const int sensorPin = A0;
 const float baselineTemp = 20.0;


void setup(){
  Serial.begin(9600); // open a serial port.

  for(int pinNumber = 2; pinNumber<5; pinNumber++){
        pinMode(pinNumber, OUTPUT);
        digitalWrite(pinNumber, LOW);
  }
}

void loop(){

    int sensorVal = analogRead(sensorPin);

Serial.print("Sensor Value: ");
Serial.print(sensorVal);

// convert the ADC reading to voltage.
float voltage = (sensorVal/1024.0) * 5.0;

Serial.print(" , Volts: ");
Serial.print(voltage);

Serial.print(" , degrees C: ");
// convert the voltage to temperature in degrees.
float temperature = (voltage - .5) * 100;
Serial.println(temperature);

if(temperature < baselineTemp){
     digitalWrite(2, LOW);
     digitalWrite(3, LOW);
     digitalWrite(4, LOW);

}else if(temperature >= baselineTemp+2 &&
    temperature < baselineTemp+4){
    digitalWrite(2, HIGH);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);

}else if(temperature >= baselineTemp+4 &&
    temperature < baselineTemp+6){
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, LOW);
}else if(temperature >= baselineTemp+6){
     digitalWrite(2, HIGH);
     digitalWrite(3, HIGH);
     digitalWrite(4, HIGH);

    }

    delay(1);

}


No hay comentarios:

Publicar un comentario