Arduino - sensores

 
Vista:

sensores

Publicado por nandozu (1 intervención) el 28/01/2022 03:19:00
Buenas noches para cada unos de ustedes, estoy iniciando en todo este mundo del arduino y con muchas dificultades, por los cuales recurro al conocimiento de ustedes. Estoy haciendo un proyecto donde presionando una tecla me marca una temperatura diferente. El problema es que si bien el sensor está funcionando solamente me devuelve un número fijo, estático. Me podrán decir donde esta el error. Por lo pronto muchas gracias.
#include <LiquidCrystal.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <Keypad.h>

#define ONE_WIRE_BUS 9

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;

LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte rowPins[ROWS] = {22, 24, 26, 28};
byte colPins[COLS] = {23, 25, 27, 29};

Keypad teclado = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

float Sensor_Agua; //sensors.getTempCByIndex(0);
float Sensor_Mosto; //sensors.getTempCByIndex(1);
float Sensor_Hervido; //sensors.getTempCByIndex(2);
float Sensor_Fermentacion; //sensors.getTempCByIndex(3);


void setup() {
lcd.begin( 20, 4);
sensors.begin();

}

void loop() {

char tecla = teclado.getKey ();

//sensors.requestTemperatures();

if (tecla == 'A') {
Sensor_Agua = sensors.getTempCByIndex(0);
lcd.setCursor( 5, 0);
lcd.print("Sensor Agua");
lcd.setCursor( 5, 1);
lcd.print(Sensor_Agua);

} else if (tecla == 'B') {
Sensor_Mosto = sensors.getTempCByIndex(1);
lcd.setCursor( 5, 0);
lcd.print("Sensor_Mosto");
lcd.setCursor( 5, 1);
lcd.print(Sensor_Mosto);

} else if (tecla == 'C') {
Sensor_Hervido = sensors.getTempCByIndex(2);
lcd.setCursor( 5, 0);
lcd.print("Sensor_Hervido");
lcd.setCursor( 5, 1);
lcd.print(Sensor_Hervido);

} else if (tecla == 'D') {
Sensor_Fermentacion = sensors.getTempCByIndex(3);
lcd.setCursor( 5, 0);
lcd.print("Sensor_Fermentacion");
lcd.setCursor( 5, 1);
lcd.print(Sensor_Fermentacion);
}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder