Incadescent lamps

Flicker-Simulator: First Time Pass

Time to Read 4 min

All devices and equipment must pass the oldest EMC standard which is the flicker-test. This standard defines how an equipment is allowed to draw power from the network without generating voltage fluctuations which would disturb lightning.

In most modern devices flicker is controlled by software (e.g. switching on and off of a heater), also hardware can be affected, e.g. if performance specification and flicker standard can only be reached through optimization of the form of the switching transient.

Which are the Problems?

Late discovery: In most cases the non-compliance is discovered only when hardware and software prototypes are available, in the worst case only at the compliance measurements.

Complexity: The flicker-measurement is highly non-linear and rather difficult to understand.

Possible Solutions

One can trust ones luck and wait until hard- and software are ready.
A certain overview is achievable by using the approximation formula and curves from the standard.

Simulation of Flicker Measurement

A much more exact prediction is available through the simulation of the flicker measurement, i.e. of a flickermeter according IEC 61000-4-15.
With this approach, the input data can be measured or simulated results from control system simulation and software development or from measurements on prototypes and rapid prototypes on one hand.
On the other hand generic generic waveforms (rectangle, trapezoidal,...) can be simulated.

The result is a first pass at the real flicker test.

Solcept Open Source Flicker Measurement-Simulator

Solcept has developed a flicker-measurement simulator and provides it here as open source under the Boost license.
The simulator runs on MathWorks MATLAB or the open source tool Octave.
It resulted in the same values as the measurement with real software and electronics for a 2.5 kW heater control system!

Download and use

The simulator can be obtained from the download section. If no MATLAB is available, Octave must be installed first.

In addition on this site more information about flicker for developers plus three application examples:

I have feedback, questions or improvements!


Flicker In a Nutshell

This section introduces shortly to the problems of flicker and shows a few simple flicker calculation possibilities.


Origin of Flicker

The voltage of public power networks is changing over time. These changes originate in the voltage drop generated over the source impedance of the grid by the changing load current of an equipment or facility.

The fluctuations of the load in time generate flicker, i.e. changes in the luminous flux of a lamp. The effects of flicker can range from disturbance to epileptic attacks of photosensitive persons.

Flicker Model

The requirements of a flicker measurement equipment are defined in the standard [1] IEC 61000-4-15. The flicker meter is subdivided in several function blocks which simulate a 230 V/60 W incandescent lamp (reference lamp) an the human perception system (eye-brain model).

From the resulting momentary value of flicker the short term flicker value Pst is generated in the last block according to a statistic process over a predefined observation interval. Long term flicker Plt is calculated as the cubic average of several Pst values.

In the standard [2] IEC 61000-3-3 the observation intervals and the limiting values for Pst and Plt are specified:

Value Observation Interval Limiting Value
Pst 10 min 1.0
Plt 2 h 0.65

Operating Condition of the EUT

The flicker standard states that the EUT (Equipment Under Test) has to be operated during the test in a way which is the worst case state with respect to flicker.

If the EUT is operated in a (relatively) constant fashion during the whole test, Plt = Pst will result. If this state is is feasible and realistic this means Pst has to fulfill the limits for Plt (which are lower!)


A purely analytical calculation of Pst is almost impossible. In the standard [2] there are formulas which allow the estimation of the Pst values to be expected:

n = number of load changes in the observation interval
Tp = duration of the observation interval in seconds
F = shape factor (1 for step-wise voltage changes)
d = relative voltage change relative dU / U

In [2] there are also shape factors for different curve forms.

Flicker Facts

  • Flicker is generated by load changes. Only the amplitude of the load change is relevant, not the absolute value.
  • A reduction in Pst can only be attained through:
    • less load changes n
    • smaller load changes dP
    • soft (F < 1) instead of hard (F = 1) load changes (e.g. by the help of power electronics)
  • The relationship between amplitude of load changes and Pst is linear, i.e. halving the switched load results in half the Pst
  • The relationship between number of load changes per time (n/ Tp) and Pst is non-linear. A halving of load changes reduces Pst by only about 20%. In order to have half the Pst, the number of load changes must be reduced by a factor of 9!


[1] IEC 61000-4-15, Testing and measurement techniques – Flickermeter – Functional and design specifications, Edition 1.1, 2003-03
[2] IEC 61000-3-3, Limits – Limitation of voltage changes, voltage fluctuations and flicker in public low-voltage supply systems, for equipment with rated current 16 A per phase and not subject to conditional connection, Edition 2.0, 2008-06
[3] Wikipedia: Flicker
[4] Wilhelm Mombauer: "Messung von Spannungsschwankungen und Flickern mit dem IEC-Flickermeter", ISBN 3-8007-2525-8, VDE-Verlag



Flicker Simulation on Different Waveforms

Flicker Simulation with Simulated Voltage Waveforms

In feasibility studies or in the concept phase simulation is the only possibility to asses and optimize different solutions with respect to flicker performance. For basic analysis usually no complete system simulation is needed.

Example: Phase Control

File: example_phase_control.m

In this example the soft switching behavior of a load (1 kW) using phase control and its influence on flicker reduction is investigated.
The results confirm a significant flicker reduction. Using a linear ramp of approx. 1 s, Pst can be reduced by a factor of 5.

Note that the use of phase control generates harmonic currents which might violate IEC 61000-3-2 and should be filtered accordingly.

Flicker Simulation using Real Measurements

A good prediction of flicker can be attained by feeding measured data from real hardware (functional prototypes, evaluation boards, prototypes...) or from system simulation.

In principle, the supply voltage could be recorded using e.g. a digital oscilloscope. This means that a power source with a reference impedance and defined open circuit voltage according the standard must be available (see Flicker In A Nutshell).

The simpler approach is the recording of the switching signals and calculation of the resulting supply voltages.

Example: Heater Control

File: example_heater.m

In this example a system is investigated which controls 4 heater elements with an overall power of 4.5 kW. The control signals for the different heater elements were recorded using a digital scope and stored as .mat files.
The simulated value of Pst is 1.1, which means the system would not pass.

Test Cases from the Standard

In the flicker standard IEC 61000-4-15 test cases are specified which allow the measurement of the accuracy of the tester. Rectangular waveforms of different amplitudes and frequencies are fed into the flicker meter and the resulting Pst values measured.

Example: Performance Test

File: example_testbench_230V_50Hz.m
File: example_testbench_120V_60Hz.m

These examples can be used to verify the performance of the flicker simulator versus the specified test cases.

Download FlickerSim

If you click on the download link below, you accept the following conditions of use:

  • The program is provided "as is" without any warranty.
  • The program is distributed under the Boost Lizenz.

Use this link or follow the Download Link on Matlab Central.

Quick Reference

  1. Copy content of Zip-file to a suitable directory
  2. Start MATLAB or Octave
  3. Chang to the directory containing the extracted data (e.g. 'd:\data\flicker_sim\')
  4. Execute example (e.g. example_heater)

Keywords/ Tags

Questions & Comments

No Comments

Do You have Additional Questions?

* These fields are required

Let us discuss your idea/ your project