Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Flux walking detection

Status
Not open for further replies.

kathmandu

Full Member level 5
Joined
Dec 7, 2015
Messages
298
Helped
7
Reputation
14
Reaction score
7
Trophy points
18
Activity points
3,146
Hello,

What could be a simple method to detect flux imbalance (DC build-up)?

I need to measure it for a low-frequency transfomer connected to a Mosfet full-bridge (driven by an unipolar SPWM signal).

It's a high power sine wave inverter and I've noticed a strange behaviour (even with light resistive load).

The transformer is making an uniform growing (buzzing) noise then it suddenly stops and the whole process it's restarting over and over again (with a period of ~ 3 seconds).

I can't put a capacitor in series with the transformer as there are high currents involved (> 100 A).

I've tried to generate a perfectly symetrical PWM signal and to use identical gate drivers/Mosfets for all the bridge switches but still I have this issue.

I only have a voltage-control loop, to change the SPWM duty cycle factor according to the load current.

To avoid this flux walking, I was checking/changing the PWM duty-cycle at the same point (after the same zero-crossing) to always have full waves (same number of positive and negative half waves) driven by an identical PWM signal.

I wonder if I could detect this flux imbalance (DC build-up) by doing some measurements of the transformer primary voltage (full-bridge switching nodes).

Maybe I could rectify & filter both node signals then (by using a comparator) I could check for any DC level differences?

I can use such a signal to tell the MCU to attenuate the PWM signal for a specific half wave only.

Also, I wonder what is "reseting" the flux imbalance for now, as I don't have any current-control loop or something.

Thanks in advance for any clue.


PS: There are some periods of time when the transformer is not making any noise though. Maybe it's something software related (PWM generation) but still I want to be able to check that flux imbalance with an external circuit.
 
Last edited:

Hi,

A reliable way is to measure DC current in the primary side.

Your "outputvoltage control loop" may make things worse. Run this loop only once per full wave.
I assume remanence generates the problem with your repeated starts.

Klaus
 
Hi, Klaus!

I run the voltage control check at the same point (peak voltage of the positive half wave - I wrote "zero crossing" by mistake in my first post) hence I should have pairs of positive and negative half waves driven by the same PWM signal.

So, what's a convenient method to measure the DC current in the primary side?
 

Sounds like you need a Hall effect sensor in the primary to detect dc imbalance.
Then as you suggest :
I can use such a signal to tell the MCU to attenuate the PWM signal for a specific half wave only.
 
From a circuit design and efficiency viewpoint, hall current transducer is the most convenient measurement method. Current measurement is also suggested as overload and short circuit protection means.

Removal of residual DC output can be also achieved with a low-pass filtered respectively integrated differential voltage measurement.
 
Thank you both for the quick response!

Sounds like you need a Hall effect sensor in the primary to detect dc imbalance.

Do I need to make a wire loop around the Hall sensor using the primary conductor?

From a circuit design and efficiency viewpoint, hall current transducer is the most convenient measurement method. Current measurement is also suggested as overload and short circuit protection means.

Actually, I have a (Hall effect) current transducer on the DC-link. May I use it, by averaging the readings for every half wave then check for any current imbalance?

Anyway, I still prefer a separate circuit for this matter.

Removal of residual DC output can be also achieved with a low-pass filtered respectively integrated differential voltage measurement.

Could you please elaborate this method? Is it like I have described it in my first post? Do I have to filter the voltage of every switching node then run a differential measurement (or maybe a simple window comparator would be enough)?
 

Do I need to make a wire loop around the Hall sensor using the primary conductor?
I presume, Warpspeed was thinking of a hall effect sensor with inbuilt primary conductor, e.g. an Allegro sensor.

Due to the buck inverter operation, DC bus and output current are not the same. If you presume that you can estimate the DC output current based on DC bus current, I would ask in return why you don't manage to make a DC free output pwm? Without further guessing about the reason, we can possibly agree that there's a difference between ideal and real circuit behavior. Respectively you want to measure the real output current.

DC voltage across the transformer will be relative small. You know the transformer parameters and can calculate the maximum acceptable value to avoid core saturation. You surely need a precision differential amplifier with sufficient common mode rejection and low offset.
 
What about rectifying the voltage across transformer's primary?

Having a DC bias, the rectified half waves should look like that:

dc-bias-rectified.png

I could simply measure (and compare) the peak value of each (rectified) half wave then I could generate a corresponding error signal to the MCU.

