emonTx precision

 

Hi All,
 
I've seen there is a test by Trystan with a maximum of 14% error (although most measures had much lower errors) I'd like to know which are the min amd max Wattages detectable by emonTx. Will emonTX detect charges down to a few Watts?
 
Thanks,
Jordi.
Robert Wall's picture

Re: emonTx precision

Wattage means nothing without knowing the system voltage. The standard current transformer is rated at 100 A maximum. The minimum current that can be measured with any degree of certainty is around 1% of this. Below that, even theoretical errors (leaving out errors created by component tolerances and factors like the accuracy of the analog to digital converter) start to increase significantly. Theory alone suggests the error below about 0.5% of maximum current (i.e. 0.5 A) varies wildly and can exceed 50% of the reading.

"Will emonTX detect charges [ ? ] down to a few Watts?"

The short answer is no, at least not with the standard 100 A current transformer.

At the current levels you envisage, in effect you have a 1-bit, 2-bit or 3-bit analogue to digital conversion. I intend to write a full explanation of the behaviour of the analog to digital converter with very low level signals. When I've done that, all should become clear. (Factors that influence the reading at such low levels include electrical noise, where the zero line sits in relation to the steps in the ADC converter law, how this relates to the amplitude of the sine wave and the calculation of the rms value of that sine wave).

prensel's picture

Re: emonTx precision

I did 'asked' 'this in another thread but when looping the live wire three or four times through the CT sensor wouldnt that make it more responsive to lower Amps ?

Robert Wall's picture

Re: emonTx precision

jordi's picture

Re: emonTx precision

 

Hi
 
Thanks for you answers.
 
I am based in Europe and thus I have a 1 phase installation at 230V. My main line is 40A and most individual circuits are either 10A or 16A. There are a couple of 25A (kitchen & owen and an Altherma heat pump). I have 18 individual circuits (I know... many circuits).
 
My goal is to be able not only to monitor big loads like the heat pump and other appliances, but also to monitor those small constant loads like wireless phones, computers, TVs, etc. I'd like to monitor the main line and also several of the individual circuits in order to detect this small standby suckers. In some cases I could use a killawatt
 
As far as I understand there are two complementary ways of increasing accuracy for low readings:
1) Adjusting the resistor for a lower Amperage and posibly using a lower amperage CT (like the 30A)
2) Using a better analog to digital converter (is that possible?) I understand that the converter used by the emonTX is a 10 bit 0-5V. 
 
Number 1 is the easiest. Adjusting the resistor for a 20A reading might increase the resolution 5 times. Am I right? What happens if the emonTx (or any Arduino) receives more than 5V?
 
Since I plan to monitor several circuits I am also considering using some other hardware with more analog inputs like the beaglebone.
 
Jordi.
Robert Wall's picture

Re: emonTx precision

If you are thinking of increasing the value of the burden resistor, there is a lot of information that should help you in the report http://openenergymonitor.org/emon/buildingblocks/report-yhdc-sct-013-000... As you will see from the report, it is generally not a good idea to increase the value of the burden resistor too much, as distortions creep in.

Provided the primary wire size is small enough, as mentioned earlier in the thread you could pass the wire several times through the core, then adjust the software calibration constant to suit.

Or as you say you could do both of these things.

"What happens if the emonTx (or any Arduino) receives more than 5V?"

Not necessarily 5 V ! ! !  The input must stay between the supply rails. You need to read the Atmel data sheet. The analog input is connected to the supply rails by internal diodes, while these clamp the voltage to -0.7 V and (Vss + 0.7 V), they have limited current capability, and if you exceed those limits you probably have a dead Arduino. The best way of limiting the current is to include a series resistor between the CT and the input pin (note below). The current drawn by the analog input pin is so low that any resistor large enough to limit the current will still have negligible effect on the accuracy. When calculating the resistor value, bear in mind the CT can develop a substantial voltage when it saturates in fault conditions - in the extreme, that's 22 V, limited by the internal zener diodes. You could of course put your own zener diodes (say 6V8) in parallel with the burden resistor to limit the voltage even further (see the report for wiring the zeners).

"Using a better analog to digital converter (is that possible?)"

It should be possible. I believe Marc_Eberhard was considering using a MCP3909, but I've no idea whether he has progressed this. In that case, you'd use the Arduino to command the A/D conversions, do the maths, and send the answer by wireless.

"I understand that the converter used by the emonTX is a 10 bit 0-5V."

Almost right. It is 10-bit (the MCP3909 is 16-bit) but it runs off 3.3 V in the standard emonTx.

"Since I plan to monitor several circuits I am also considering using some other hardware with more analog inputs like the beaglebone."

Or several MCP3909's ? A quick calculation shows that this with the standard 100 A CT should resolve 3 W with moderate accuracy. However, electrical noise might be a problem. Get-out clause: I have not engineered that suggestion in any detail - you must do the engineering on it.

[NOTE] The two voltage divider resistors that bias the inputs to Vss / 2 provide that function in the standard emonTx circuit - but you must not increase the bypass capacitor else that will pass enough current to blow the protection diodes.

jordi's picture

Re: emonTx precision

Hi Robert,

Thanks for your suggestion. MCP3909 looks very promising. However I don't think I have the necessary knowledge to attempt such type of electronic circuits by myself. I am a software engineer with some experience with small hardware projects but this is too difficult.

I understand I'd like something similar to http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en544926 but with more circuits.

BTW, in the former example they measure real power and power factor, but, as I understand, without measuring current voltage. How is this achieved?

Jordi

Robert Wall's picture

Re: emonTx precision

"BTW, in the former example they measure real power and power factor, but, as I understand, without measuring current voltage."

In Microchip's Application Note for the MCP3909 - AN1291 ?

They cannot and they do not! The MCP3909 has two differential inputs. In the circuit diagram (Figure 2), CH0 measures current via a shunt and CH1 measures line voltage via a divider network.

As you say you are a software person and not experienced in hardware, and especially not experienced with working on live high voltages - DO NOT USE THIS CIRCUIT ARRANGEMENT !  Stay with the isolated, low voltage arrangement that the emonTx uses, that is a current transformer and step-down voltage transformer.

 

 

Pcunha's picture

Re: emonTx precision

The method used in the microchip´s solution is to use an amplifier to boost the signal when the power is too weak. in a dynamic form.

I´ve try similar solution with arduino, but, lowering the acd voltage reference and derived voltage bias to the CT censor. that way increasing the resolution, but...

My idea has been killed by the noise. when the vref voltage was lowered to about 1v, the background noise was multiplied by somthing about 20x... If anyone figures how to reduce that noise, i think voltage dividers can be used drived by arduino pins to drop the Vref and Vbias to lower voltages, increasing resolution.

Robert Wall's picture

Re: emonTx precision

I would be fairly certain that Microchip's solution does work. They introduce a gain of 70 x, and I'd suggest that they paid great attention to the printed circuit layout, and earthing and shielding. They mention this several times in the AN, and stress its importance.

Using an external amplifier means that the very low level signals can be physically moved further away from the digital circuits, which must be a good thing.

[Edit:]

I have a gut feeling that scaling the ADC range is just inherently wrong, and you only stand to gain 3 x anyway. Atmel don't suggest it, and I'd take that as a hint that it is not a good idea.

If you do the maths on the ADC converter when the input signal amplitude is just a few LSBs, you'll find that below 1% full scale, the errors can be well above 10% (of actual reading). So you do need Atmel's 60 - 70 x to accurately read down to single-figure Watts.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.