¿Cómo hacer que arduino solo se encienda cuando se haya recolectado suficiente energía?

Recientemente apareció un artículo en el Christian Science Monitor sobre el lanzamiento de un satélite del tamaño de un cracker . El artículo dice que el satélite tiene "almacenamiento de energía en condensadores y circuitos de conmutación para encender el microprocesador cuando la energía almacenada es suficiente para crear una sola emisión de radiofrecuencia: un pitido digital". La energía se recoge de una célula solar.

Estoy interesado en crear un dispositivo basado en la tierra que haga precisamente eso, recolectar energía de una celda solar y solo encender el dispositivo para transmitir cuando tenga suficiente energía. Recientemente compré un arduino , pero tengo poca experiencia con este tipo de ingeniería. ¿Alguna sugerencia sobre cómo empezar? ¡Gracias!

Ah, sí, y no pienses en enviar un Arduino al espacio, a menos que te guste la radiación ionizante.
@LeanerRocky, me encanta la radiación ionizante. Enviemos un arduino al espacio.

Respuestas (5)

Presumiblemente, ese satélite utilizará la "recolección de energía" (EH) para almacenar la energía proporcionada por la celda solar en un supercondensador. Tanto TI como Microchip acaban de comenzar a suministrar kits de evaluación que utilizan EH con una celda solar para alimentar una MCU y un transceptor inalámbrico. Advanced Linear Devices fabrica el módulo de recolección de energía EH300 , que puede cargar un par de supercondensadores de una variedad de fuentes, incluidas las células solares. He estado experimentando con uno, y puede proporcionar 1,8 V - 3,3 V de fuentes de muy bajo voltaje, y es capaz de entregar 25 mA durante 68 ms, que es más que suficiente para una MCU como MSP430 o XLP PIC y un transmisor de baja potencia. El EH300 tiene dos supercondensadores. Cuestan alrededor de £ 34, compré el mío de Farnell.

El Arduino no es adecuado para esta aplicación, ya que no funcionará con voltajes tan bajos y consume demasiada energía. Los PIC XLP suelen utilizar 20 nA en modo de suspensión profunda y 50 uA/Mhz cuando están activos.

Querrá ver cómo poner el avr en modo de suspensión. Cuando esté en modo de suspensión, el microcontrolador se apagará tanto como sea posible para aumentar el ahorro de energía. Lo que puede hacer es conectar lo que sea que esté almacenando la energía del panel solar en uno de los pines ADC en el arduino y cuando alcance cierto umbral, puede activar el microcontrolador.

Sin embargo, hay algunos niveles diferentes de sueño, y cuanto más energía desea ahorrar, más cosas se apagan. Creo que los pines ADC solo están encendidos con el nivel de ahorro de energía más alto/menor. También puede usar el comparador interno avrs, con el condensador/batería en el que está almacenando la energía y una fuente de voltaje para el umbral de voltaje que desee.

Una última cosa es que usar un arduino para esto puede no ser lo mejor. Incluso en el estado de suspensión más bajo, el arduino usará ~ 15 mA, que un chip avr solo usa 0.05 mA en este estado. El arduino tiene un regulador de voltaje lineal que siempre consumirá alrededor de 10 mA, además de algunos otros chips adicionales. Probablemente valdría la pena hacer su propia configuración de avr por este motivo.

¿El ADC funciona mientras está en modo de suspensión? ¿Quieres decir comparador analógico?
No pensé que los avrs que usa arduino tuvieran comparadores internos. ¡Después de volver y mirar de nuevo resulta que estaba equivocado! Sin embargo, no estoy seguro de en qué estados de sueño están apagados.

Puede probar las técnicas utilizadas por los motores solares BEAM activados por voltaje (Tipo I) .

Esencialmente, carga un gran capacitor hasta que el voltaje a través de él cruza algún umbral, y alimenta su circuito descargándolo. Con condensadores lo suficientemente grandes, debería poder encender un arduino frío. Pero necesitará algunos condensadores grandes para alimentarlo durante> 1 s.

Estos circuitos pueden ser bastante pequeños. Por ejemplo , este circuito , que se muestra a continuación, utiliza 2 transistores y un Panasonic 1381x .

Motor solar simple tipo I usando 1381x

Los motores solares utilizan otras técnicas, por ejemplo, activación de pendiente. Puedes saber más sobre ellos aquí .

Apoyaré la sugerencia de investigar los conceptos detrás de la robótica BEAM y los motores solares. Creo que el motor solar basado en el chip MAX8212 (del cual maxim le dará muestras gratuitas) sería el SE más adecuado para usted, ya que es el más (fácilmente) configurable. El arduino es una plataforma brillante para aprender sobre microcontroladores, pero tiene un poco de energía solar. Una vez que comprenda Arduino, comience a buscar trabajar directamente con los chips Atmel AVR. ATtiny45 es una pequeña plataforma muy divertida para trabajar, y puede funcionar bastante bien con un motor solar. Mira lo que he estado haciendo con ellos aquí

No tengo experiencia con arduino y, según la cosecha actual de respuestas, parece que consume mucha energía y probablemente no tiene un consumo de corriente de sueño lo suficientemente bajo como para que sea una opción viable. Un PIC xlp de nanovatios sería el lugar para comenzar, sin embargo, aún debe lidiar con la interfaz entre el recolector de energía (célula solar en este caso) y el microchip. La salida de la celda solar es de bajo voltaje en comparación con otras formas de recolectores de energía y los requisitos de un circuito PIC +, la tecnología lineal hace una gama de convertidores dcdc de arranque automático destinados a aplicaciones de recolección de energía (por ejemplo, LTC3105) que pueden actuar como su convertidor de potencia. Desde ese punto, adjuntaría la imagen a través del condensador/batería y luego la ejecutaría en modo de suspensión cuando la celda solar esté cargando la batería/condensador.

Aunque la gente ha dicho que el arduino tiene demasiada energía para este tipo de cosas, puede resolver ese problema simplemente usando más células solares hasta que pueda pasar a PIC, etc., lo que le permitiría hacer un sistema más sofisticado.