Go Down

Topic: Controlador bomba placas solares (Solucionado) (Read 582 times) previous topic - next topic

webos234

Jan 09, 2017, 05:45 pm Last Edit: Jan 10, 2017, 06:12 pm by webos234
Buenas, ante todo presentarme, soy un estudiante de ingeniería mecánica que debido a su proyecto fin de carrera, aún en marcha, se ha aficionado un poco a los microcontroladores y más concreto a arduino. El caso es que realizando un pequeño proyecto para controlar la bomba que hace recircular el agua de unas placas solares me he encontrado con un fallo y por mucho que lo reviso... no doy con la tecla para solucionarlo. Bueno, lo primero los materiales que estoy usando:
Arduino uno r3
lcd 20x4 con protocolo i2c
un pequeño keyes de dos relees
3 sondas de temperatura ds18b20
Protoboards, resistencias y transistores 2n2222 para accionar los relés.
Bueno, el caso es que además de controlar la bomba quiero controlar una resistencia de 1000w que está sumergida en la placa solar. Y las condiciones en las que quiero que funcione cada cosa son las siguientes:
Cuando la temperatura de la sonda 1 este en 35º y 90º y lka diferencia con la temperatura de la sonda 2 sea mayor a 7º que se active la bomba.
Cuando la temperatura de la sonda 1 sea mayor a 95º que se active la bomba sea cual sea la diferencia de temperatura.
Cuando la sonda 2 detecte una temperatura menor a 2º que se activen la bomba y la resistencia.
Y aquí teneis mi codigo, siento mucho el tener tanto código comentado, pero es que antes de instalar todos los componentes estuve usando un ejemplo que me mostraba los datos por el serial y claro... lo he dejado por si necesitaba en algún momento realizar comprobaciones:

El caso es que aunque me registra bien las temperaturas, cuando estas bajan de 10º en la pantalla empiezan a mostarse como 70 80 o valores así y el programa no pone en marcha los relés como debería

Edit: Solucionado, era un problema con los enteros, trás cambiarlos a float todo correcto

surbyte

Si todo tu problema esta resuelto, edita el título y agrega [SOLUCIONADO].

Go Up