Владельцы солнечных электростанций могут столкнуться с необходимостью управления энергопотреблением конечными устройствами так как сокращение потребления может расширить время работы от аккумулятора в вечернее время и в пасмурную погоду, а также избежать потери данных в случае жесткого отключения.
Большинство современных компьютеров позволяют регулировать частоту процессора что приводит с одной стороны к снижению производительности с другой к увеличению времени автономной работы. В Windows снижение частоты осуществляется вручную через интерфейс программы управления, в Linux через виджет панели задач и через консоль (cpupower — CentOS, cpufreq-set — Ubuntu).
В Linux выполнение команд через консоль позволяет осуществлять их выполнение автоматически при наступлении определенных событий.
Утилита usps-consumptionagent из свободного набора UmVirt Solar Power Station позволяет выполнять команды управляющие производительностью процессора в зависимости от оперативных данных солнечной электростанции.
Типовая конфигурация для 12 вольтового режима:
- Если напряжение на панелях выше 16 вольт, установка режима производительность
- Если напряжение на панелях ниже 16 вольт или неизвестно, установка режима энергосбережение
- Если напряжение на аккумуляторе меньше 11,6 выполнение команды отключения
Команда отключения может быть:
- плавное отключение (poweroff),
- спящий режим (systemctl suspend),
- гибернация (systemctl hibernate),
- последовательность команд.
Пример последовательности команд:
./suspend.py && systemctl suspend
Выполнение этой команды сохранит текущие виртуальные машины на диск и переведет компьютер в спящий режим. Данная команда может быть востребована програмистами и майнтайнерами в случае компиляции «больших» программ таких как Firefox, Chrome, LibreOffice и других, когда время работы (аптайм) может привысить дневное время.
В качестве демонстрации
Источник: habr.com