Ayuda "MODO SLEEP" Arduino UNO R3 en red inalámbrica de sensores (WSN)

Hola a todos,

desde hace varias semanas vengo desarrollando un proyecto para uso personal consistente en una red de sensores inalámbricos a través de los cuales quiero monitorizar las variables relevantes (humedad de suelo y temperatura de suelo) de mi cultivo. Para ello he construido una WSN consistente, de momento, en 2 nodos remotos que se comunican a través de Xbee entre ellos y con un coordinador, que a su vez está conectado a la red a través de Ethernet Shield. El coordinador va enviando los datos que le llegan de los nodos remotos directamente a una plataforma en la nube (Carriots) desde la que puedo trabajar con los datos, generar gráficas, alarmas, etc. y servirlo todo en mi web personal.

Cada nodo remoto tiene conectados 3 sensores de humedad de suelo y un sensor de temperatura de suelo.

Cada nodo es energéticamente autónomo, alimentado por una placa fotovoltaica y una bateria ion-Li de 3.7V.

Hasta aquí todo desarrollado y funcionando correctamente.

El problema que se me plantea ahora es, dado que, como he dicho el sistema es energéticamente autónomo, quiero hacerlo lo energéticamente más eficiente posible a través del modo sleep de Arduino, pero no tengo mucho conocimiento sobre esta técnica, por no decir prácticamente ninguno.

Lo que me gustaría hacer es tomar valores de los 3 sensores de humedad y del sensor de temperatura una vez cada hora y, una vez enviados al coordinador, que el Arduino vuelva a entrar en modo Sleep para que consuma lo mínimo posible hasta la siguiente hora. Supongo que esto puede hacerse integrando un reloj externo a la placa Arduino y creando un sketch que, en combinación con la librería Sleep, pueda controlar mis requisitos. ¿Estoy en lo cierto?

Por otro lado, y esto es lo que me trae de cabeza, querría añadir a cada nodo un caudalímetro que mida el caudal que pasa por una tubería de riego. Quiero mantener el status de ahorro energético y me gustaría que el Arduino durmiese a menos que sea la hora de hacer las lecturas de humedad y temperatura antes mencionadas o cuando le llegue una señal digital del caudalímetro (es decir, cuando se esté regando), y se mantenga despierto y midiendo caudal hasta que este cese, momento en el que entraría de nuevo en modo sleep.

¿Es esto posible o estoy literalmente "flipando" con la idea? ¿Alguien se ha planteado algo parecido o conoce casos similares¿

¿Conoceis técnicas (software/hardware) que posibiliten implementar mi proyecto de ahorro de enrgía de la WSN que he desarrollado?

No encuentro información al respecto por lo que cualquier sugerencia, aunque sea para "echarse unas risas" a mi costa será bien recibida.

Quedo a la espera de respuestas.

Gracias,

Un saludo!

Hola a todos.

También tengo la misma inquietud. Sin embargo, he leído que se puede poner a "dormir" el Arduino Uno por 8 segundos, pero las pruebas que he hecho siguiendo algunas guías, no me baja el consumo como se indica.

¿Alguien que nos pueda ayudar?

Y porque respondes un hilo del 2015?

Lee las Normas del foro.
Y cuando veas una advertencia asi

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Respetala y crea un hilo nuevo.
Este hilo será cerrado!!

Busca Arduino sleep en Google.
El Arduino solo puede dormir hasta 8 segundos pero si lo vuelves a poner a dormir llevas el ciclo al tiempo que gustes.