Cómo añadir un panel solar en proyectos Arduino

Una de las posibles extensiones para Bike Pixel que estoy considerando, es añadir un módulo que permita realizar su carga a través de un panel solar. En teoría podemos alimentar nuestros proyectos con Arduino conectando directamente un panel solar. Si contamos con algún circuito estabilizador de corriente y mucho sol irradiando el panel no debería haber ningún problema. Pero en cuanto la energía que suministra este sea insuficiente nuestro dispositivo dejará de funcionar.

Zoom al los panels fotovoltaicos instalados sobre el tejado de una casa.
Foto de un panel solar sobre el tejado de una casa hecha durante mis vacaciones.

Por tanto, junto con un panel solar en nuestros proyectos con Arduino lo normal es utilizar también una batería que se cargue mientras que el panel reciba suficiente energía del sol. Esto hará que nuestro proyecto siga funcionando cuando la intensidad de la luz se reduzca. La configuración del circuito será muy similar a la utilizada para alimentar Arduino con una batería LiPo. En este caso además, añadiremos un par de componentes más, haciendo especial hincapié en las partes relacionadas con el suministro de energía, es decir, la batería y el panel solar.

Suministro de energía

Para seleccionar adecuadamente el panel solar y la batería para nuestro proyecto en primer lugar debemos considerar sus necesidades energéticas. Esto incluye tanto la placa Arduino como todos los demás componentes que puede incluir nuestro circuito.

Dependiendo del modelo de Arduino con el que trabajemos su consumo será diferente. En la tabla adyacente os dejo los consumos aproximados de las diferentes placas. Al consumo de la placa Arduino además le tenemos que sumar el de todos los periféricos incluidos en nuestro proyecto (actuadores, sensores, etc.). En el caso de un proyecto simple sin problemas podemos llegar a los 100 mAh. Por ejemplo:

  • en el caso de incluir un sensor de temperatura solo necesitaremos 0,2 mA,
  • un sensor de distancia por ultrasonido poco más de 2mA,
  • para un módulo con un acelerómetro 4 mA,
  • un led entre los 10 y los 20 mA,
  • cosas más complejas como un módulo bluetooth ya nos harían falta 50 mA,
  • y en el caso de servos, estos pueden llegar a consumir incluso más de 500 mA mientras se mueven.
ModeloConsumo
Arduino Pro Mini 3.3V5 mAh
Arduino Nano15 mAh
Arduino Uno46 mAh
Arduino Due75 mAh
Arduino Mega93 mAh
Tabla con los valores de consumo aproximados de los diferentes modelos de Arduino originales. Obtenida a partir de este estudio de consumos de Arduino y este análisis para reducir al mínimo el consumo de Arduino.

Selección de la batería

Una vez estimado las necesidades energéticas de nuestro proyecto podemos pasar a la selección de la batería. Por supuesto cuanto más grande mejor. Pero por desgracia lo normal es que tengamos limitaciones de presupuesto, espacio o peso. De este modo tendremos que seleccionar la que sea más adecuada para nosotros.

Si por ejemplo queremos que nuestro proyecto funcione al menos durante 24 horas sin luz solar, nos tendremos que asegurar que la batería tenga la suficiente capacidad como para mantener en funcionamiento nuestro dispositivo durante este tiempo. Supongamos (por simplicidad) que nuestro proyecto está construido con un Arduino Nano, que en total, junto con todos demás componentes necesita alrededor de 100 mAh. En este caso para que tengamos energía para durante un día entero necesitaremos una batería de al menos 2400 mAh de capacidad.

Imagen con un conjunto de baterías LiPo de diferentes capacidades y tamaños. De izquierda a derecha: 2500mAh, 1800mAh, 1500mAh, 800mAh, 500mAh y 200mAh.
Un montón de baterías LiPo de diferentes capacidades y tamaños que he encontrado por casa.

Además hay que tener en cuenta que las baterías se degradan con el paso del tiempo, el número de ciclos de carga realizados o que se producen perdidas en la transformación del voltaje de la batería. Por tanto, siempre es recomendable contar con un buffer que nos asegure ese extra de energía. Continuando con el ejemplo, podemos seleccionar una batería de 2500 mAh. (Casualmente 😉 es la que se incluirá en el futuro Bike Pixels Rear).

Selección del panel solar

