### firmware for SCT-013-030

I am a fans of openenergymonitor from china.  The current transformer  i bought was SCT-013-030, which input is 0-30A and 1V for output.

i am now confuse how to write the code for this CT, because i can not use the library :(

Anybody can help me how to write the code for test?

### Re: firmware for SCT-013-030

Yes, you can use the library. The library works for any current transformer.

(1) You have a burden resistor inside the current transformer, so you must not use another one outside on the emonTx or on your plugboard or stripboard - the burden resistor is approximately 15 R or 18 R on the diagrams.

(2) You must change the current calibration in your sketch. Change   ct1.currentTX(1, 111.1);  to   ct1.currentTX(1, 30);

### Re: firmware for SCT-013-030

Thank you very much, Robert Wall. I have finished assembly and test with the code as your guide, it works well.

### Re: firmware for SCT-013-030

Hi, I'm with a similar problem, but still didn't manage to handle and fully understand what is going on.

According to SCT-013-030 datasheet, it has:

- RMS Current: 30 A

- Internal burden resistor:  62 R (ohms),

- No. of Turns: 1800

Then, all my calculations results on this:

Primary Peak Current = RMS Current x sort(2) = 30A x 1.414 = 42.42A

Secondary Peak Crurrent = Primary Peak Current / no. of turns = 42.42A / 1800 = 0.0235666A

Ideal burden resistance = (AREF/2) / Secondary peak-current = 2.5 V / 0.0235666A = 106.08 Ω

That's where I got confuse, the calculations results in an ideal burden resistance of 106.08 R. But the internal one is 62 R.

How should I proceed from here?

### Re: firmware for SCT-013-030

Because the 30 A c.t has an internal burden resistor, you don't need one on the emonTx/Arduino, so you don't need to calculate its value. From there on in, although your sums are correct, they are the wrong sums! You are calculating the burden resistance for 1.76 V ( = the rms value equivalent to 2.5 V peak) output, not for 1 V.

You must forget all about turns ratio, secondary current and burden resistor and short-cut the calculations because you know the c.t output is 1 V per 30 A (rms, peak or whatever, the ratio is the same), and it is a voltage that the analogue input uses.

(If you think about it, calculating turns ratio and the burden resistor is all about converting the primary current into a voltage.)

All you need to know is the calibration coefficient to use in your sketch is 30. To see where it comes from, work through CT and AC power adaptor installation and calibration theory but be warned, it gets complicated.

You can adjust the calibration coefficient from that value as necessary to give accurate readings.

If you are worried, using the lower burden resistance (62 Ω) means that you are only using 1/1.76 = 57% of the available range of your Arduino. The sketch will still show the correct current though.

### Re: firmware for SCT-013-030

Thanks for the explanation.

### Re: firmware for SCT-013-030

Hi,

Before knowing this site i ordered 3 SCT-013-30 in the aim to try to do the same job !

Just after looking at this site i ordered a shield emonTx V2 for Arduino because ( i looked only at the picture) and i thinked that the TC preconised was the same as my previous order.

My question is :

Can i connect the TC to the shield without disconnecting one of the burden resistors ?

If i don't remove one of the two burden resistors the result is 1/Rburden shield + 1/Rburden tc = 1/R total burden

Isn't it ?

Is there a calibration coefficient suitable for this case or should i remove the CMS burden resistor located on the emonTx ?

Gerard

### Re: firmware for SCT-013-030

If you leave the burden resistor on the circuit board, you will have a maximum current of 130 A. At a maximum current of 30 A, you will use only about one quarter of the range of the analogue converter. This is bad, and not what you want. Therefore you must remove the burden resistor on the circuit board and use only the one inside the current transformer.

### Re: firmware for SCT-013-030

Thank you Robert !

### Re: firmware for SCT-013-030

Hi!!

I have one question... I have the SCT-013-030

According to SCT-013-030 datasheet, it has:

- RMS Current: 30 A

- Internal burden resistor:  62 R (ohms),

The theoretical CT sensor calibration is:

CT Ratio / Burden resistance = (30A / 0.05A) / 62 Ohms = 9.67

Then.. the correct value would be 9.67, not 30 as written in the previous answers....

The Yhdc SCT-013-030 gives 1 V at a rated current of 30 A, so for this transformer you have:
current constant = 30 ÷ 1 = 30

### Re: firmware for SCT-013-030

Are you sure the ratio of the 30 A c.t. is 30 A : 50 mA? Why not read all of how the calibration coefficient is derived and read the data sheet again. Those should answer your questions. CT and AC power adaptor installation and calibration theory ?

### Re: firmware for SCT-013-030

Is it normal that the Irms have the value of 0.10 without any consumption? How I can calibrate it?

### Re: firmware for SCT-013-030

Are you using emonTx V2, V3 or Arduino?  Usually, readings like that are due to either electrical noise from the digital circuits transferring in to the analogue to digital converter, or pickup on the input. The emonTx V3 seems to have a much improved performance in this respect, because the analogue and digital parts of the PCB are carefully separated.

However, your 100 mA does seem to be towards the high end of what we normally see, so there may be more than one source of error present.

That "current" can vary from board to board and input to input. There is much written in Building Blocks about this. If it is always 100 mA, you can subtract that constant value.

### Re: firmware for SCT-013-030

Is it normal that the Irms have the value of 0.10 without any consumption?

Yes, because any small amount of noise in the signal is squared within the RMS calculation, so the sign disappears.  Everything adds, nothing subtracts.  If real power is calculated by using both voltage and current samples, the result will be much more accurate, especially at low power levels.

How I can calibrate it?

At higher currents, the noise will be less apparent.  But at small or zero currents, I don't think there's any easy way of removing this effect.

### Re: firmware for SCT-013-030

i.m using Arduino...

if I connect a light bulb 10W consumption is 5W on the monitor and if connect a vacuum of 1600W the consumption is 1300W Are these normal values?

Another question, is there any way to stabilize the consumption because in both cases always oscillating between 3W and 7W and 1100W and 1500W.

### Re: firmware for SCT-013-030

Is 1600 W the nameplate power of your vacuum? If so, it is entirely possible that the 1300 W you measured is correct. I assume you have calibrated your Arduino correctly to take account of the various tolerances that affect your measurement. If you have not, then your 1300 W is almost certainly wrong, and you need to calibrate it. There's a page in Building Blocks explaining how the component tolerances affect the accuracy, and there are separate detailed calibration instructions (also in Building Blocks), which, whilst they were written for the emonTx, you should be able to adapt to your Arduino.

The numbers should not change by that much, have you checked that the power really is constant? What happens if you substitute a different test load?

Your 30 A c.t. should have a maximum capacity of 7.2 kW, so you are expecting a lot to read 10 W accurately with a 10-bit ADC digitising the wave and then calculating the power from that.  You can read about measuring very small currents in Building Blocks too.

### Re: firmware for SCT-013-030

Is it possible to modify the SCT-013-030 to turn it into the equivalent of the SCT-013-000?  I have the EmonTX Shield SMT, would prefer not to remove the burden resistor from the shield. Ordered the SCT-013-000 from Amazon, but what was delivered was the SCT-013-030. I'm a bit impatient, would like to wire this thing up & test the Shield sooner rather than later.

I removed the transformer & its attached circuit board from the CT's housing. The board is a little more complex than I imagined. Is it okay to simply remove the board altogether & attach the output leads directly to the ends of the coil winding wires?

Thanks in advance for any suggestions.

### Re: firmware for SCT-013-030

You can probably convert it (and I've deleted your duplicate post). I believe the two are identical, except that the -000 has 22 V zener diodes across the coil whereas the -030 has a burden resistor. If you're prepared to accept possibly painful and probably damaging voltages if you unplug the CT from its on-board burden, then you can do as you suggest. Otherwise, I suggest you replace the resistor(s) with a pair of zener diodes wired in series anode to anode, any value above about 9.1 V should be enough to avoid any trace of distortion due to the zeners conducting on the waveform peaks. Alternatively, as you're using an emonTx shield, you could remove the on-board burden and move it into the CT. There's a picture here of inside the -000 http://openenergymonitor.org/emon/buildingblocks/report-yhdc-sct-013-000...

### Re: firmware for SCT-013-030

Is it possible to modify the SCT-013-030 to turn it into the equivalent of the SCT-013-000?

Yes, here's one I modified earlier (i.e. removed its internal burden resistor):

Here, it was clipped around three circuits: the blue wire was to simulate some PV, the two brown ones were loads.  This modified CT behaves just like the standard -000 unit, but doesn't have any internal protection components.

### Re: firmware for SCT-013-030

"You can probably convert it" Meaning if you snag the wire that's the end of the winding, you can take a turn off. If you catch and snap the wire that's the start of the winding, you're likely to be in deep trouble!

### Re: firmware for SCT-013-030

my 030 has a very simple circuit board.  looks to be made for multiple options.

one is the resistor.

another looks to be the diodes.

I am thinking about converting it to a 20 amp.  and using it as current only in an Arduino.

my reasoning is that I want to monitor a US residential circuit.  NEC says the maximum design current for a 20 A circuit is 16 amps. that allows for a 20% de-rating.  so, selecting for 20, but knowing that 16 is probably the maximum normal reading, then this could work fine.  here are my calculations :

sqrt(2) = 1.414  x 20 = 28.28

28.28 / 2,000 = 0.01414

then 2.50  / 0.01414 = 176 ohms

use 1,800 as the wraps and I get 159 ohms

EA48 resistor (5%) shows 150, 160 or 180

160 looks like the perfect choice.

### Re: firmware for SCT-013-030

That seems a tortuous way to calculate, and there are some numbers I don't understand.

What peak-peak output voltage does you circuit board accept? That is your starting point.
Convert that to rms (divide by 2√2) and subtract say 4% to allow for component tolerances - 1% for your burden resistor and 3% for the CT.

Then calculate the secondary current that your CT will generate at 20 A = 50 mA × 20 / 100.
You need the resistor that will generate the voltage you calculated at that current.

But use a 1% resistor if you can, otherwise allow 8% for component tolerances if you are using a 5% resistor. You can eat into the allowance for tolerances if you wish, it's your design decision.

But if your current has a 'peaky' waveform, you must use a smaller burden resistor as the 2√2 will be too low - possibly by quite a large amount, and unless you can see and measure the ratio peak/rms, there's no way of knowing by how much.

### Re: firmware for SCT-013-030

To demonstrate just how "peaky" a typical house circuit can get, here's a pic of my lights circuit with a bunch of compact fluros on (143W worth).   Irms is almost exactly 1A (997mA) but you can see Ipeak exceeds 3A.

Another one to keep in mind is in-rush current.  The second picture is my pool pump circuit.  Irms is about 5.8A but you can see Ipeak exceeds 40A, at least for the first 7 or so cycles during startup.

### Re: firmware for SCT-013-030

I am also using a SCT-013-030 current transformer and understand that it has its own built in burden resistor of 62 ohms. I also understand that I should not include an external burden resistor in my circuit before it is passed to the arduino.

My question is: Does this CT range in value of 0 to 1 V (as it says in the datasheet) or -1 to 1 V. I'm a little confused as to whether this can see negative currents as well. (Intuitively I think the output should range from -1 to 1 unless the CT has some sort of rectifier diode). Also, Since I am excluding an external burden resistor, what would change, if anything, on the rest of the circuit? (ie DC bias part)

Duplicate post deleted - Moderator, BT

### Re: firmware for SCT-013-030

The SCT-013-030 is a current transformer with an integral burden, nothing else. Therefore the burden voltage wave shape is an exact replica of the input current (within the limits of its operating range and accuracy), with the exception that no d.c. component is transferred from primary to secondary (as is true for ANY transformer).

"burden resistor of 62 ohms" Not necessarily. The manufacturer is likely to adjust the value from batch to batch to obtain the specified performance.

"what would change, if anything, on the rest of the circuit?" Nothing else need change. In fact, nothing has changed, the circuit is exactly the same, all that's happened is the burden resistor has physically moved from one end of the CT's cable to the other.