He estado trabajando en hacer un sistema de jardinería usando un Arduino o un ESP32. Para conservar energía, haré que la MCU duerma durante largos períodos de tiempo (planeaba usar interrupciones de cambio de pin para activarla). Sería muy útil registrar datos de luz solar y humedad del suelo a lo largo del tiempo, pero sin tener que activar la MCU cada 10 minutos más o menos para registrarlos. Entonces, pensé en almacenar o acumular estos datos en un área de almacenamiento temporal hasta que la MCU se despertara y registrara los datos (probablemente en un servidor web).
Estaba pensando en usar una solución simple, como medidores de electricidad analógicos en las casas, pero no estoy seguro de si esto es factible. EEPROM también parece una opción, pero eso podría ser excesivo.
Entonces, ¿existe un buen método de almacenamiento simple a corto plazo que pueda usar para alargar la cantidad de tiempo entre el momento en que la MCU necesita registrar los datos? Gracias por su ayuda.
Hice un registrador de temperatura y humedad hace un tiempo. Usó un Atmega328P en una placa personalizada. El registro se realiza en una tarjeta SD con una placa de interfaz de cambio de nivel.
Funciona con 3 pilas AA. Creo que solo he cambiado las pilas una vez en los últimos 3,5 años.
La pantalla LED solo se usa ocasionalmente, para indicarle la temperatura en este momento si presiona el interruptor rojo (además de otras cosas como la fecha/hora, el recuento de escrituras en la tarjeta SD y la cantidad de errores).
Según mis cálculos en esa página, cuando está dormido, usa 6 µA, y promediando el tiempo necesario para escribir en la tarjeta SD, agrega 36 µA adicionales. Aún así, 42 µA está por debajo de la tasa de autodescarga de las baterías.
De vez en cuando saco la tarjeta SD de su soporte y descargo los datos resultantes.
El esquema general está aquí:
El código y otros detalles están disponibles en la página que mencioné anteriormente .
Si desea el método absolutamente más bajo de energía para registrar datos de vez en cuando, entonces querrá considerar cuidadosamente todos los pasos necesarios.
La CPU de menor potencia que conozco es la MSP430 de TI (originalmente de una empresa en Alemania que compró TI). Puede ejecutar un reloj en tiempo real en aproximadamente y vuelva a empezar desde ese estado de suspensión a la operación de velocidad completa en . Haces tu pequeño trabajo y luego vuelves a apagar. No hay nada parecido que yo sepa. (Me encanta Microchip por la forma en que me apoyan [mejor que TI], pero sus dispositivos de "nanovatios" ni siquiera se acercan).
Lo siguiente es el almacenamiento. La memoria no volátil con capacidad de escritura absolutamente más baja que conozco es FRAM (o FeRAM). Afortunadamente, TI ha presentado algunos MSP430 con FRAM en su interior. Así que esto hace que las cosas sean aún mejores. El problema aquí serán las limitaciones en la cantidad de FRAM interna que puedes lograr en los dispositivos actuales.
Entonces, el siguiente problema es la persistencia de los datos capturados en un dispositivo de almacenamiento persistente más grande. Ha sugerido el uso de un servidor web, supongo que pensando que esto podría proporcionar acceso a almacenamiento flash a gran escala. Sin embargo, también puede conectar almacenamiento flash al MSP430 con FRAM y bloquear periódicamente las transferencias de escritura desde el FRAM al dispositivo de almacenamiento flash. Estos consumirían energía. Pero sólo tan a menudo como sea absolutamente necesario.
Por otro lado, podrías considerar las comunicaciones Wifi. Pero los transmisores y los receptores también toman energía. Es posible que desee considerar varios dispositivos para ese propósito (y aquí, podría usar un ESP32 que activaría de vez en cuando usando el MSP430 para hacer eso) para transmitir bloques a un proceso que se ejecuta en una PC interna conectada (o similar). Esta opción podría compararse con la opción de flash conectado que mencioné en el párrafo anterior, para la energía total por muestra.
Sin embargo, no creo que pueda construir un dispositivo de menor potencia para realizar las capturas periódicas de datos que simplemente usar un MSP430 con FRAM y su VLO o reloj de 32 kHz. Es probable que cualquier dispositivo diseñado a medida que utilice circuitos integrados COTS consuma más energía por muestra. (Aunque me interesaría ver un ejemplo que lo haga mejor).
jack creasey