Para nuestros proyectos con Arduino utilizaremos un panel solar con un voltaje de 5 o 6V. Normalmente la potencia de salida del panel se expresa en vatios (W), y es la cantidad de energía máxima que puede producir en condiciones ideales de temperatura y luz solar (es decir dada una irradiación solar de 1000 W/m², en una atmósfera estándar a 25 °C de temperatura).

Lo ideal sería contar con un panel que sea capaz de cargar nuestra batería durante un día. Por supuesto dependiendo de la meteorología, la época del año y la latitud en la que nos encontremos (salvo que vivamos entre los trópicos) la radiación solar varía por lo que la energía que puede producir nuestro panel también. Por tanto para empezar, debemos estimar la cantidad de energía solar que podemos obtener en nuestra localización.

Existen multitud de servicios que nos permiten conocer la cantidad de radiación estimada en un determinado punto del planeta. Uno de ellos es The POWER Project realizado por la NASA. En este podremos obtener los valores históricos de irradiación horizontal en cualquier punto de la tierra. Por ejemplo, en las siguientes gráficas tenemos la irradiación horizontal diaria en el caso de Lugo (España) durante el año 2020.

Gráfica con los valores diarios de irradiación horizontal para la ciudad de Lugo (España) en kWm²/día. Los valores se sitúan siguiendo una curva de campana con valores comprendidos entre 1 kWm²/día en los peores días llegando hasta algo más de 8 kWm²/día para los días mejores.
Gráfica con los valores totales diarios de irradiación solar sobre una superficie horizontal en la ciudad de Lugo (España) a lo largo del año 2020 medidos en kW/m²/día. Datos proporcionados por The POWER Project de la NASA.
Gráfica con el histograma indicando el número de días con los diferentes valores de irradiación agrupados por intervalos de 0,5 kW/m²/día para la ciudad de Lugo (España). Datos proporcionados por The POWER Project de la NASA.

Podemos ver que en los mejores días tenemos algo más de 8 kW/m² por día y en el peor alrededor de 1 kW/m²/día. Por tanto, en el peor caso, nuestro panel generará en todo el día el equivalente de la potencia dada en su especificación. Sabiendo que la intensidad generada por un panel viene dada por:

I(A) = P(W) / V(V)

Si tenemos un panel de 5V que puede generar hasta 1W de potencia este solo generará un total de 200 mA en todo el día (1W/5A = 0.2A = 200 mA). Algo insuficiente.

Hay que tener en cuenta que las gráficas anteriores presentan el valor sobre la horizontal, es decir directamente sobre un suelo plano. Si orientamos nuestro panel en perpendicular a la dirección de la radiación solar podemos obtener un extra de energía. Continuando con el caso de Lugo (latitud ~43°) podremos incluso doblar la cantidad de energía en invierno si inclinamos nuestro panel a 60° tal y como se muestra en la siguiente gráfica obtenida gracias a esta herramienta online para el cálculo de la radiación solar sobre una superficie inclinada.

Gráfica con la diferencia entre el valor de irradiación solar sobre una superficie horizontal (línea azul) y la incidencia máxima (rojo) y como podemos es posible aproximar la energía captada por nuestro panel al máximo si lo inclinamos adecuadamente en invierno (línea verde).

De este modo en los peores días para un panel de 1W, podemos estimar que contaremos con 400 mA a lo largo de todo el día. De este modo para cargar una batería de 2400 mA necesitaremos un panel de al menos 6W (2400/400).

Componentes

Para demostrar la forma en en la que es necesario configurar un proyecto con un panel solar he preparado un ejemplo. La idea es que un LED se encienda de noche y se apague de día y todo sea alimentado por un panel solar que carga una batería. Por simplicidad fingiremos que el consumo de este circuito es de 100 mAh (aunque en realidad sería mucho menor). De este modo podemos trabajar con la batería y el panel ya propuestos.

Para este proyecto, a parte de estos componentes y una placa Arduino, serán necesarios:

  • un fotorresistor, un led y resistencias de 330Ω y 10kΩ, que son los elementos que conforman la parte para realizar la demostración del funcionamiento del conjunto;
  • el módulo de carga TP4056, que se encargará de gestionar la carga y protección de la batería;
  • un módulo step-up que convierta el voltaje de la batería LiPo a los 5V que es el que requiere Arduino para funcionar;
  • un diodo SR240, que se encargará de asegurar que no fluye corriente desde la batería al panel.

