Jump to content


Photo

Current Transformers and Hall-Effect Sensors


  • Please log in to reply
7 replies to this topic

#1 Kelly

Kelly
  • Members
  • 4 posts

Posted 21 December 2008 - 12:02 AM

Okay, so I've tried to find a cheap way to monitor the current of a 120V AC circuit. First, the cheapest way I thought was to use a current transformer such as a CR Magnetics 8410. Then I realized that not only do I have to convert the AC output of the CT by using a rectifier circuit, there is a certain "turn-on current" for the sensor because of the rectifier diodes. Sure you can get around that as well with some more circuitry, but the "simple" circuit I had in mind was getting more complex than I cared for. So my next idea is using a hall-effect sensor like the Honeywell CSLA2CD. They are about double in price, but produce a linear DC voltage output relative to the input AC current. I wanted to avoid these since they are about twice what the CR8410s cost and require a power supply, but require a far simpler design on my part. I'd like to measure between 0 and 30 Amps (on the input side of the sensor) and use a U3 on the output side to get some decent resolution. Has anyone here tried something like this?

#2 LabJack Support

LabJack Support
  • Admin
  • 8386 posts

Posted 22 December 2008 - 02:13 PM

Digikey has Hall Effect sensors in the $17-$20 range, but then they have a current transformer for $3 (237-1103), so the c/t does seem much cheaper while still providing isolation. I am not a c/t expert, but I suspect that due to saturation requirements they will always have a minimum current level. First suggestion is to not bother rectifying the output. Just make sure the negative voltage does not exceed -6 volts. Then in software you just get half the waveform, but that should be enough to work with. A problem with that, though, is that although the U3 inputs can handle at least -6 volts, having that overvoltage present might affect other readings. Two ideas: 1) Choose your burden resistor so the max signal is +/-0.3 volts. You can then use a differential input on the U3 and measure the whole signal. Downside is you are only using 0.6 of the 4.8 volt range. 2) Chose your burden resistor so the max signal is say +/-1.5 volts. Then, rather than connecting the bottom of the burden resistor to GND you connect it to a DAC which is outputting 1.5 volts. Now your signal will have a common-mode voltage compared to ground of 0-3.0 volts, and a differential measurement will return +/-1.5 volts.

#3 Kelly

Kelly
  • Members
  • 4 posts

Posted 22 December 2008 - 07:15 PM

Thanks for the suggestions! I'm not familiar with the software that comes with the U3, is it easy to capture waveforms and get max or RMS values?

#4 AzeoTech

AzeoTech
  • Admin
  • 321 posts

Posted 23 December 2008 - 11:58 AM

Sure, first you need a place to put the captured data, usually a global variable: global captureddata then you need to determine when you want to capture the data. The easiest way is from a button, but you could have automatic capture based on inputs by using a channel event. The concepts are similar. You also need to decide how much data to capture. Lets say you want to capture 0.5 seconds worth of data on button press: 1) create a button, go to the Action tab and select Quick Sequence 2) put this script in: captureddata = mychan[systime(),systime()-0.5] Now, whenever you click the button, the captureddata variable will get the last 0.5 seconds of data. This is done by subsetting by time instead of index. If you wanted the last 100 data points, you'd do: captureddata = mychan[0,99] Once you have the data captured, you can plot that variable on a trend graph, or do calcs, for example, the max: max(captureddata) which you can display in a variable value component. I've attached a sample to get you started.

Attached Files


Main Web: www.azeotech.com
Express Web: www.daqexpress.com

#5 Kelly

Kelly
  • Members
  • 4 posts

Posted 23 December 2008 - 06:46 PM

Thanks, that sounds great! I just ordered a U3 and look forward to trying this out.

#6 LabJack Support

LabJack Support
  • Admin
  • 8386 posts

Posted 24 December 2008 - 04:39 PM

Note that you probably need to use stream mode to collect data fast enough to acquire the 60 Hz waveforms, so you probably want to start with a stream example and then add the stuff suggested by AzeoTech above. See Section 9.2 of the DAQFactory - LabJack Application Guide.

#7 AzeoTech

AzeoTech
  • Admin
  • 321 posts

Posted 24 December 2008 - 05:50 PM

LabJack is probably right, but note that the techniques a talked about work for both stream and regular polled mode. The sample I attached is polled, but it really doesn't matter. Once the data is in the channel, its just data and the capture and calcs don't need to know whether you streamed or polled or just made up the data.
Main Web: www.azeotech.com
Express Web: www.daqexpress.com

#8 Kelly

Kelly
  • Members
  • 4 posts

Posted 25 December 2008 - 12:22 AM

Thanks. I'll let you know how this turns out.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users