OpenEnergyMonitor Community

Calculate quarter-hour peak in kW

The really useful information would be: “At the present rate for this quarter hour, your maximum demand will be xx kW compared to the maximum so far of yy kW for the month, and the projected average for this and the last 11 months will be zz kW.”

1 Like

I will look into it.

The “company” only calculates is over a quarter-hour, so that one big peak doesn’t have a big impact, if it only last for a small amount of time. The general idea is that they want a stable revenue for maintaining and expanding the net. It is not part of the energy cost, but part of the grid cost (I don’t know how prices are build up in other countries). Within the grid cost: some part will be related to the consumed kWh, some part to the quarter-hour peak kW (called the ‘capacity tariff’).

I don’t have an emonTx, only SDM630 → emonhub → emoncms.

The numbers are correct, the thread title is a translation from how the company titles it. But that title misses some details. Another detail is that if your “max quarter-hour peak in kW” for a month is 2,1 kW, they will still charge you the tariff of 2,5 kW as this is the minimum. Everything over 2,5 kW will be charged at a lineair cost. This also means that if you would have a quarter-hour peak of 6 kW at the beginning of the month, you can’t lower the cost for that month by aiming for a much lower peak. You will have to wait for another month.

Thanks, I will look into it. To get the exact same results, it should be aligned. But even if it is not aligned, it will already be helpful to know if I can avoid some peaks. Once I have my smart meter from the company, I will get the results from that meter. I just want to be prepared on beforehand.

Yes indeed :wink: . I got lot’s of information, thanks! But I have a busy week ahead at work, so I might not get to it really fast :frowning: . At the moment I make a CSV Output in emoncms of my imported energy (in kWh) for a fixed interval of 900 seconds (15 minutes). I then do some calculations in LibreOffice Calc.

Seconds since start household:EI Kwh/15 min. kW (kWh*4) If >= 2,5
112500 73,1
113400 73,4 0,3 1,20
114300 73,5 0,1 0,4
115200 74,3 0,8 3,2 Damn, over the 2,5 kW :frowning:

Hmm, this would be a nice case for a home battery that kicks in as soon as your usage is above 2,5kW

1 Like

So how did you integrate over such a long period? Something really slow moving like a bi-metallic strip?

I recently came across a circa 1960s voltage regulator. It nails 5.1Vrms output over a wide input range (9 to 16V DC), by using a bi-metallic strip to generate a PWM output.

Cor blimey - you’re asking a lot for me to remember that. I think it was pure analogue integrators, but I didn’t have a lot to do with it. I seem to remember it was not easy to set up.

Do you know yet how they plan to turn the final 12-month average into Euros? Sounds like it’s going to be an annual service fee of some sort? Is it intended to be a major part of your bill, or just a gentle nudge to spread the load?

I wonder if it will encourage EV owners to wind back the wick on their EVSEs. In three phase environments, those things can sit at 11kW, or even 22kW for hours, and you’d be likely to do that at least once per month, so it could well dominate the calculation.

I would have thought that this was the principal objective.

Here, where the majority of houses are single phase, they’re getting increasingly worried about the potential for phase imbalance on the local transformer. With each EV drawing 32A all night long, you only need a few of them to randomly land on the same phase and you’ve got a potential problem.

That’s true in the UK too, and particularly in rural areas where the final transformers tend to be smaller, serving fewer houses. In urban areas, I think the transformers will tend to be 1 MVA or so, so there’s less likelihood of imbalance - it’s just a question of are they and the cables up to it? And I think I can guess the answer to that - no.

Belgium is a very complex country, without a long term vision on energy planning :frowning: . The “capacity tariff” is postponed from january 2022 to halfway 2022. The grid costs will be related for 80% to the 12-month tariff (in kW) and for 20% to the imported energy (in kWh). Exact costs aren’t known yet, but an average customer would have an extra grid cost of 3,6 procent. Those with a low energy use will have a higher bill (eg. an extra house at sea side during the holidays), those with a high energy use (eg. with EV/airco/swimming pool/…) that will spread their peaks will have a lower bill.

1 Like

