Sistema de riego

Hola, me gustaría poner un sistema de riego automático. Y no tengo ni idea de por donde empezar.

Estuve mirando un poco, y la idea que tengo es colocar un sensor de humedad (o dos) en la tierra, un sensor de lluvia y quizá uno de viento. Y las electro-valbulas, aspersores...

La parte que peor estoy es en como podría programarlo. Ya que los sensores estuve haciendo algunas pruebas con los de la placa del devkit+ y creo que podría más o menos usarlos sin problemas. Y pues eso, mi principal duda es qué lenguaje usar para el script, donde lo tengo que guardar.

Y si alguno ya hizo su sistema de riego, y me puede ayudar con algo que se me pueda pasar por alto. O recomendarme algún tipo de sensor...

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Puede que Domino sea suficiente

Depende de las funciones que quieras poner. Si consigues hacer funcionar los sensores de humedad, viento y temperatura con Domino, la misma placa te podría permitir abrir las electroválvulas e incluso activar bombas de riego a 220v (yo lo tengo así).

Puedo ayudarte con la programación, aunque no creo que pueda con los sensores de humedad y viento. Por ahora, puedes usar operaciones lógicas básicas, y más adelante tendrás la posibilidad de usar programación horaria, sin necesidad de depender del agente.

Tratraré de informarme de

Tratraré de informarme de todo. Ya que me acabo de enterar ahora (en semana santa) de que quire poner mi padre el riego automático. Y hasta Junio no creo que pueda volver para ponerlo, pero le dije que se lo quería poner yo y así de paso practicaba con opendomo. Así que tengo unos meses ahora para buscar/comprar los sensores. Probarlos y ya cuando vuelva en Junio ir a tiro fijo y montar todo.

Se que andas muy liado, pero cuando tengas un poco de tiempo te agradecería mucho si me puedes decir como tienes tu montado todo (también marca/modelo de todo, y si te dieron algún tipo de problema).

Muchas gracias, skr-b.

Sensor de humedad

Después de unos días sin mirar nada, vuelvo por aquí ^^

El otro día me pasé por el leroy merlín y vi un sensor de humedad analógico y como no me pareció muy caro lo compré (no recuerdo cuanto, pero menos de 10€). Y en principio responde bien a los cambios de humedad con domino. Seguí los comandos como si fuese un sensor de luz.

res

def

save

para dejarla por defecto y empezar:

cfg ai005 ai

lbl ai005 humed

save

fxb humed 00051

save

Con esto en mi caso me da valores sobre el 100 cuando está seco. Y al meterlo en un vaso de agua sobre 35-40. Así que el tema de los sensores de humedad ya más o menos lo tengo resuelto con adaptarme a los valores.

Ahh, como solo tiene 2 cables el sensor conecté uno a la entrada analógica 5 y el otro a gnd. Y el sensor de lluvia que tenían me pareció caro y lo dejé (sobre 25€). Y de viento no tenían (aunque el que me atendió me dijo que no tenían de humedad y después los encontré xD).

 


 

Cambiando un poco del tema anterior, también estuve mirando electroválvulas. Y por lo que vi todas trabajan a 24V de CC. Podría con el arduino mandar arrancar directamente dichas valvulas. O como creo, tendría que comprar una fuente de 24V y con el aruino manejar un relé?

Buenos progresos!

Vaya, justamente me estuve mirando las electroválvulas en esa misma tienda, y estuve muy tentado de llevarme un par de ellas para jugar un poco con Domino, pero con la carga de trabajo que tengo ahora mismo no me convienen más distracciones...

Si, es necesario emplear una separación entre control y potencia, ya que las electroválvulas podrían llegar a dañar el circuito electrónico del Arduino (cualquier cosa que lleve una bobina puede dar problemas con la electrónica si no se hace bien). Los relés son una buena opción, puesto que aislan perfectamente y son económicos. Hay otras soluciones no mecánicas (optoacopladores) pero no estoy seguro de su fiabilidad y robustez para ese propósito en particular.

Mi consejo es que pruebes con una placa de relés: es fácil, rápido y seguro.

Muchas gracias por tu consejo

Muchas gracias por tu consejo ^^