El SR240 es un diodo Schottky. Su elección se debe a que este tiene una caída de tensión menor que los diodos convencionales de silicio. En el SR240 la caída de tensión es además especialmente pequeña, en torno a los 0.55V. De este modo podremos proteger el panel solar a la vez que no disminuimos demasiado su rendimiento. Además puede trabajar con intensidades de hasta 2A. Así nos aseguramos que será capaz de funcionar sin problemas también en el caso de que el panel trabaje al máximo. En los días con mejores condiciones el panel del ejemplo de 6W pudiendo llegar a producir hasta 1,2A.

Con todo ello la lista de componentes que vamos a necesitar y sus precios viene resumida en la siguiente tabla:

ComponenteAliExpressAmazon.es
Arduino Nano 2,93€ (clone)13,31€ (oficial)
Panel solar 6W8,53€6,09€
Módulo TP4056 USB-C0,45 €5,99€ (5 uds.)
Batería LiPo 2500 mAh8,94 €19,87€
Módulo step-up 5V0,38 €7,29€ (5 uds.)
Diodo Schottky SR2401,64€ (100 uds.)2,81€ (20 uds.)
Fotorresistor0,65€ (20 uds.)2,96€ (20 uds.)
Led0,75€ (100 uds.)7,99€ (200 uds.)
Resistencia 10kΩ0,47€ (100 uds.)4,01€ (200 uds.)
Resistencia 330Ω0,47€ (100 uds.)4,01€ (200 uds.)
Cables AWG2612,67€ (6x10m)18,59€ (6x10m)
Tabla listado componentes y precios.

Configuración del circuito y código

Una vez seleccionados los componentes principales, ya podemos comenzar con el circuito. La configuración será bastante simple. En primer lugar debemos conectar los componentes encargados de alimentar la placa Arduino. Se debe conectar el panel solar a los pines de entrada del TP4056, la batería a los B+ y B- y los pins OUT al módulo step-up. Este se encargará de transformar la corriente a 5V procedente de la batería o directamente del panel solar si este está funcionando. De este modo la salida del módulo step-up la podemos conectar directamente a los pins 5V y GND de Arduino.

Por último solo nos queda conectar el led a uno de los pines digitales (por ejemplo el 2) y el fotorresistor a uno de los pines analógicos (el A0 en este caso) así como a la alimentación. De este modo nuestro circuito debe quedar como en la configuración dada por el siguiente esquema.

Circuito de ejemplo con la conexión de los diferentes componentes para permitir el uso de Arduino alimentado a través de un panel solar.

Una vez tenemos todo listo, podemos subir el siguiente código a nuestra placa que se encarga de leer el valor del fotorresistor y encender o apagar el led dependiendo de su valor. Con el aumento de intensidad de luz incidente sobre el fotorresistor, su resistencia disminuirá por lo que el valor leído será más alto, es decir, a más luz mayor valor leído por Arduino y vice versa.

//Constantes configuración pins
const int PIN_POTHO = A0;
const int PIN_LED=2;

// Variable que almacena el valor leído del fotorresistor (0 a 1023)
int value;

void setup(){
 pinMode(PIN_LED, OUTPUT); 
 pinMode(PIN_PHOTO, INPUT);
}

// Realiza lectura fotorresistor y apaga el led sí hay luz
void loop(){
  value = analogRead(PIN_PHOTO);
  if (value > 50){
    digitalWrite(PIN_LED, LOW);  // Apagar LED
  } else{
    digitalWrite(PIN_LED, HIGH); // Encender LED
  }
  // Esperar un segundo a siguiente lectura
  delay(1000);
}

Conclusión y más información

La selección de los componentes adecuados para nuestro proyecto es crucial. En este caso tendremos que dimensionar la batería y el panel solar de modo que se ajusten a las necesidades energéticas de nuestro proyecto y las condiciones meteorológicas en las que vamos a trabajar. Debemos estudiar siempre el caso peor y basar nuestro diseño en ese análisis. Siempre podemos poner una batería y un panel más grande pero de este modo también aumentaremos el coste, tamaño y peso de nuestro proyecto.

Si queréis ahondar en el tema del consumo de energía y el uso de energía solar en vuestros proyectos, a continuación os dejo algunos enlaces.


Los enlaces a los componentes son enlaces de afiliado por lo que cada vez que compres a través de ellos estarás ayudando un poquito a financiar el proyecto. Además no te costará nada de nada, ya que el precio de cada componente no cambiará para ti y nosotros nos llevamos una pequeña comisión por cada venta. ¡Gracias de antemano! (El precio de cada producto es orientativo y corresponde al precio dado en agosto de 2021.)

Leave a Reply

Your email address will not be published. Required fields are marked *