참고 : 진행중인 작업.
전력 입력 (예 : 태양 전지판의) 및 출력 (예 : Raspberrypi of VisionFive 2 단일 보드 컴퓨터에서 사용하는 전력)을 측정 (및 나중에 제어)하기위한 간단한 녹기 기반 응용 프로그램. 목표는 녹색 에너지에서 24/7 단일 보드 컴퓨터를 24/7로 실행할 수 있는지 확인하는 것입니다.
이것은 처음에 배터리 뱅크에 의해 구동되는 라즈베리 파이 4의 전력 소비를 측정하기 위해 만들어졌으며, 이는 일련의 태양열 패널로 구동되었습니다. 또한 RISC-V 기반 VisionFive 2로 테스트되었습니다.
전원 센서는 I2C 버스를 통해 INA219 기반 센서를 사용합니다. 날씨 데이터는 날씨 API를 통해 수집됩니다.
전력 및 날씨 데이터를 모두 수집하는 이유는 다양한 기상 조건에서 태양 전지판의 동작을 더 잘 이해하기 때문입니다. 이를 통해 현재 날씨를 고려할 때 가까운 시일 내에 제공 될 전력량을 더 잘 예측할 수 있습니다.
다음 블록 다이어그램은 시스템 설정을 보여줍니다.

실제로 이것은 모두 조금 더 지루해 보입니다.

수집 된 데이터는 아래에 표시된 표처럼 보일 것입니다.이 데이터는 차례로 모델 기반 피드백 제어베이스 시스템을 구축하는 데 도움이되는 예측 모델을 훈련시키는 데 사용될 수 있습니다.
| 타임 스탬프 | compute_voltage | compute_current | compute_power | Solar_voltage | solar_current | solar_power | owa_temperature | ... | 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 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
기본적으로 구성 파일은 defaults.toml 에서로드됩니다. OGC_CONFIG라는 환경 변수를 설정하여 다른 경로에서로드 할 수 있습니다.
예제 구성 파일은 여기에서 찾을 수 있습니다.
SystemD를 사용하여 서비스로 실행하려면 다음 단위 파일을 사용하십시오.
[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
올바른 대상 도구 체인 및 컴파일러가 호스트에 설치되어 있는지 확인하십시오.
rustup target add riscv64gc-unknown-linux-gnu
apt-get install gcc-riscv64-linux-gnu