First off, I apologize if this is comparatively basic theory. My primary profession is firmware and I only do electronics as a hobby.

I am attempting to design a power supply for a ~450W resistive heating element. The circuit is pretty basic and uses a microcontroller, optoisolator and a triac to control the load. This is working as expected but, now, I am attempting to read the current. This is done using an external sensing IC (ACS71020) which is giving strange results. This question, however, is not about the ACS (it will get its own question once I understand the general question asked here).

The Setup

In an attempt to understand how current flows through this device I have created the following (simplified) test setup:


simulate this circuit – Schematic created using CircuitLab


  • XFMR1 is a 1:166 current transformer
  • SCOPE is my oscilloscope (Siglent SDS1104X-E)
  • DMM is a Fluke 77 for additional data
  • TRIG is the optoisolated trigger signal from the MCU

The Problem

It seems like the amplitude of the current waveform is progressively more attenuated as the firing angle is reduced. Consider the following graphs taken from my oscilloscope at different firing angles (as measured as a percentage of total output power). Note that the yellow trace is the unmolested line voltage and the pink (purple?) trace is the measurement from the current transformer.

  • 10%: 10% power waveform
  • 50%: 50% power waveform
  • 70%: 70% power waveform
  • 90%: 90% power waveform
  • 100%: 100% power waveform

Notice how the current waveform begins to diminish (relatively) as the power is increased. In each of the waveforms above the scale is held constant.


  1. What causes this behavior and is it expected?
  2. My DMM measures a linear increase in RMS current; in order for this to be true shouldn't the waveform NOT diminish?
  3. How does this not violate Ohm's law given that my controller already accounts for the area under the curve (eg. 30% power is 30% of the area under the curve; not 30% the distance from the zero cross point)?

Edit 1:

The load resistor was calculated by following this guide.

  • First, I calculated the max p-p secondary current: 5A max * 1.414 = 7.07A p-p * 1/166 = 0.0429A.
  • Then, I chose 4V RMS as max voltage based on the datasheet for the current transformer I had on hand. This was converted to p-p: 4 * 1.414 = 5.656V
  • Next, Rload = V/I = 5.656 / 0.0429 = 132.8 Ohms.
  • The closest standard resistor I had handy was 110 Ohms. Feeding this back in: Vmax = 0.0429 * 110 = 4.685 * 0.707 = 3.312V. This is less than the 4VRMS max for the transformer so I should be good.

Edit 2:

For the DMM, below are the readings I get at various power outputs on the bulb:

DMM current vs. power level

As you can see, it is quite linear, which I would expect since my controller handles the integral for the area under the curve which corresponds to a given power.

Is this linear assumption incorrect?

  • 3
    \$\begingroup\$ Is the load really a lampbulb? That would explain it. As the bulb gets hotter, its resistance increases. \$\endgroup\$
    – user16324
    Commented Aug 17, 2020 at 21:34
  • \$\begingroup\$ Yeah, it is actually a bulb. I did notice a little bit of current variance as the filaments heated but I tried to wait for this to stabilize before taking my measurements. \$\endgroup\$ Commented Aug 17, 2020 at 21:37
  • \$\begingroup\$ And what about the DSO rms values VS. DMM values? \$\endgroup\$ Commented Aug 17, 2020 at 22:05
  • \$\begingroup\$ So this may be my ignorance here but I am not sure how to range in the DSO values w.r.t. the actual current. I selected the load resistor such that the max voltage wouldn't exceed the current transformer's max. Thus far I have just been looking at relative changes. \$\endgroup\$ Commented Aug 17, 2020 at 22:17
  • \$\begingroup\$ "I selected the load resistor such that the max voltage wouldn't exceed the current transformer's max", can you elaborate this? \$\endgroup\$ Commented Aug 17, 2020 at 22:29

1 Answer 1


Brian Drummond's comment about light bulb resistance increasing with temperature is (most of) the answer. The cold resistance of an incandescent light bulb filament is typically 10 times less than at its rated voltage. At low phase angle the power drawn by the bulb is less so it heats up less and draws more current than it would if its resistance remained the same at lower brightness.

If you want to control the power output accurately then you will have to measure the true rms power by taking many instantaneous current and voltage readings and multiplying them, then sum and average the results over a full mains cycle. Any other method will only be an approximation that could be quite inaccurate at low phase angles.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.