Implementation of Advanced Battery Protection algorithms (#1376)
The "Battery-Protection" implementation serves as an addition to low-level battery management systems (BMS). It allows a fine grained definition of battery protection parameters and handles logics that are shared between different BMS implementations.
Implementation of a new Prediction architecture (#1327)
This new Predictor architecture uses modular Predictors, e.g. implementation of the Predictor24Hours. These Predictors can announce for which channels they allow a prediction and provide a Prediction24Hours result.
The entire process of getting a prediction is handled by the PredictorManager. It knows which actual Predictors to ask for their prediction, post-processes these predictions and returns them either directly in code via the Predictor::get24HoursPrediction() method or via a get24HoursPrediction JSON-RPC request to the _predictorManager component.