Nota : Trabajo en progreso.
La aplicación simple basada en el óxido para medir (y tal vez el control posterior) Entradas de energía (por ejemplo, de un panel solar) y salida (por ejemplo, la potencia utilizada por un RaspberryPI de VisionFive 2 Single Board Computer. El objetivo es ver si podemos ejecutar una sola computadora de tablero 24/7 en energía verde.
Esto se creó inicialmente para medir el consumo de energía de una Raspberry Pi 4 que fue alimentado por un banco de baterías que a su vez fue alimentado por un conjunto de paneles solares. También se ha probado con el VisionFive 2 basado en RISC-V.
Los sensores de potencia utilizan sensores basados en INA219 en un bus I2C. Mientras que los datos meteorológicos se recopilan a través de la API meteorológica.
La razón para recopilar datos de energía y clima es comprender mejor el comportamiento de los paneles solares en diversas condiciones climáticas. Esto debería permitir una mejor pronóstico de la cantidad de energía que estará disponible en un futuro cercano, dado el clima actual.
El siguiente diagrama de bloques muestra la configuración del sistema:

En realidad, todo esto parece un poco más aburrido:

Los datos recopilados se verán como la tabla que se muestra a continuación: estos datos a su vez se pueden usar para entrenar un modelo de pronóstico que debería ayudar a construir un sistema de bases de control de retroalimentación basado en el modelo.
| marca de tiempo | compute_voltage | compute_current | compute_power | solar_voltaje | solar_current | solar_power | OWA_Temperatura | ... | OWA_CLOUD_COVERAGE |
|---|---|---|---|---|---|---|---|---|---|
| 21:36:58 | 4.708 | 1174.71036585366 | 5563.71951219512 | 0 | 0 | 0 | 11.92 | ... | 75 |
| 21:37:02 | 4.724 | 1164.74085365854 | 5502.43902439024 | 0 | 0 | 0 | 11.91 | ... | 75 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
De manera predeterminada, el archivo de configuración se carga desde defaults.toml . Puede establecer una variable de entorno llamada OGC_CONFIG para cargarla desde cualquier otra ruta.
Se puede encontrar un archivo de configuración de ejemplo aquí.
Para ejecutar esto como un servicio utilizando Systemd, use el siguiente archivo de la unidad:
[Unit]
Description=Open Green Compute
After=multi-user.target
[Service]
ExecStart=/<path to>/open_green_compute
WorkingDirectory=/home/ubuntu
Restart=always
RestartSec=10s
[Install]
WantedBy=multi-user.target
Asegúrese de que la cadena de herramientas de destino y el compilador estén instalados en su host:
rustup target add riscv64gc-unknown-linux-gnu
apt-get install gcc-riscv64-linux-gnu