Oi, boa noite a todos!!
Estou criando um mini projetinho para fins de estudo e estou travado na parte da programação, estou fazendo um acionamento de um ventilador por meio de um sensor de temperatura( DS18B20 tipo sonda), porém quando o sensor chegar em 30 ºC ele deve acionar um buzzer que deve “apitar” 3 vezes e após isso acionar o relé ligando o ventilador. Testei a função While mas não esta funcionando da maneira certa, esta acionando o buzzer mesmo abaixo dos 30ºC.
alguém consegue me dar um Norte?
Meu código ate o momento esta assim:
#include <OneWire.h>
#include <DallasTemperature.h>
#define dados 2
#define buzzer 7
OneWire oneWire(dados);
DallasTemperature sensors(&oneWire);
void setup(void)
{
pinMode(buzzer, OUTPUT);
pinMode(pinPot, INPUT);
pinMode(dados, INPUT);
Serial.begin(9600);
Serial.println(“Demonstração do funcionamento do sensor”);
sensors.begin();
pinMode(buzzer, OUTPUT);
}
void loop(void)
{
Serial.print(" Requerimento de temperatura…");
sensors.requestTemperatures();
Serial.println(“Pronto”);
Serial.print("A temperatura é: "); /* Printa "A temperatura é:
Serial.print(sensors.getTempCByIndex(0));
if (sensors.getTempCByIndex(0) < 30){
digitalWrite(buzzer, LOW);
}else{
digitalWrite(buzzer, HIGH);
}