My Current Sensor(SCT 013000) Cant measure accurately

Hello everyone!

I am working to measure AC current with sensor SCT 013 0000 right now. To measure current with that sensor, I used voltage devider with resistor burden 33Ohm.
The program that I created has a Low Pass Filter and I have added calibration data from linier regression. Here my program that I used :

  // you can choose a prescaler from above.
  // PS_16, PS_32, PS_64 or PS_128
  ADCSRA |= PS_128;    // set our own prescaler to 64


void loop() {

  unsigned int i;
  unsigned int z;
  z = 0;
  // capture the values to memory
  for(i=0;i<300;i++) {
    start_times[i] = micros();
    values[i] = analogRead(A0);            

  if (values[i] >= z) {
  z = values[i];
    stop_times[i] = micros();
   int vin = z ;
   y = 0.9516*y + 0.04843*vin; //LOW PASS FILTER , FREKUENSI CUT OFF = 0,8f
   float arus = (y - 513.19)/4.3459; //DATA KALIBRASI REGRESI LINIER

if(arus < 0){
arus = 0;
  Serial.print("\t Arus= ");
  z = 0;

but, I have some trouble when I detected one phase current form motor 3 phase. my data sensor cant measure correctly the error is 60%.

What are you using to convert the AC output of the transformer to DC?


You might find this tutorial on using current transformers with Arduino informative.

Please post your circuit diagram. Hand drawn is fine (but not Fritzing).

Thanks jremington, but I want to built my program by my self, can u help me ?

I want to built my program by my self, can u help me ?

Write your program, test it and if you run into problems, read "How to use this forum" before adding to this thread.

Forum members are happy to help.

That current transformer has an AC output , which cannot be connected direct to an Arduino .

This maybe the same link but ...