Electronics > Projects, Designs, and Technical Stuff

Maintaining phase accuracy for kHz power measurements

<< < (3/5) > >>

splin:

--- Quote from: KaneTW on January 11, 2020, 07:21:29 am ---Approx. 60W per channel, design load is a 20-25 Ohm transducer. I went with a CT over a shunt+difference amplifier for now but either option is acceptable. I'm aiming for a 1 degree phase accuracy but if that turns out to be unrealistic I'll have to re-evaluate.

--- End quote ---

If you don't need the isolation provided by a current transformer, and at the relatively low currents involved I'd use a current shunt - much cheaper and simpler and the shunt doesn't need calibrating if you chose the right one. For example, Susumo make some low inductance SMD shunts at 1nH compared to the 3 to 5nH of typical parts:

https://www.newark.com/pdfs/techarticles/susumu/LowESLCurrentSensingChipResistor.pdf

Using a 200milliohm shunt with 1nH ESL will give a phase shift of only 0.18 degrees at 100kHz. Increasing the shunt resistance decreases the phase shift at the expense of higher dissipation in the shunt (approx 600mW for 200mohms).

It's not clear to me in your OP exactly what you need to measure. I presume you are generating a sine wave between 40kHz and 100kHz to drive a transducer, with some (unwanted) harmonics after the 11th, >= 20dBc down? I assume you don't need to measure the harmonics of the drive voltage as the filter would need to be heroic to allow (say) a 1.2MHz 12th harmonic to be within the passband but provide significant attenuation by 1.5MHz!  :scared:

But what about the current waveform? If the transducer has any non-linearity the current waveform will have additional  harmonics along with intermodulation products of the drive signal and its harmonics which could be significant given the latter are only 20dB down. Does this mean the current measurement has to have higher bandwidth than 100kHz? If so the phase shift becomes more of a problem, but probably still easily manageable by using a higher resistance shunt and/or paralleled to redfuce ESL.

As to the original question about calibration; the shunt shoudn't need calibration as stated earlier. The anti-alias filter will introduce several degrees of phase shift at 100kHz - but so long as the voltage and current measuring channels are using the same, reasonably close tolerance filter components the phase difference between the channels needn't exceed 0.5 degrees or so at most - simulate to confirm. Thus you can probably get away without having to calibrate the phase response.

You may need to measure both filters' amplitude response(s) to correct for droop in the passband and to ensure there are no unexpected anomolies.


[EDIT] Alternatively instead of using a C2000, you could buy an LPC-Link2 board for around $24:

https://www.nxp.com/design/microcontrollers-developer-resources/lpc-microcontroller-utilities/lpc-link2:OM13054

It has an LPC4370 microcontrtoiller with a 12 bit ADC. It has a Cortex M4 and two M0 cores all running at 204MHz. Add anti-alias filters and a 2 channel MUX. The anti-alias filters can be much simpler (first or second order RC). Better still, by sampling each channel at 30 or 40MSPS you can oversample (averaging)  to achieve better SNR than the C2000 ADC's.

There is free source code around for oscilloscopes using the LPC4370 including:

https://github.com/robroyx3m/High_speed_oscilloscope_using_an_NXP_LPC437x

Embedd Artists (who originally made the LPC-Link2 board) used to sell a daughter board called LabTool converting it into a 2 channel scope and logic analyser for which the schematics, firmware and PC code are available. 

KaneTW:
I'm generating a sine wave using selective harmonic elimination PWM, which switches at some multiple of the required frequency (depending on how many harmonics you need eliminated). It's then passed through a LC filter to get rid of the rest, and into an output transformer.

The C2000 is needed due to its HRPWM capability. I've not found an alternate part that can do its job (unless I roll the implementation myself in a FPGA). HRPWM seems to just be regular PWM with a tapped delay line, but the fine edge positioning is fairly important.

I sort of need the isolation (one side of the output has to be at protective ground due to the transducer design), but I can work around that by measuring before the output transformer.

Just the fundamental needs to be measured. The harmonics from the full-bridge are attenuated sufficiently with the LC filter that they're barely visible in the time domain on the voltage waveform (don't have a FFT at hand).

The transducer is driven at its resonant frequency, and is pretty much a series LCR circuit in parallel with a small shunt capacitance (couple of nf) at that frequency, so the current waveform should be pretty harmonic-free.
Eventually this will run in a multi-transducer setup, and I'm not sure how much pickup there will be from the other transducers. But that's solvable in software.

Simulations give me an about 1-degree phase shift baseline plus some unknown contribution from the component variances. I actually didn't expect 1% C0Gs to be this cheap, so that pushes phase error due to component tolerance well within error bounds (and I can fiddle a bit to match the phase response of both voltage and current).

I have some CT samples with a higher turn ratio arriving soon. Going to see how well they perform compared to the 1:30 I have now.

The oversampling is a nice idea, but you lose simultaneous sampling and the ADC driver requirements are steeper. I'll take a look --- I've considered using the ADAR7251 which is a similar idea (but $9/1k and kind of overkill). Would allow me to drop the two ADA4891-4s and a bunch of passives, though.

Ultimately the idea is to have a main controller board plus a variable amount (1-5) of dual output channel boards, to drive a total of 2-10 transducers. I might adjust the architecture sometimes; focusing on the driver board side right now.
I basically want to drive each of the ultrasonic transducers at their resonant frequency regardless of variations. Current systems drive them at one frequency for the entire set. Innate bonus is being able to drive them at wildly different frequencies.

ogden:

--- Quote from: splin on January 14, 2020, 12:07:42 am ---Using a 200milliohm shunt with 1nH ESL will give a phase shift of only 0.18 degrees at 100kHz.

--- End quote ---
Any trace longer than few mm will have bigger than 1nH inductance. I do not see how incredibly low inductance shunt helps here to achieve "doesn't need calibrating". Maybe I am missing something - who knows

trobbins:
Some LEM current transducer modules go beyond 100kHz.  Eg. the LTS-6P is 1dB down at 200kHz.  You may also still find a TEK A6302 and AM503 amp - that has a constant 25ns delay I recall.

dmendesf:
There are DSPics with high resolution PWMs now. There's also the STM32F334 (not really sure if it has it or just high resolution timers). Not saying you to change, just giving some cheaper data points for the future.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

There was an error while thanking
Thanking...
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod