Sweden
Loading...
India
Loading...
Energy Management System Architecture
Unified Design for myems + openems
This document defines the combined architecture, data structures, and parameters of two Energy Management platforms:
- myems β microservice ETL + analytics + dashboard system
- openems β real-time device/channel control framework
It also proposes a unified architecture suitable for:
- dashboards
- analytics
- real-time monitoring
- edge control
- scalable cloud deployment
1. Architecture Overview
myems β ETL & Analytics Pipeline



Flow
Design Traits
- Database first
- Historical analytics
- Batch processing
- Microservices
- Reporting/Billing focused
openems β Real-Time Component Framework




Flow
Design Traits
- Object oriented
- Real-time telemetry
- Device abstraction
- Edge computing
- Control & automation focused
2. Folder Structure Comparison
myems
database/
myems-modbus-tcp/
myems-cleaning/
myems-normalization/
myems-aggregation/
myems-api/
myems-web/
myems-admin/
| Module | Purpose |
|---|---|
| modbus-tcp | device polling |
| cleaning | bad data removal |
| normalization | unit conversion |
| aggregation | analytics |
| api | REST gateway |
| web | user dashboard |
| admin | configuration |
| database | schema/migrations |
openems
| Module | Purpose |
|---|---|
| component | device abstraction |
| channel | measurement signals |
| controller | logic/control |
| edge | real-time execution |
| backend | sync/storage |
| ui | monitoring |
3. Core Data Structures
3.1 myems β Time-Series Model
RawReading
CleanReading
NormalizedReading
AggregatedEnergy
Pattern
3.2 openems β Component/Channel Model
Component
Channel
Pattern
4. Energy Component Parameters (Complete)
Electrical Measurements
| Parameter | Unit | Meaning |
|---|---|---|
| Voltage | V | line voltage |
| Current | A | phase current |
| ActivePower | kW | real power |
| ReactivePower | kVAR | reactive |
| ApparentPower | kVA | total |
| Frequency | Hz | grid freq |
| PowerFactor | β | efficiency |
Energy Metrics
| Parameter | Unit |
|---|---|
| EnergyImport | kWh |
| EnergyExport | kWh |
| TotalEnergy | kWh |
| Demand | kW |
| PeakDemand | kW |
| Cost | currency |
| CO2 | kg |
Battery Metrics
| Parameter | Unit |
|---|---|
| SOC | % |
| ChargePower | kW |
| DischargePower | kW |
| Voltage | V |
| Current | A |
| Temperature | Β°C |
| Capacity | kWh |
Inverter Metrics
| Parameter | Unit |
|---|---|
| AC_Power | kW |
| DC_Power | kW |
| Efficiency | % |
| State | enum |
| Fault | boolean |
5. Conceptual Comparison
| Feature | myems | openems |
|---|---|---|
| Core model | DB rows | objects |
| Data style | batch | real-time |
| Storage | SQL | memory/edge |
| Analytics | strong | moderate |
| Control | weak | strong |
| Best for | dashboards | automation |
6. Mapping Between Systems
| openems | myems equivalent |
|---|---|
| Component.id | meter_id |
| Channel.name | register |
| Channel.value | value |
| timestamp | timestamp |
| ActivePower | demand_kw |
| EnergyImport | energy_kwh |
| SOC | battery_soc |
7. Unified Architecture (Recommended)
Hybrid Flow
Unified Data Model (Recommended)
Device
Channel
Reading
Aggregate
8. Recommended API Format
{
"deviceId": "meter-01",
"channel": "ActivePower",
"value": 3200,
"unit": "W",
"timestamp": 1734200000
}
Suitable for
- charts
- React Flow nodes
- live dashboards
- alerts
- analytics
9. Recommended Tech Stack
Backend
- FastAPI / Node
- TimescaleDB / PostgreSQL
- Redis
- MQTT (optional)
Frontend
- React
- MUI / Chakra
- Recharts / ECharts
- Zustand
Edge
- OpenEMS components
10. When to Use What
Use myems if:
- reports
- billing
- analytics
- historical queries
Use openems if:
- device control
- live telemetry
- edge logic
Energy System Components β Parameters Mapping Guide
Think physically first, not software first:
Each device exposes different electrical/energy parameters.
1οΈ. Energy Meter (Grid / Feeder / Load Meter)



