Para controlar la temperatura de un acuario necesitamos los siguientes materiales:
1 Arduino UNO

1 Sensor de temperatura DS18B20

1 Resistencia de 4.7k
El sensor de temperatura DS18B20 mide la temperatura en grados celsius, se conecta a mediante 1-wire y según especificaciones del fabricante mide la temperatura entre -55° a +125°.
La siguiente imagen muestra el esquema de conexión:

El siguiente es el código utilizado:
#include <DallasTemperature.h>
#include <OneWire.h>
#define PIN_TEMPERATURA 7
#define TEMP_MINIMA 25.50
#define TEMP_MAXIMA 26.00
DeviceAddress TemperaturaAgua;
OneWire oneWire(PIN_TEMPERATURA);
DallasTemperature termometro(&oneWire);
void setup(){
Serial.begin(9600);
termometro.begin();
pinMode(PIN_TEMPERATURA, INPUT);
if(!termometro.getAddress(TemperaturaAgua, 0)){
Serial.println("Sensor de Temperatura Desconectado");
}
termometro.setHighAlarmTemp(TemperaturaAgua, TEMP_MAXIMA);
termometro.setLowAlarmTemp(TemperaturaAgua, TEMP_MINIMA);
}
void loop(){
leerTemperatura();
}
void leerTemperatura(){
float TemperaturaDelAgua;
termometro.requestTemperatures();
TemperaturaDelAgua = termometro.getTempC(TemperaturaAgua);
//Serial.println(TemperaturaDelAgua); #para ver la temperatura que esta marcando
if(termometro.hasAlarm(TemperaturaAgua)){
if(termometro.getTempC(TemperaturaAgua) < termometro.getLowAlarmTemp(TemperaturaAgua)){
Serial.println("La temperatura del agua esta bajo el minimo");
}
if(termometro.getTempC(TemperaturaAgua) > termometro.getHighAlarmTemp(TemperaturaAgua)){
Serial.println("La temperatura del agua esta sobre el maximo");
}
}
}
Cualquier duda o corrección no dudes en escribir.