ملاحظة : العمل قيد التقدم.
تطبيق بسيط يعتمد على الصدأ لقياس (وربما التحكم لاحقًا) مدخلات الطاقة (على سبيل المثال من لوحة شمسية) والإخراج (على سبيل المثال ، الطاقة المستخدمة من قبل جهاز كمبيوتر واحد من لوحة VisionFive 2. الهدف هو معرفة ما إذا كان بإمكاننا تشغيل كمبيوتر واحد على مدار 24/7 على الطاقة الخضراء.
تم إنشاء هذا مبدئيًا لقياس استهلاك الطاقة في Raspberry Pi 4 والذي كان مدعومًا من قبل ضفة بطارية تم تشغيله بدوره بمجموعة من لوحات الطاقة الشمسية. كما تم اختباره مع VisionFive القائم على RISC-V.
تستفيد أجهزة استشعار الطاقة من أجهزة الاستشعار المستندة إلى INA219 عبر ناقل I2C. بينما يتم جمع بيانات الطقس من خلال 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