Purpose
Measures electrical quantities + energy consumption
Parameters
Electrical (instantaneous)
| Parameter | Unit | Meaning | Needed for |
|---|---|---|---|
| Voltage_L1/L2/L3 | V | phase voltages | power calc |
| Current_L1/L2/L3 | A | phase currents | load monitoring |
| Frequency | Hz | grid frequency | stability |
| PowerFactor | β | efficiency | billing/quality |
Power
| Parameter | Unit | Meaning |
|---|---|---|
| ActivePower | kW | real usable power |
| ReactivePower | kVAR | non-working power |
| ApparentPower | kVA | total demand |
Energy
| Parameter | Unit | Meaning |
|---|---|---|
| EnergyImport | kWh | consumed energy |
| EnergyExport | kWh | exported energy |
| TotalEnergy | kWh | cumulative |
System Mapping
openems
myems
2οΈ. Battery Storage System (BESS)



Purpose
Stores and supplies energy
Parameters
State
| Parameter | Unit | Meaning |
|---|---|---|
| SOC | % | state of charge |
| SOH | % | state of health |
| Capacity | kWh | usable capacity |
Electrical
| Parameter | Unit |
|---|---|
| Voltage | V |
| Current | A |
| Power | kW |
Flow
| Parameter | Unit | Meaning |
|---|---|---|
| ChargePower | kW | charging |
| DischargePower | kW | discharging |
| EnergyCharged | kWh | stored |
| EnergyDischarged | kWh | used |
Safety
| Parameter | Unit |
|---|---|
| Temperature | Β°C |
| Alarm/Fault | bool |
System Mapping
openems
myems
3οΈ. Solar / PV Inverter




Purpose
Converts DC β AC
Parameters
DC side
| Parameter | Unit |
|---|---|
| DC_Voltage | V |
| DC_Current | A |
| DC_Power | kW |
AC side
| Parameter | Unit |
|---|---|
| AC_Voltage | V |
| AC_Current | A |
| AC_Power | kW |
Performance
| Parameter | Unit |
|---|---|
| Efficiency | % |
| EnergyGenerated | kWh |
| Status | enum |
| Fault | bool |
System Mapping
openems
myems
4οΈ. Load / Equipment


Purpose
Consumes energy
Parameters
| Parameter | Unit |
|---|---|
| ActivePower | kW |
| EnergyConsumed | kWh |
| Runtime | hrs |
| Demand | kW |
| PeakDemand | kW |
| Status | on/off |
Mapping
Same as meter, but logically tagged:
5οΈ. Grid / Utility Connection
![]()

Purpose
Tracks import/export with utility
Parameters
| Parameter | Unit |
|---|---|
| ImportPower | kW |
| ExportPower | kW |
| ImportEnergy | kWh |
| ExportEnergy | kWh |
| Tariff | currency/kWh |
| Cost | currency |
Complete Parameter β Component Table
| Parameter | Meter | Battery | Inverter | Load | Grid |
|---|---|---|---|---|---|
| Voltage | β | β | β | β | β |
| Current | β | β | β | β | β |
| ActivePower | β | β | β | β | β |
| ReactivePower | β | β | β | β | β |
| EnergyImport | β | β | β | β | β |
| EnergyExport | β | β | β | β | β |
| SOC | β | β | β | β | β |
| ChargePower | β | β | β | β | β |
| DischargePower | β | β | β | β | β |
| EnergyGenerated | β | β | β | β | β |
| Temperature | β | β | β | β | β |
| Demand/Peak | β | β | β | β | β |
| Cost | β | β | β | β | β |
Final Practical Rule
If it measures electricity β Meter parameters
If it stores energy β Battery parameters
If it converts energy β Inverter parameters
If it consumes energy β Load parameters
If it bills energy β Grid parameters
For Your React Dashboard
Use this universal format:
This directly maps to:
- charts
- React Flow nodes
- alerts
- analytics
- live monitoring