หมายเหตุ : ทำงานระหว่างดำเนินการ
แอพพลิเคชั่นที่ใช้สนิมอย่างง่ายเพื่อวัด (และอาจควบคุมได้ในภายหลัง) อินพุตพลังงาน (เช่นจากแผงโซลาร์เซลล์) และเอาต์พุต (เช่นพลังงานที่ใช้โดย RaspberryPi ของคอมพิวเตอร์บอร์ด VisionFive 2 เป้าหมายคือการดูว่าเราสามารถใช้คอมพิวเตอร์บอร์ดเดียว 24/7 บนพลังงานสีเขียวหรือไม่
สิ่งนี้ถูกสร้างขึ้นครั้งแรกเพื่อวัดการใช้พลังงานของราสเบอร์รี่ Pi 4 ซึ่งขับเคลื่อนโดยธนาคารแบตเตอรี่ซึ่งใช้พลังงานจากชุดแผงเซลล์แสงอาทิตย์ นอกจากนี้ยังได้รับการทดสอบกับ VisionFive 2 ที่ใช้ RISC-V
เซ็นเซอร์พลังงานใช้ประโยชน์จากเซ็นเซอร์ที่ใช้ INA219 ผ่านบัส I2C ในขณะที่ข้อมูลสภาพอากาศถูกรวบรวมผ่าน Weather API
เหตุผลในการรวบรวมข้อมูลทั้งพลังงานและสภาพอากาศคือการทำความเข้าใจพฤติกรรมของแผงเซลล์แสงอาทิตย์ภายใต้สภาพอากาศที่หลากหลาย สิ่งนี้ควรช่วยให้การพยากรณ์ปริมาณพลังงานที่ดีขึ้นในอนาคตอันใกล้เนื่องจากสภาพอากาศปัจจุบัน
แผนภาพบล็อกต่อไปนี้แสดงการตั้งค่าระบบ:

ในความเป็นจริงทั้งหมดนี้ดูน่าเบื่อขึ้นเล็กน้อย:

ข้อมูลที่รวบรวมจะมีลักษณะเหมือนตารางที่แสดงด้านล่าง - ข้อมูลนี้สามารถใช้ในการฝึกอบรมรูปแบบการพยากรณ์ที่ควรช่วยสร้างระบบฐานควบคุมความคิดเห็นตามแบบจำลอง
| การประทับเวลา | compute_voltage | compute_current | compute_power | Solar_voltage | solar_current | พลังงานแสงอาทิตย์ _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