+11 голос |
Перший свій екземпляр Raspberry Pi я купив, здається, років 12 тому. Але відтоді він так і лежав практично без діла. Якось раз встановив на нього Plex. Але за наявності кількох Apple TV він конкуренції не витримав. А коли зовсім недавно я все ж знайшов місце для Plex Server у своїй мережі, його виявилося набагато зручніше запустити на Synology NAS, де весь контент якраз і знаходиться. Хіба що іноді запустити його, подивитися на Linux і вимкнути :).
Я, звісно, в курсі численних проєктів з його використанням, але у мене таких завдань не виникало.
І ось якраз виникло. Уже півтора року я користуюся системою з інвертором і набором батарей для забезпечення енергонезалежності – або, просто кажучи, щоб під час регулярних вимкнень електрики помічати це якомога менше. Інвертор цілком справляється з цим завданням, батареї прекрасно працюють. Але весь цей час мені заважала відсутність нормального рішення для моніторингу системи. Начебто все в ньому розумне, але недостатньо. Модель інвертора не має підтримки Wi-Fi – віддалено подивитися неможливо. Вийшло тільки під'єднати до інвертора ноутбук, встановити на нього крос-платформний, тобто страшний і глючний, виріб під назвою WatchPower. Відповідно, щоб подивитися стан інвертора, доводилося ходити віддалено на ноутбук (або приходити до нього ногами), але це ще пів біди.
По-перше, ця програма зберігає архіви даних так дивно, що при спробі почати їх дивитися, завмирає на кілька хвилин. Причому вона їх зберігає за весь час, а показує за скільки хоче, справно гальмуючи все більше в міру збільшення історичних архівів.
По-друге, вона разом із самим інвертором поняття не має про місткість батарей і покладається виключно на вимірювання напруги. З реальним залишком заряду відображуване значення Battery capacity пов'язане дуже умовно – збільшення навантаження призводить до падіння напруги (це природний фізичний процес), що негайно змінює capacity в меншу сторону на 5-7%. Зняття навантаження – наприклад, водяна помпа увімкнулася, попрацювала 30 секунд і вимкнулася, – призводить до зворотного результату. І бог би з ним. Але сам розрахунок capacity ведеться за примітивною лінійною шкалою – якщо наприкінці циклу заряду напруга становила 54В за 100%, а напругу вимкнення батарей встановлено на 46В (це приблизно 20-30% заряду, нижче розряджати мої батареї не рекомендується), то 50В – це 45-50%, які інвертор і покаже за 5 хвилин після початку розряду.
Загалом, поки я з цим розібрався, я вже був готовий купувати нові батареї. Але потім всі ці дані прогнав через AI, порахував кількість циклів батарей, підібрав оптимальні параметри для налаштування інвертора і майже заспокоївся – і пішов шукати альтернативи WatchPower. Ну не може ж бути, щоб у сучасному світі, який зійшов з розуму від альтернативної енергії, було тільки одне ось таке масове рішення.
Загалом, знайшов. Воно називається SolarAssistant. Платне, щоправда. Але на тлі всієї системи ця ціна не дуже помітна. І це дуже незвичайне рішення – воно виглядає як дистрибутив Linux для Raspberry Pi. Ви купуєте (або використовуєте наявний) Raspberry Pi, вставляєте в нього карту з дистрибутивом, який завантажується на сайті, і підключаєте RPi до інвертора. Якщо є поруч Ethernet – можна встромити мережевий кабель, якщо немає, але є Wi-Fi, то під час старту Raspberry Pi створить свою мережу, до неї треба під'єднатися і вказати параметри підключення до наявного Wi-Fi. Один раз під час запуску системі потрібен доступ до інтернету – він іде за активацією на сервер, – потім можна без нього, але за його наявності ви можете зареєструвати систему в хмарі й надалі ходити до інтерфейсу через хмарний проксі звідки завгодно.
Головний екран SolarAssistant
Це чистий вебінтерфейс, але спритний і зручний. При цьому його можна поставити у вигляді веб-додатку в iOS, наприклад.
І він робить головне, що я і шукав – крім доступу до всіх налаштувань інвертора, він вміє емулювати BMS (Battery Management System). Не покладаючись на апроксимацію за напругою, а просто, знаючи місткість батареї, підраховує її споживання, адже дані щодо споживаної з батареї потужності йому постійно доступні.
Результати на скриншоті вище – замість малопередбачуваної capacity показується логічне і зрозуміле значення State of Charge, наразі понад годину система живить весь будинок і витрачено 12% ємності.
Теоретично SolarAssistant можна запустити на будь-якій моделі Raspberry Pi, але рекомендується використовувати модель не нижче Raspberry Pi 4. Утім, на першій у мене теж запрацювало. Проблема, однак, у тому, що поруч з інвертором у мене немає нічого, крім Wi-Fi, а якраз його в першій моделі й немає.
Так що так, підтверджую – Raspberry Pi пристрій корисний. Навіть якщо для його практичного застосування треба взяти 12-річну паузу.
Практичне застосування Raspberry Pi
Про DCIM у забезпеченні успішної роботи ІТ-директора
+11 голос |