Skip to content

Commit

Permalink
Update logical meter documentation (#986)
Browse files Browse the repository at this point in the history
- **Remove logical_meter instance from FormulaEngine documentation**
- **Update logical meter example**
  • Loading branch information
matthias-wende-frequenz committed Jun 28, 2024
2 parents 0e47f15 + 093ed81 commit 249d4fe
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 22 deletions.
1 change: 1 addition & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,4 @@

- Fixed a typing issue that occurs in some cases when composing formulas with constants.
- Fixed a bug where sending tasks in the data sourcing actor might have not been properly awaited.
- Updated the logical meter documentation to reflect the latest changes.
2 changes: 0 additions & 2 deletions src/frequenz/sdk/timeseries/formula_engine/_formula_engine.py
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,6 @@ class FormulaEngine(
```python
from frequenz.sdk import microgrid
logical_meter = microgrid.logical_meter()
battery_pool = microgrid.new_battery_pool(priority=5)
ev_charger_pool = microgrid.new_ev_charger_pool(priority=5)
grid = microgrid.grid()
Expand Down Expand Up @@ -473,7 +472,6 @@ class FormulaEngine3Phase(
```python
from frequenz.sdk import microgrid
logical_meter = microgrid.logical_meter()
ev_charger_pool = microgrid.new_ev_charger_pool(priority=5)
grid = microgrid.grid()
Expand Down
31 changes: 11 additions & 20 deletions src/frequenz/sdk/timeseries/logical_meter/_logical_meter.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,32 +33,23 @@ class LogicalMeter:
from datetime import timedelta
from frequenz.sdk import microgrid
from frequenz.sdk.timeseries import ResamplerConfig
from frequenz.sdk.actor import ResamplerConfig
from frequenz.client.microgrid import ComponentMetricId
await microgrid.initialize(
"grpc://127.0.0.1:50051",
ResamplerConfig(resampling_period=timedelta(seconds=1))
"grpc://microgrid.sandbox.api.frequenz.io:62060",
ResamplerConfig(resampling_period=timedelta(seconds=1)),
)
logical_meter = microgrid.logical_meter()
pv_pool = microgrid.new_pv_pool(priority=5)
grid = microgrid.grid()
# Get a receiver for a builtin formula
pv_power_recv = pv_pool.power.new_receiver()
async for pv_power_sample in pv_power_recv:
print(pv_power_sample)
# or compose formulas to create a new formula
net_power_recv = (
(
grid.power - pv_pool.power
)
.build("net_power")
logical_meter = (
microgrid.logical_meter()
.start_formula("#1001 + #1002", ComponentMetricId.ACTIVE_POWER)
.new_receiver()
)
async for net_power_sample in net_power_recv:
print(net_power_sample)
async for power in logical_meter:
print(power.value)
```
"""

Expand Down

0 comments on commit 249d4fe

Please sign in to comment.