OpenEnergyMonitor Community

Interfacing the CT CR8450 with Arduino

Good day.

I am interfacing the CT CR8450 with Arduino and am using EmonLib in the code for interfacing it but at the serial monitor there is a lot of difference in the clamp meter and the sensor value. I have tried the many other codes for this but the issue is same. Can you helps guide me in the code how I can get accurate values from the CT. Thanks

Welcome, Mehmood, to OEM.

I’ve moved your post to a new topic, because it has nothing to do with the ESP32.


Your c.t. if it is the CR8450-1000, is nominally 100 A : 100 mA, have you calculated the correct burden resistor for the voltage that the ADC in your Arduino needs? That will be 1.6 V rms if you have a 5 V Arduino, or 1.1 V rms if your Arduino runs on 3.3 V, at the maximum current that you want to measure. But you must not make the burden resistor too high in value, because accuracy is lost.

When you have done that, the calibration constant you put into emonLib is the current that would give you 1 V rms across your burden resistor.

You should then read the correct current.

Thanks for your reply
I have calculated the 33ohm burden resistor and and two 10k resistor for voltage divider and one 10uF capacitor.
And when I use the emonlib code there is huge difference between clamp meter and serial monitor.
Please guide so I can make it running.

So, the maximum current that you want to measure is 48.5 A. Correct?

Now do the maths as I wrote above to calculate your current calibration factor - the one you put in here:

  emon1.current(1, 111.1);             // Current: input pin, calibration.

I want to measure 100A.

But with the burden resistor you have calculated, you can only measure up to 48.5 A. More than that and you will not measure accurately, and you might damage your Arduino.

The maximum voltage input to your Arduino is 1.6 V rms. Correct?

Your burden resistor is 33 Ω, therefore the current that flows when there is 1.6 V measured across it is (Ohm’s Law) I = V ÷ R = 1.6 ÷ 33 = 0.04848 A.

The c.t’s primary current that will give a secondary current of 48.48 mA is 48.48 A (from the c.t. data sheet: the current ratio is stated as 1000:1, or more properly 100 A : 100 mA as I’ve already written).

If you want to measure 100 A, then you must do this calculation in reverse to give you a new value for the burden resistor.

OK I understand your point. But currently at this time am only measuring current from 1 A to 5 A but this is not accurate according to clamp meter. And secondly can you tell me what should be the value of the burden resistor if I want to measure the 100A.

You cannot expect good accuracy between 1 - 5 A even with the maximum current set to half of what you want.

Have you set the correct calibration constant for the burden and c.t. that you have? Indeed, did you read what I wrote about how to calculate it?

It is the same maths, you just start with different voltage.