I now have register 84 = Total System Power Demand in Watts = TSPD as extra input. I already had 52 = Total system power in Watts = PT and 72 = Total Import kWh = EI.

There also is an address register 40003 = Demand Period. The documentation says:

Write demand period: 0, 5, 8, 10, 15, 20, 30 or 60 minutes, default 60. Setting the period to 0 will cause the demand to show the current parameter value, and demand max to show the maximum parameter value since last demand reset.

The future “capacity tariff” will only be when importing, so I focus on that part. An example with the left axis for EI:

The value TSPD seems to change every 120 seconds = 2 minutes. Strange, because the documentation seems to say that the default is 60 minutes. I’m also not sure if this “register 84 = Total System Power Demand in Watts” is the value that I’m looking to know my “quarter-hour peak”. I would think there would be a mathematical relation between TSPD, PT and EI, which I don’t see at the moment in the export TSPD-PT-EI.csv (86.1 KB)

It looks to me like it could be a rolling 60-min demand. Your power drops to baseload a little after midnight, while the demand plot doesn’t get there until just after 1am. Perhaps every 2 minutes it ages out the oldest 2 minutes worth of data, and adds in the newest. If you change the demand period to 15 minutes, is it more responsive?

@dBC, you could be right. I did my own calculations in LibreOffice Calc based on your assumptions and it’s not completely the same (maybe because I just averaged PT), but follows the one from emoncms pretty close. I now changed the register value with minimalmodbus, hopefully my code is correct.

instrument.write_float(2, 15)

I’ll keep you updated on the new logged values.

It seemed to have worked out with this new setting. If I compare the TSPD-as-logged with my own calculations (TSPD_calc15), it seemed “closed enough” again :slight_smile: . So it appears I now have a rolling 15-min demand, with every 2 minutes the aging out of the oldest 2 minutes worth of data to add in new ones (like @dBC already figured out).

Next step would be to immediately receive a message (eg. e-mail) if I exceed the 2500 “quarter-hour peak”, so that I could try to figure out what caused that peak. As far as I understand, the process list setup below will not work out. But what will?

FYI a screenshot from emoncms and a calculation of my own in LibreOffice Calc.

I think the following process list should work, but I don’t find where I can do the e-mail settings.

I found the topic Send Email Event , but I don’t find settings.php.

/var/www/emoncms$ ls
composer.json                index.php             route.php
COPYRIGHT.txt                Lib                   scripts
core.php                     LICENSE.txt           settings.env.ini
default.emonpi.settings.php  locale.php            settings.ini
default-settings.ini         Modules               tests
default-settings.php         param.php             Theme
docs                         php-info.php          version.txt
example.settings.ini         process_settings.php

After looking at all the files, I figured out that I could copy-paste relevant sections from default-settings.ini to settings.ini. I did so for the smtp-section and I installed SwiftMailer. Hopefully it seems to work out. I’m still in doubt about the correct way of working: if the peak stays higher than 2500 W for a long time, I will get an e-mail every 10 seconds…

I also changed…

csv_decimal_place_separator = ","
csv_field_separator = ";"

… but that setting doesn’t seem to apply yet. Do I have to restart some service?

Unfortunately I don’t receive any e-mails. What could be wrong? I executed git -C /opt/emoncms/modules clone -b 'v5.4.8' --single-branch and changed settings in var/www/emoncms/settings.ini:

; Email address to email proccessed input values
default_emailto = '(my personal e-mailaddress)'

host = ""
; 25, 465, 587
port = "465"
; another e-mail address that I have, different from my personal one.
from_email = '[email protected]'
from_name = 'Some name'
; Comment lines below that dont apply
; ssl, tls
encryption = "ssl"
username = "[email protected]"
password = "Iwillnotttellyou"

I’m also still in doubt about the correct way of working: if the peak stays higher than 2500 W for a long time, I will get an e-mail every 10 seconds with my process list that I posted earlier… Won’t I?

I couldn’t fix the e-mail problem in emoncms, so I went for another solution with Node-Red that seems to work. I still have to fine tune it, but I already get an e-mail if I exceed a peak.


1 Like