In compliance with high industry standards

Browse our Blog. You will find multiple applications, solutions, code examples. Navigate using the tag cloud or search using specific criteria

Non-invasive electrical current sensor using YHDC SCT-010 and an Arduino based PLC

Industrial Arduino Controller for electrical monitoring


The SCT-010 family are sensors of non-invasive currents that allow to measure the intensity that crosses a conductor without needing to cut or modify the conductor. We can use these sensors with a processor like M-Duino or 20 I/Os family products to measure the intensity or power consumed by a load.

The SCT-010 sensors are current transformers, instrumentation devices that provide a measurement proportional to the intensity that a circuit crosses. The measurement is made by electromagnetic induction. SCT-010 sensors have a split ferromagnetic core (like a clamp) that allows you to open it to wind a conductor of an electrical installation without having to cut it. 

Within the SCT-010 family, there are models that provide measurement as an intensity or voltage output. As much as possible, the normal thing is that we prefer voltage output because the connection is simpler.


Ethernet PLC or 20 I/Os PLC:    Ethernet PLC      20 I/Os PLC

YHDC SCT010T-D 50A/5V DC:   YHDC SCT010T-D Current sensor

Industrial Shields boards:  How to use the mapping pins of Industrial Shields boards


YHDC SCT010T-D Current Sensor:  


Rated input50 A

Rated Power0-5Vdc

Maximum allowable current100% (continuous), 150% (1min)

Output impedance7.5KΩ

Output ripple voltage≤5% of the output voltage

Response time 300ms

Working frequency50-60Hz

Other important data:

Precision / Linearity: Dynamic range +/- 2% (F.S 1: 100 50 / 60Hz sine wave)

Operating temperature: -20 ... +50 ℃

Storage temperature: -30 .. + 90 ℃

Dielectric strength: 2.5KV

Fire resistance: UL94-V0M

Mounting type: Suspended 

Suspension Weight: 45g

Outline size diagram (mm):


Wiring diagram:

YHDC SCT010T-D Current Sensor - Arduino Based PLC:

-L     -->  GND

+K    -->  I0_11

 Final Connection: 


This simple sketch allows us to perform analog readings of the YHDL SCT010T-D  current sensor every 0.5 sec. For this we have used the entry I0.11 of the M-Duino Industrial PLC. You can use any of the analog inputs available on your computer.

As a test we will check the result monitored by the serial port


   Copyright (c) 2018 Boot&Work Corp., S.L. All rights reserved

   This program is free software: you can redistribute it and/or modify

   it under the terms of the GNU Lesser General Public License as published by

   the Free Software Foundation, either version 3 of the License, or

   (at your option) any later version.

   This program is distributed in the hope that it will be useful,

   but WITHOUT ANY WARRANTY; without even the implied warranty of


   GNU Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public License

   along with this program.  If not, see <>.



void setup() {


  Serial.println("yhdc-sct010t-d started");



void loop() {

  uint16_t value = analogRead(I0_11);




Non-invasive electrical current metering with Arduino Industrial Controllers 


Looking for your ideal PLC?

Take a look at this product comparison with other industrial controllers.

We are comparing inputs, outputs, communications and other features with the ones of the relevant brands.

PLC comparison >>

Do you want more information?

Just fill the form!

Tell me more!