Resulta que estoy intentando hacer una estación meteorológica con Arduino, y he revisado muchísimos proyectos similares, sin embargo hasta antes de ver el proyecto de alguién con el pseudónimo CHINCHU en un foro que se llama METEOCLIMATIC, lo único que había encontrado son proyectos cuyo producto final muestra lo que miden uno o más semsores en una pantalla LCD o muestran las lecturas en el monitor serial, como producto final del código...
Lamentablemente eso, pese a que a alguien le podría funcionar para determinados y específicos usos, la verdad dista mucho de lo que hace o el objetivo de una estación meteorológica (de hecho, con el debido respeto, no deberían llamarle a ese proyecto "Estación Meteorológica", porque realmente es una simple lectura de un sensor o varios sensores, pero algo básico que debe tener una estación meteorológica es la captura y registro de históricos de "n" sensores organizados por fecha (Año, mes, día) y hora (minuto y segundo), de la captura de cada variable, las cuales deben ser tomadas exactamente al mismo momento, por ejemplo, la estación debe mostrar las lecturas de todos los sensores presentes a la misma hora (coincidiendo minutos y segundos) y a intervalos de tiempo exactos pre-programados (y hora real).
Si una estación meteorológica no hace eso como mínimo (no es una estación meteorológica), es simplemente algo que mide y muestra un valor de un sensor "x" en tiempo real.
Dicho esto, me resta decir que soy demaciado nuevo en Arduino y para ser honesto lo único que he logrado hacer es tener las mediciones de los sensores en tiempo real y sacarlos por el monitor serial (lo mismo que otros han osado llamar una "estación meteorológica" pero yo no soy tan atrevido aparte de que eso no me sirve, he adelantado en comprar todos los accesorios que necesito para hacer mi proyecto (memoria SD y el reloj, lo más importante que me hacía falta), aparte de otros que ya tengo y/o he adaptado para el mismo fin.
Adicionalmente he visto que muchos tienen problemas con algunos sensores, o medición de variables como la radiación solar, y la presipitación (cuantificación de lluvia), debido a que no hay sensores Arduino que midan esto. Sin embargo son temas que yo he logrado resolver a un costo de menos de US$20, pero mi problema es el desarrollo del código.
En fín la pregunta o mi necesidad:
- Necesito que los datos que midan los sesores se registren y se almacenen en una SD cada 30 minutos exactos y de acuerdo a la hora real, pero adicionalmente debe respetarse la lógica de cada variable climática, y para esto voy a describir los detalles específicos a tomar en cuenta en cada variable, voy a describir solamente las 4 variables que a mi me interesa medir con la estación que quiero construir:
1.a. Variable precipitación: esta variable tiene la particularidad que debe SUMAR todos los datos desde el minuto cero segundo cero hasta el minuto 30 con cero segundos, almacenar esa suma en la SD, y comenzar de nuevo a sumar otra vez desde cero, pero ahora para registrar el dato siguiente partiendo del minuto 30 con un segundo y terminar en la hora 1 con cero minutos y cero segundos, y así sucecivamente...
1.b. Variable temperatura: esta variable tiene la particularidad que debe PROMEDIAR los valores que mida el sensor comenzando en el minuto cero segundo cero hasta el minuto 30 con cero segundos, almacenar ese promedio en la SD, y CONTINUAR promediando, pero ahora para registrar el dato siguiente partiendo del minuto 30 con un segundo y terminar en la hora 1 con cero minutos y cero segundos, y así sucecivamente... Alguien podría preguntar, bueno ese promedio podría realizarse cada minuto o cada segundo, la respuesta es que no me interesa tan específico (cada segundo), que sea cada minuto estaría perfecto para mí.
1 c. Variable radiación solar: aplica exactamente el mismo principio de la variable temperatura, es decir, el código sería el mismo...
1.d. Variable humedad del suelo: esta variable creo yo que es la más sencilla, ya que únicamente debe ir al minuto cero segundo cero tomar la lectura, registrarla en la SD y si quiere reposar hasta que llegue el minuto 30 minuto cero segundo cero, para ir tomar el dato registrarlo en SD y volver a reposar hasta que llegue la hora 1 minuto cero segundo cero, así sucesivamente...
Esas son las 4 variables que me interesan de momento, pero lamentablemente no tengo ni idea como hacer ninguno de los códigos, así que la ayuda específica que les pido a todos es la siguiente:
- Primero Muchas gracias de verdad por haber llegado hasta aquí leyendo este "monton" de texto.
- Con lo poquito que he aprendido en Arduino fracasando en mi intento por programar lo indicado, estoy seguro que con lo que conté cada uno de los expertos que hay aquí podrán haber pensado "Oh! esto que yo programé le podría funcionar para lo que necesita hacer con el sensor "x", ya que aunque usted lo programó para "y" fin, estoy seguro que muchos son el mismo principio de programación, a esos le pido el favor de que me compartan esea fracción de código y me indiquen (mira creo que esto te sirve para que tal sensor haga tal parte del requerimiento..., o para la base de organización de la información de los sensores en fecha (año, mes, día, hora, minuto, segundo). O cualquier cosa que ustedes vean que necesito y que ya tengan el código generado, se los gradeceré mucho.
- Creo que de esta forma cada uno me podría aportar un pedacito de mi Frankenstein...
Les agradezco mucho la ayuda que me puedan dar... ya he revisado mucho y me desmotivé cuando vi que la solución es indefectiblemente a través del uso de librerías (lo cual ni siquiera comprendo como realmente funciona), según yo iba a generar todo esto con las herramientas básicas (perdón porque seguro para ustedes una librería es una herramienta básica,), pero no para mi y ya me di cuenta de que no voy a ser capaz de desarrollar este código si ayuda y MUCHA!, y pues lo que intento hacer es realmente complejo para mi limitado conocimiento actual...
La estación de CHINCHU hasta se comunica con otras estaciones que están a 300 metros vía WIFI, yo en eso todavía no me interesa meterme, estoy seguro me interesaré, pero con solo que me almacene datos en una memoria SD organizada en (Año, mes, día, hora, minuto, segundo) es suficiente para mi por el momento, pero se que solo es es ya mucho trabajo...
Muchas gracias por su tiempo...