Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Wideband current measuremt

  1. Jan 7, 2010 #1
    Hello All,

    I have yet another puzzling question for you all. As I am working on the design for this DDS sine wave generator, I am contemplating a means of accurately measuring the amount of current being drawn from the output into the load. For my application, I am mainly going to be dealing with inductive loads so I don't simply want to put a 50Ohm resistor or something on the output, but rather I want to drive a coil directly with the possibility of regulating the current output that comes out. At the moment, I have digital control over the amplitude and offset of the sine wave, which has an max amplitude of 20V pk/pk, with a max short circuit current of 100mA (possably up to 250MmA with a change of op-amp ICs).

    My thinking is that if I could somehow accurately measure the magnitude of the current flowing through the load, that I could digitally adjust the amplitude to regulate the current to some desired value. But the challenge here is that the output sine wave has a frequency range of 0.2Hz up to 20MHz! I haven't done much research in depth in current measurement techniques but some that I am familliar with are magnetic hall effect sensors, current shunt measurements, and RMS to DC converter ICs. Each of these solutions seems to have it's pros and cons but I'm wondering if there is a technique which would work across such a large bandwidth?

    I have been pondering this problem a bit and so far, my best thought is to use a shunt resistor and op-amp setup to measure the current magnitude and then send it through an adjustable low-pass filter to get a DC value that can be read by the uC ADC. The only problem is that I might end up with a ridiculous filter circuit arrangement with 10 or more switched RC combinations just to get reasonable measurements. Does anyone know of any better (or simpler) way to do something like this?

    Thank you,
    Jason O
  2. jcsd
  3. Jan 7, 2010 #2
    Why not insert a low value resistor in your output, amplify the voltage drop across it and use the measurement of that voltage to control the current?
  4. Jan 7, 2010 #3


    User Avatar
    Science Advisor
    Gold Member

    Hi Jdo300,

    My first thought was to use a current transformer to make your measurement but didn't know if it would work all the way down to 0.2Hz. But I did a little google search and found a company that makes CTs they clam are

    From their data it appears that to cover your frequency range, you might need to use more than one.
    Last edited by a moderator: Apr 24, 2017
  5. Jan 7, 2010 #4
    Hi All,

    Thanks for your input. That current transformer looks interesting, though I just about fell out of my chair after seeing the price tag on it :bugeye:


    I think your idea is very interesting, especially if I could find a way to incorporate it into the analog feedback loop of the op-amp circuit. Then I wouldn't have to digitally monitor it at all. Maybe using a digital pot to set the regulation limit or something and then just letting the op-amps do their thing from there. Will give this more thought.

    After thinking about this some more though, I realize that if I do want to monitor the current consumption, that I don't actually need to measure the AC side at all! Since the op-amps have to be powered from the DC supply rail, I could easily just monitor the DC current draw on the positive and negative rails, subtract out the no-load power consumption of the ICs and calculate the current based on the difference there. Not sure how well this would work but it may be much simpler than the alternative I was thinking of earlier...

    - Jason O
  6. Jan 7, 2010 #5
    In general, a transformer is used to tap the current due its flat frequency response up to a limit, whereas a resistor can behave weirdly at different frequencies. Here is a list of toroids and their frequency responses:


    some fall in different parts of you frequency range, and some don't.

    The other transformer in the link by dlgoff is very nice, but expensive because the company went through some hoops to make such broadband core. It's not easy I suppose, otherwise wideband cores such as those would be common. But what is done in many sophisticated signal generators is alot of switching between different circuit topologies to achieve a higher frequency range.

    What could be done in your case is to pass a current through a resistor and measure voltage drop up to 100 KHz, and a toroid type 1:1 transformer for frequencies greater than 100 KHz to tap the current. This could be automatically switched by the CPU. Also, many signal generators have an AGC feedback circuit to keep the power output constant through out the frequency range. This is done by monitoring power output, comparing it with a reference, and the error attenuates the output signal with a pin type modulator in a feedback loop.
  7. Jan 7, 2010 #6
    You're on the right track here. In fact that is the way it is often done with low power drives such as yours. I think current transformers are more often used on higher powered drives. If you have to isolate your current sensor from your control circuit, sometimes linear opto-isolators are used.
  8. Jan 7, 2010 #7
    Hi Everyone,


    Thank you for the suggestions for the current transformers, however, I'm hoping to find a solution where that won't need the transformer action. There is one other caviot to this too, that being that the sine wave can potentially be DC offset from the zero line, which would skew the reading. At this point, I'm thinking that I will go with the shunt measurement technique but now I'm trying to decide weather it is better to just measure the DC current on the supply and digitally correct the output current to keep it in regulation, or to try the analog feedback loop route.


    I like the idea you proposed. However, I'm not sure how to actually construct the feedback loop to get it to work. Below I have attached the part of my simulation showing the op-amp output stage. The DDS differential current output goes through a reconstruction filter (not shown) and then into the differential inputs of the op-amp which, for the most part, ensures that the output sine wave will be centered about ground until I add the offset myself. The output of the first amplifier is nominally 10V pl/pk. This is fed through an attenuator pot to adjust the amplitude and then that goes into the second amplifier which amplifies the signal to 20V pk/pk along with the offset adjustment. I also have a third manual pot there to tweak the gain on it if the tolerances are off just a hare.

    I'm assuming that I would put my shunt resistor on the output of the second op-amp and somehow loop that back into the circuit to control the gain but what is the best way to go about this? For now we can assume that isolation is not necessary (for simplicity sake).

    Jason O

    Attached Files:

  9. Jan 8, 2010 #8
    Not as bad a problem as you think.

    Start with a DC to LF Hall device, such as a LEM LA 25-np sp13. This device is a 20:1 divider, so you'll expect to get 1 ma for every 20 ma you put in.

    Next, you need an HF current transformer that has the same ratio. It's important to keep your ratio fairly low, or the windings in the HF transformer will ring and you may not make it to 20 MHz.

    If you're a diyer, you'll want to make your HF transformer from a high perm, thin sheet, ribbon material with a plastic case. A fairly good core would be a Metglas MP1906P4AF, though you could use Ultraperm or Magneperm materials too.

    Wrap you windings evenly spaced about the core, and use a light enough magnet wire that the windings are spaced.

    The output of the LEM sensor is a DC current, and it is used for two reasons:

    1. It gives low frequency response
    2. It keeps your HF transformer from being biased by LF currents.

    You're gonna want to filter the signal from the LEM with an RC before running the current through the 20 turn winding of the HF transformer. The RC needs to crossover before you get near the -3 dB limit of the LEM (~150kHz). Also, the RC needs to by at a high enough frequency to stay clear HF transformer's roll off, which is about 700Hz for a
    50 ohm load.

    10 kHz appears to be a good crossover frequency. It's 1/15 the LEM's roll off, and 14 x the HF transformer's frequency.

    I've attached the rough schematic. Of course, you'll need power supplies for the LEM, and you'll need to be sure of your phasing.

    If you're not quite up to all of this, you can purchase an old tektronix current probe off ebay. That will get you from DC to 30-50MHz without the hassle.

    Best Regards,


    Attached Files:

Share this great discussion with others via Reddit, Google+, Twitter, or Facebook