Así lo haré, con los relés. Ahora a ver si pruebo el ethernet shield que no se cuanto llevo con el y aún no lo probé :(

Valvulas

Hola yo tengo montado el sistema con un programador comercial, pero en cuanto el proyecto avance un poco tengo pensado cambiarlo a OpenDomo. Comprueba bien lo de los voltajes, ya que casi todas las valvulas que he visto funcionan con 24 V pero AC.

electrovalvulas

Hola, muchas gracias por tu comentario. Ya me metiste la duda en el cuerpo. Me puse a mirar un poco por internet ahora, y tienes razon que hay muchas que son AC, aunque también que aceptan voltajes 24-240V muchas.  Quizá me las compre de las que aceptan hasta los 240V AC y así con el relé todo solucionado.

Volví a la tienda

Pues volví al leroymerlin, que después de mirar por internet precios de sensores de lluvia no estaba tan caro. Pero hoy lo tenían a 35€ así que lo dejé quedar. Y en su lugar me compré ya las electrovalvulas y un programador que estaba rebajado de 100€ a 30€ xD. Y así ya tengo el transformador para los 24V de AC. Que como dices la mayoría de las tiendas son en AC.

Ahora la pregunta que tengo es si el arduino puede trabajar con los 24V, creo recordar que si puede. De este modo, en principio dejaría el arduino con los sensores de humedad (tengo 3 zonas distintas). Por otro lado leería del programador a la hora que se puede regar. Y con salida a un relé para que no circule tanta corriente por el arduino. Llevaría los 24V AC a las 3 electroválvulas.

Pues la duda es esa, si puede trabajar con los 24V, aunque sean de AC.

Si usas los relés, sin problema

Si usas la placa de relés (o sea, conectando las elctroválvulas a los bornes verdes RL1 y RL2) no hay problema. Soportan hasta 16A en 230V, o sea que para 24v con poco amperaje serán más que suficiente. Los relés aislan físicamente la parte electrónica de la de potencia hasta en dos niveles distintos, por lo que no hay peligro alguno dentro de esa intensidad.

La idea que tenía era usar de

La idea que tenía era usar de momento el programador para "dar el visto bueno" en las horas de riego. Es decir, que si es hora de riego, y además el sensor de humedad dice que está seco. Se empiece a regar. Sería algo así como un ["hora de riego" and "Tierra seca"]=>Activar sistema de riego.

Me pasé por la web de arduino y ya vi que el voltaje recomendado es de 7V a 12. Soportando desde 6V hasta 20V. Así que los 24V de mi "hora de riego" se pasan. Estoy mirando como pasar AC a DC y a su vez reducir el voltaje. Estoy mirando y hace falta un puente rectificador para pasar a DC (supongo que hay que pasarla). Pero no se si me acabaré haciendo mucho lio.

Edito: que no lo puse, sería sacar de la salida del programador que debería ir a la electroválvula, llevarla a una entrada del arduino. O si hay otra forma para poder hacer dicho horario en el cual permitir el riego. Paso del programador y así si que se bien como usar el transformador de 24V con los relés.

Que lastima

Teníamos previsto incorporar en la próxima versión de Domino un control de tiempo que permitiese realizar la programación que comentas, pero a causa de la carga de trabajo actual no será posible alcanzar ese objetivo a corto plazo.

Ten cuidado con el programador. En principio debería funcionar si es simplemente un circuito abierto/cerrado pero hay algunos que suministran voltaje y podría dañar la placa. Te aconsejo que lo verifiques con un polímetro por si acaso...

Casi ni me hacía falta

Casi ni me hacía falta verificarlo. Ya que en el esquema de montaje del programador se ve claramente que tiene que suministrar el voltaje. Ya que la salida va directa a las electrovalvulas. Pero si que suministra los 24V AC.

Y si está previsto en versiones futuras de Domino, implementar dicha programación horaria. Quizá me sea mejor ahora montar el programador. Y una vez que esté implementado, ya usar Domino.

De todas formas miraré a ver si encuentro alguna tienda de electrónica cerca (que triste que no se de ninguna xD). Y a ver el coste que podría tener pasar esos 24V AC a unos 10 DC o así... y así ya podría usar ahora los sensores de humedad. Que para algo los compré.

Sigo informando de como voy

Sigo informando de como voy =)

Pues casi me cargo el arduino por no leer todo bien antes de hacer las cosas. Menos mal que en un último momento de lucided leí todo bien.

Pues en las características vi:

Resumen

Microcontrolador ATmega368 (ATmega168 en versiones anteriores)
Voltaje de funcionamiento 5V
Voltaje de entrada (recomendado) 7-12V
Voltaje de entrada (limite) 6-20V
Pines E/S digitales 14 (6 proporcionan salida PWM)
Pines de entrada analógica 6
Intensidad por pin 40 mA
Intensidad en pin 3.3V 50 mA
Memoria Flash 16 KB (ATmega168) o 32 KB (ATmega328) de las cuales 2 KB las usa el gestor de arranque(bootloader)
SRAM 1 KB (ATmega168) o 2 KB (ATmega328)
EEPROM 512 bytes (ATmega168) o 1 KB (ATmega328)
Velocidad de reloj 16 MHz

Y pensaba que dicho voltaje era para los pinnes digitales y analógicos. Así que me fui todo contento a la tienda de electrónica. Y ahí me ayudaron y me dijeron como pasar esos 24 AC a 12 DC (que le pedí yo). Pero tienen que ser 5V DC que por suerte lo leí antes de conectar ningún cable al arduino.

Cada uno de los 14 pines digitales en el Duemilanove pueden utilizarse como entradas o como salidas usando las funciones pinMode(), digitalWrite(), y digitalRead() . Las E/S operan a 5 voltios.

Pues ahora a lo que le puede interesar a la gente que lo quiera hacer bien. Hay que comprar un 7805 (a mi me dieron el 7812 porqué lo pedí mal), un puente rectificador (a mi me vendieron el B80R) y un condensador de 1000uF (este creo que no tengo que cambiarlo).

No tengo ningún programa para dejar imagen de la conexión del patillaje, pero la dejo escrita que es muy simple.

Los 24V AC se llevan a las dos patillas con el simbolo de AC (senoidal) del puente rectificador.

Del puente rectificador, de la patilla con el "+" conectamos con la patilla de la izquierda del 7805 (poniendolo para ver los números). Y del "-" del puente rectificador, a la central del 7805.

Por último conectamos la de la derecha del 7805 con el "+" del condensador. Y la central del 7805 o la del "-" del puente rectificador con el "-" del condensador.

Una vez con el minicircuito montado, debemos llevar desde el "+" del condensador a la entrada del puerto digital que queramos (Por si acaso asegurate de que no supere los 5V). Y A su vez el "-" del condensador también hay que conectarlo con el gnd en el arduino.

Y yo a pesar de que aún no tengo el 7805, (mañana lo compro) creo que debería funcionar. Ya que por defecto si se deja al aire la entrada digital la toma como ON. Y desconectando de la corriente para no quemar el arduino, al conectar la entrada digital al "+" y el "-" con gnd. Me cambiaba correctamente de valor el puerto.

Ah, que se me olvidaba, compré para hacer 6 minicircuitos (tiene 6 salidas el programador) y gasté 3€ y poco. Así que el que no lo haga es porqué no quiere.

minifotos

Bueno, en principio todo funciona bien. Usaré el programador para definir la hora a la que se puede regar y el tiempo. Así que ya solo me falta instalarlo. Pero hasta que no vuelva a casa de mis padres no puedo. Bueno, también me falta saber como puedo hacer la orden de:

Si "hora de riego" y "sensor humedad >70" ==> Activar relé para regar.

Y a su vez, si mientras se está regando, el sensor llega por ejemplo a 60. Que se pare de regar.

Estuve mirando la documentación sobre los puertos virtuales, pero no acabo de entender muy bien como lo puedo hacer. Y si al ser la "hora de riego" una entrada digital. Y el sensor de humedad una entrada analógica. Podría hacerlo con los puertos virtuales.

 


 

Y lo prometido es deuda. Así que aquí tengo fotos de como se conectan los componentes para pasar de los 24V AC, a los 5 DC para la entrada digital del arduino.

Aunque no se ven muy bien, las explico.

Primera, salida del programador. Usamos la conexión de la electrovalvula 1 y el común a todas.

cable comun, y electroválvula 1

Segunda, con el puente rectificador. Las dos patillas con el símbolo de AC, conectadas a los cables que salen del programador.

Puente rectificadorcon la regleta conecté los de AC, el cable blanco con el +. Y el negro con el -

Tercera foto, el 7805. De forma que se lean los números, el cable blanco(+) a la izquierda. El negro(-) al centro. Y uno nuevo rojo(+) en el de la derecha.

7805

Cuarta. El condensador, el rojo a la patilla positiva, y el negro a la negativa. Y seguimos con el negro a gnd en el arduino, y con el rojo a la entrada digital que vayamos a usar.

condensador y arduino

Y como resultado final, pruebo que funcione correctamente cambiando el valor del puerto (do002 en mi caso).

valores del puerto

NO HAGAN ESTO

Lo dicho, no hagan lo que acabo de poner. Ya que creo que me acabo de cargar el micro -.-