You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been using MRTG and RRDtool for many years now, and now I am considering using RRD for data from electricity meters. Does anybody use RRDtool for this purpose? What is your RRD file configuration? Some challenges I see with electricity meters as opposed to ifInOctets-like network traffic data:
So far I think I will use step of 900 seconds, but will read values more often (say, every minute or every 5 minutes), based on whether somebody is looking at them right now, and I would like to use the more precise data for e.g. power peaks calculation: If I read $e1 at $t1 and $e2 at $t2 (where $t2-$t1 is much smaller than $step), I would like to use ($e2-$e1)/($t2-$t1) as a possible power peak, not the average power over the whole $step.
I use mostly MODBUS/RTU-based meters, and reading all the meters on one RS485 line takes about 15-20 seconds. So for interactive data, I want to store the exact timestamp of each reading (per-meter). This probably means a dedicated RRD file for each meter.
The energy meter is essentially an ever-increasing COUNTER (or DCOUNTER), but I need absolute values as well - for example, I would like to be able to calculate the exact energy consumption since YYYY-MM-01 00:00 till YYYY-$(MM+1)-01 00:00, no matter how many data points in between are missing. The LAST RRA would be handy for this, but then I would need absolute values, not rate-transformed COUNTER values. And preferably an exact timestamp of the last measurement in the aggregation interval, not the end of that interval.
The billing by the electricity distribution company is done monthly here (midninght the 1st to-midnight the 1st), and I would like to be able to match it as close as possible even with my subordinate energy meters. The problem is the daylight-saving time - usually April is 30×86_400-3600 seconds long here, and October is 31×86_400+3600 seconds long. But RRA with 1d aggregation works in multiples of 86_400 seconds even across the daylight saving time change, doesn't it?
The electricity meters usually provide the energy consumption in (kilo)Watt-hours, but the rate-transformed unit should be (kilo)Watts, i.e. ($e2-$e1)×3600/($t2-$t1) where $t1 and $t2 are in seconds. I guess some RPN magic can do this :-)
How do you solve the above problems in your systems? I think some of it can be partly solved by storing the electricity meter reading twice, to two DSs - one as GAUGE, and the other one as COUNTER.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi all,
I have been using MRTG and RRDtool for many years now, and now I am considering using RRD for data from electricity meters. Does anybody use RRDtool for this purpose? What is your RRD file configuration? Some challenges I see with electricity meters as opposed to ifInOctets-like network traffic data:
So far I think I will use step of 900 seconds, but will read values more often (say, every minute or every 5 minutes), based on whether somebody is looking at them right now, and I would like to use the more precise data for e.g. power peaks calculation: If I read $e1 at $t1 and $e2 at $t2 (where $t2-$t1 is much smaller than $step), I would like to use ($e2-$e1)/($t2-$t1) as a possible power peak, not the average power over the whole $step.
I use mostly MODBUS/RTU-based meters, and reading all the meters on one RS485 line takes about 15-20 seconds. So for interactive data, I want to store the exact timestamp of each reading (per-meter). This probably means a dedicated RRD file for each meter.
The energy meter is essentially an ever-increasing COUNTER (or DCOUNTER), but I need absolute values as well - for example, I would like to be able to calculate the exact energy consumption since YYYY-MM-01 00:00 till YYYY-$(MM+1)-01 00:00, no matter how many data points in between are missing. The LAST RRA would be handy for this, but then I would need absolute values, not rate-transformed COUNTER values. And preferably an exact timestamp of the last measurement in the aggregation interval, not the end of that interval.
The billing by the electricity distribution company is done monthly here (midninght the 1st to-midnight the 1st), and I would like to be able to match it as close as possible even with my subordinate energy meters. The problem is the daylight-saving time - usually April is 30×86_400-3600 seconds long here, and October is 31×86_400+3600 seconds long. But RRA with 1d aggregation works in multiples of 86_400 seconds even across the daylight saving time change, doesn't it?
The electricity meters usually provide the energy consumption in (kilo)Watt-hours, but the rate-transformed unit should be (kilo)Watts, i.e. ($e2-$e1)×3600/($t2-$t1) where $t1 and $t2 are in seconds. I guess some RPN magic can do this :-)
How do you solve the above problems in your systems? I think some of it can be partly solved by storing the electricity meter reading twice, to two DSs - one as GAUGE, and the other one as COUNTER.
Any other suggestions? Thanks!
-Yenya
Beta Was this translation helpful? Give feedback.
All reactions