modelSmartMeter

Smart Meter model for realistic mesaurements

Extends from TransiEnt.Basics.Icons.Sensor (Icon representing a round measurement device).

Information

1. Purpose of model

The purpose of this model is to extract realistic measurement values out of a complex root mean square simulation based on different configurations.

2. Level of detail, physical effects considered, and physical insight

Model is based on literature based standard deviation values for Smart Meter. Further details are given in [1]. The TAF7 and TAF10 configurations were added after [1].

3. Limits of validity

4. Interfaces

Input:

epp_a for connection to a complex root mean square grid simulation

Output:

epp_b for connection to a complex root mean square grid simulation

controlBus for output parameters P, Q, V, I, E, delta, f (depends on configuration case)

5. Nomenclature

See parameter and variable descriptions in the code.

6. Governing Equations

6.1. Noise calculation

Based on Modelica.Blocks.Noise.NormalNoise for Noise_Voltage, Noise_Current, Noise_Delay.

connect(Noise_Current.y, noiseCurrent_internal);

connect(Noise_Voltage.y, noiseVoltage_internal);


6.2. Electric state calculation

P = abs(epp_b.P) * noiseCurrent_internal * noiseVoltage_internal;

V = epp_b.v *noiseVoltage_internal;

I = epp_b.PI * noiseCurrent_internal;

delta = epp_b.delta*noiseVoltage_internal;

f = epp_b.f;

Q = epp_b.Q*noiseVoltage_internal*noiseCurrent_internal;


6.3. Delay calculation (if active)

State = delay(State, abs_Delay.y, maxDelay);

6.4. Configurations

Ideal: Values for P, V, I, delta, f, Q are connected to controlBus without noise and without delay.

Manual: Values for P, V, I, delta, f, Q are connected to controlBus with configured noise and delay.

TAF7: Values for P, V, I and E are connected to controlBus with noise and without delay. All values are taken the mean value over 900s and then are sampled by a discrete sampler to get the regulatory required 900s mean values.

TAF10: Values for P, V, I, delta, f, Q are connected to controlBus without noise and without delay. All values are sampled every 60s to get the regulatory required 60s effective values.


7. Remarks for Usage

Choose the configuration for purpose. Default the measurements are ideal and not delayed.

8. Validation

9. References

[1] T. Steffen, B. Wiegel, D. Babazadeh, A. Youssfi, C. Becker and V. Turau, "Generation of realistic Smart Meter Data from Prosumers for future energy system scenarios," NEIS 2022; Conference on Sustainable Energy Supply and Energy Storage Systems, Hamburg, Germany, 2022, pp. 1-6.


10. Version History

Added by Tom Steffen, Techische Universität Hamburg, Institut für Elektrische Energietechnik, 2025

Parameters

TypeNameDefaultDescription
Configuration
BooleanuseStandardConfigurationtrueEnable standard configurations
Stringconfiguration"Ideal"choose the basic configuration
Manual parametrization
BooleanuseNoisefalse
BooleanuseDelayfalse
Modelica.Units.SI.PerUnitsigma_I0.01Standard Deviation of the Current Sensor
Modelica.Units.SI.PerUnitsigma_V0.01Standard Deviation of the Voltage Sensor
Modelica.Units.SI.PerUnitsigma_Delay10Standard Deviation of the Voltage Sensor
IntegerfixedLocalSeed_V1LocalSeed for Normal Distribution of V
IntegerfixedLocalSeed_I2LocalSeed for Normal Distribution of I
IntegerfixedLocalSeed_Delay3LocalSeed for Normal Distribution of Delaytime
IntegersamplePeriod60Sample Period for the noise generator of the Smart Meter
IntegermaxDelay60Maximum Delay Time
RealsampleStartTimeCause at what time sampling from Noise Generators will start

Connectors

TypeNameDefaultDescription
TransiEnt.Basics.Interfaces.Electrical.ComplexPowerPortepp_a
TransiEnt.Basics.Interfaces.Electrical.ComplexPowerPortepp_b
Basics.Interfaces.General.ControlBuscontrolBus

Components

TypeNameDefaultDescription
Modelica.Blocks.Noise.GlobalSeedglobalSeed
Modelica.Blocks.Noise.NormalNoiseNoise_Voltage
Modelica.Blocks.Noise.NormalNoiseNoise_Current
Modelica.Blocks.Noise.NormalNoiseNoise_Delay
Modelica.Blocks.Discrete.SamplerV_sampler_TAF10
Modelica.Blocks.Discrete.Samplerf_sampler_TAF10
Modelica.Blocks.Discrete.SamplerI_sampler_TAF10
Modelica.Blocks.Discrete.SamplerP_sampler_TAF10
Modelica.Blocks.Discrete.Samplerdelta_sampler_TAF10
Modelica.Blocks.Discrete.SamplerE_sampler_TAF7
Modelica.Blocks.Math.Gaingain
Modelica.Blocks.Sources.RealExpressionV_TAF_
Modelica.Blocks.Sources.RealExpressionI_TAF_
Modelica.Blocks.Sources.RealExpressionP_TAF_
Modelica.Blocks.Sources.RealExpressionf_TAF_
Modelica.Blocks.Sources.RealExpressiondelta_TAF_
Modelica.Blocks.Sources.RealExpressionV_
Modelica.Blocks.Sources.RealExpressionI_
Modelica.Blocks.Sources.RealExpressionP_
Modelica.Blocks.Sources.RealExpressionf_
Modelica.Blocks.Sources.RealExpressiondelta_
Modelica.Blocks.Sources.RealExpressionQ_
Modelica.Blocks.Math.Absabs_Delay
Modelica.Blocks.Math.MeanV_mean
Modelica.Blocks.Math.MeanP_mean
Modelica.Blocks.Math.MeanI_mean
Modelica.Blocks.Discrete.SamplerV_sampler_TAF7
Modelica.Blocks.Discrete.SamplerI_sampler_TAF7
Modelica.Blocks.Discrete.SamplerP_sampler_TAF7
Modelica.Units.SI.VoltageV
Modelica.Units.SI.CurrentI
Modelica.Units.SI.Angledelta
Modelica.Units.SI.PowerP
Modelica.Units.SI.ReactivePowerQ
Modelica.Units.SI.Frequencyf
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_V
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_P
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_delta
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_I
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_Q
Modelica.Blocks.Nonlinear.VariableDelayvariableDelay_f
Modelica.Blocks.Sources.RealExpressionQ_TAF
Modelica.Blocks.Math.MeanQ_mean
Modelica.Blocks.Discrete.SamplerQ_sampler_TAF
Modelica.Blocks.Discrete.SamplerQ_sampler_TAF10