Looks like a feasible solution?
 

Unrealistic parameters. The DC bias will be probably less than 1 percent of the AC magnitude.
 

Hi,

Why no low pass filter?

Klaus
 

Unrealistic parameters. The DC bias will be probably less than 1 percent of the AC magnitude.

Of course, it was for illustration purpose only. Btw, I didn't imagine that less than 1% of DC bias could be so "dangerous"?

@Klaus:

What do you mean by "no low pass filter"? To read the voltage across primary? Being pulse modulated, I should use a low pass filter, indeed.

- - - Updated - - -

What if I get two voltages: first one, by rectifying the DC biased voltage and the second one, by rectifying a pure (reference) AC voltage (by filtering the DC bias with a series capacitor)?

Then I could substract this two RMS (average) voltages to get an error signal.

- - - Updated - - -

(sounds too complicated, I better check the peak values)

There's no simple method to check the DC bias of an AC voltage?
 

Hi,

There's no simple method to check the DC bias of an AC voltage?
Use a lowpassfilter with cutoff frequency (much) lower than the AC signal ....and it's output IS the DC signal.

Finished.

I don't see why you talk about rectifying, rms, subtract....this all is not necessary. Just use an LPF.

Klaus
 
I was thinking of a fast reacting circuit.. but I guess your solution is pure genius!

Maybe I can put an optocoupler right across that low pass filter so I can get a convenient (isolated) error indicator.

If the (optocoupler) LED forward voltage it's too much (that means a DC bias of at least 1.5V) then I could use an opamp instead.

One again, it's a very simple & clever solution. Thanks alot!
 

Hi,

I was thinking of a fast reacting circuit..
You may optimize reaction time by selecting a relatively high cutoff frequency and using a higher order filter.

But even faster is to use an ADC and perform a fullwave synchronized calculation.
You don't need a high sampling rate - maybe 16 x fullwave frequency. Using nterrupt technique this is very precise, reliable and needs only a small part of orocessing power....enough free for other tasks.

I prefer an analog measurement against the digital optocoupler solution.

Klaus
 

You may optimize reaction time by selecting a relatively high cutoff frequency and using a higher order filter.

The AC frequency is 50Hz (chopped at 16kHz). What cutoff frequency do you suggest?

Using nterrupt technique this is very precise, reliable and needs only a small part of orocessing power....enough free for other tasks.

I already have the inverter's MCU sampling the output voltage and DC-link current (and it has some spare ADC inputs) but I need an _isolated_ voltage for that.

That means I'll have to use a separate uC (ADC) to sample that DC biased voltage.

I guess I'll try an analog solution first (opamp/optocoupler) to generate an error signal for the inverter's MCU.
 

Hi,

What reaction speed do you expect?
And what 50Hz attenuation?

Klaus
 

What's the peak flux density in the core?
What frequency are you running it at?
Can the core reset between cycles?
What topology are you using?
Have you connected a storage scope on the PWM drive to confirm that there aren't any missing pulses?
 

What's the peak flux density in the core?
What frequency are you running it at?
Can the core reset between cycles?
What topology are you using?
Have you connected a storage scope on the PWM drive to confirm that there aren't any missing pulses?
Part of your questions has been answered along the thread.
Full bridge directly driving a transformer, 16 kHz unipolar pwm, 50 Hz sine generation.

I see two possible reasons for getting transformer saturation:
- a high permeable transformer can be saturated by a relative small DC component, caused by circuit or pwm asymmetries
In this case, a DC measurement and pwm correction means could be helpful. "Reset" of flux asymmetries also happens during bridge dead-time. But you want to keep dead-time low to avoid respective waveform distortions with reactive load.

In a state-of-the-art H-bridge design, asymmetries are low enough to avoid saturation also without a dedicated DC current/voltage correction controller.
- more likely, core saturation is brought up by problems in the pwm controller. In this case, a DC sense circuit won't help either. Instead need to fix the pwm control algorithm.
 
If the transformer is resetting back into the bus via the anti-parallel MOSFET diodes then you cannot have a MOSFET duty cycle greater than 50% or flux walking will occur. The volt-second integral over one cycle must be zero. If you can somehow steer the reset current into a higher voltage bus (regen snubber or similar) you can have the reset time shorter than the on-time.
Another option may be to gap the core slightly but you'll have to steer the stored energy back to the bus every cycle.
Dick
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top