diff --git a/docs/_static/architecture-overall.odp b/docs/_static/architecture-overall.odp new file mode 100644 index 0000000..64843f9 Binary files /dev/null and b/docs/_static/architecture-overall.odp differ diff --git a/docs/_static/architecture-overall.png b/docs/_static/architecture-overall.png new file mode 100644 index 0000000..c960c92 Binary files /dev/null and b/docs/_static/architecture-overall.png differ diff --git a/docs/_static/architecture-system.odp b/docs/_static/architecture-system.odp new file mode 100644 index 0000000..c33afd0 Binary files /dev/null and b/docs/_static/architecture-system.odp differ diff --git a/docs/_static/architecture-system.png b/docs/_static/architecture-system.png new file mode 100644 index 0000000..8b6a883 Binary files /dev/null and b/docs/_static/architecture-system.png differ diff --git a/docs/akkudoktoreos/architecture.md b/docs/akkudoktoreos/architecture.md new file mode 100644 index 0000000..fd9590e --- /dev/null +++ b/docs/akkudoktoreos/architecture.md @@ -0,0 +1,50 @@ +% SPDX-License-Identifier: Apache-2.0 + +# Architecture + +```{figure} ../_static/architecture-overall.png +:alt: Overall System Architecture + +Overall System Architecture +``` + +## Overview of the Project Structure + +## Key Components and Their Roles + +```{figure} ../_static/architecture-system.png +:alt: EOS Architecture + +EOS Architecture +``` + +### Configuration + +The configuration controls all aspects of EOS: optimization, prediction, measurement, and energy management. + +### Energy Management + +Energy management is the overall process to provide planning data for scheduling the different devices in your system in an optimal way. Energy management cares for the update of predictions and the optimization of the planning based on the simulated behavior of the devices. The planning is on the hour. Sub-hour energy management is left + +### Optimization + +### Device Simulations + +Device simulations simulate devices' behavior based on internal logic and predicted data. They provide the data needed for optimization. + +### Predictions + +Predictions provide predicted future data to be used by the optimization. + +### Measurements + +Measurements are utilized to refine predictions using real data from your system, thereby enhancing accuracy. + +### EOS Server + +EOS operates as a [REST](https://en.wikipedia.org/wiki/REST) [API](https://restfulapi.net/) server. + +### EOSdash + +`EOSdash` is a lightweight support dashboard for EOS. It is pre-integrated with EOS. When enabled, +it can be accessed by navigating to [http://localhost:8503](http://localhost:8503) in your browser. diff --git a/docs/akkudoktoreos/integration.md b/docs/akkudoktoreos/integration.md new file mode 100644 index 0000000..ad02d94 --- /dev/null +++ b/docs/akkudoktoreos/integration.md @@ -0,0 +1,34 @@ +% SPDX-License-Identifier: Apache-2.0 + +# Integration + +EOS operates as a [REST](https://en.wikipedia.org/wiki/REST) [API](https://restfulapi.net/) server, +allowing for seamless integration with a wide range of home automation systems. + +## EOSdash + +`EOSdash` is a lightweight support dashboard for EOS. It is pre-integrated with EOS. When enabled, +it can be accessed by navigating to [http://localhost:8503](http://localhost:8503) in your browser. + +## Node-RED + +[Node-RED](https://nodered.org/) is a programming tool designed for connecting hardware devices, +APIs, and online services in creative and practical ways. + +Andreas Schmitz uses [Node-RED](https://nodered.org/) as part of his home automation setup. + +### Resources + +- [Installation Guide (German)](https://meintechblog.de/2024/09/05/andreas-schmitz-joerg-installiert-mein-energieoptimierungssystem/) — A detailed guide on integrating an early version of EOS with + `Node-RED`. + +## Home Assistant + +[Home Assistant](https://www.home-assistant.io/) is an open-source home automation platform that +emphasizes local control and user privacy. + +### Resources + +- Duetting's [EOS Home Assistant Addon](https://github.com/Duetting/ha_eos_addon) — Additional + details can be found in this + [discussion thread](https://github.com/Akkudoktor-EOS/EOS/discussions/294). diff --git a/docs/akkudoktoreos/optimization.md b/docs/akkudoktoreos/optimization.md new file mode 100644 index 0000000..741664f --- /dev/null +++ b/docs/akkudoktoreos/optimization.md @@ -0,0 +1,8 @@ +% SPDX-License-Identifier: Apache-2.0 + +# Optimization + +:::{admonition} Todo +:class: note +Describe optimization. +::: diff --git a/docs/akkudoktoreos/prediction.md b/docs/akkudoktoreos/prediction.md index c6a4a2d..120f791 100644 --- a/docs/akkudoktoreos/prediction.md +++ b/docs/akkudoktoreos/prediction.md @@ -88,8 +88,8 @@ optimization. Key considerations for updates include: Prediction data can be accessed using the EOS **REST API** via the `/v1/prediction/<...>` endpoints. -In a standard configuration, the [**REST API**](http://0.0.0.0:8503/docs) of a running EOS instance -is available at [http://0.0.0.0:8503/docs](http://0.0.0.0:8503/docs). This link provides access to +In a standard configuration, the [**REST API**](http://localhost:8503/docs) of a running EOS instance +is available at [http://localhost:8503/docs](http://localhost:8503/docs). This link provides access to the API documentation and allows you to explore available endpoints interactively. To view all available prediction keys, use the **GET** `/v1/prediction/keys` endpoint. diff --git a/docs/index.md b/docs/index.md index 5b40b1a..5ca7ba0 100644 --- a/docs/index.md +++ b/docs/index.md @@ -14,9 +14,12 @@ welcome.md akkudoktoreos/about.md develop/getting_started.md develop/CONTRIBUTING.md +akkudoktoreos/architecture.md akkudoktoreos/configuration.md +akkudoktoreos/optimization.md akkudoktoreos/prediction.md akkudoktoreos/measurement.md +akkudoktoreos/integration.md akkudoktoreos/serverapi.md akkudoktoreos/api.rst ```