IDMT Relay Operation Using Arduino
Submitted By Submitted To
G Xxx
ID: 182
Ra Lecturer
ID: 18
D Department of EEE
ID: 18 City University
Ifti
ID: 17
Fah
ID: 18
Course Title:
Course Code:
DEPARTMENT OF ELECTRICAL AND ELECTRONIC ENGINEERING
CITY UNIVERSITY, DHAKA, BANGLADESH
1
Introduction:
An Inverse Definite Minimum Time (IDMT) relay is a type of overcurrent relay widely used in
electrical power systems for protection against overcurrents and short circuits. The term
"inverse" signifies that the relay operating time decreases as the magnitude of the fault current
increases. The "definite minimum time" implies there is a minimum time below which the relay
will not operate regardless of the fault current magnitude.
Objective:
To provide an understanding of Inverse Definite Minimum Time (IDMT) relays, their principles
of operation, applications, and advantages in electrical protection systems.
Components Needed:
- Arduino Uno
- Voltage Sensor
- Current Sensor
- Relay
- 12 V SMPS
- Three Types Load
- Indicator Lamp
- Buck Converter
- 20*4 LCD Display
2
Working Principle:
Inverse Time Characteristics: The IDMT relay operates on the principle that the operating time
is inversely proportional to the fault current magnitude. This means the higher the fault current,
the faster the relay responds. This characteristic ensures that the relay quickly isolates severe
faults while allowing brief overcurrent conditions (e.g., motor startups) to pass without tripping.
Time-Current Characteristics: IDMT relays have specific time-current characteristics defined
by standards such as IEC or IEEE.
These characteristics typically include:
Standard Inverse
Very Inverse
Extremely Inverse
Each characteristic curve is designed to suit different protection requirements, providing
flexibility in coordination with other protective devices.
Definite Minimum Time: Despite the inverse relationship, there is a minimum time setting to
prevent the relay from operating instantaneously for any overcurrent condition. This setting
ensures coordination with other protective devices and prevents unnecessary operations due to
transient overcurrent.
Applications:
IDMT relays are extensively used in:
Power Transmission and Distribution Networks: To protect transformers, feeders, and
generators from overcurrents and short circuits.
Industrial Power Systems: To safeguard machinery and equipment from electrical faults.
Utility Grids: To ensure reliable and selective tripping of faulty sections without affecting the
entire network.
3
Circuit Diagram:
Figure 1: Circuit Diagram of IDMT Relay using Arduino
Advantages:
Selective Coordination: IDMT relays can be set to coordinate with upstream and downstream
protective devices, ensuring selective isolation of the faulted section.
Flexibility: Multiple time-current characteristic curves allow for customization to match specific
protection requirements.
Reliability: Proven technology with robust performance in protecting electrical systems.
Cost-Effectiveness: Provides a balance between performance and cost, making it suitable for a
wide range of applications.
4
Conclusion:
IDMT relays are a critical component in electrical protection systems, offering reliable, flexible,
and cost-effective protection against overcurrents and short circuits. Their inverse time
characteristics ensure that severe faults are cleared quickly, while less severe conditions do not
result in unnecessary tripping, thus maintaining the stability and reliability of the electrical
network. Understanding the principles and applications of IDMT relays is essential for designing
and maintaining effective power protection systems.
References:
[1] B. A. Khan, H. M. Ashraf, S. Hamid, R. M. Asif and U. Bashir, "Implementation of
Micro Controller Based Electromechanical Over Current Relay for Radial Feeder Protection,"
2019 International Conference on Engineering and Emerging Technologies (ICEET),
Lahore, Pakistan, 2019, pp. 1-6, doi: 10.1109/CEET1.2019.8711841
[2] Y. L. Goh, A. K. Ramasamy, A. A. Z. Abidin and F. H. Nagi, "Modelling of overcurrent
relay using digital signal processor," 2010 IEEE Symposium on Industrial Electronics and
Applications (ISIEA), Penang, 2010, pp. 367-370, doi: 10.1109/ISIEA.2010.5679440.
[3] T. Keil and J. Jager, "Advanced Coordination Method for Overcurrent Protection Relays
Using Nonstandard Tripping Characteristics," in IEEE Transactions on Power Delivery, vol.
23, no. 1, pp. 52-57, Jan. 2008, doi: 10.1109/TPWRD.2007.905337.
[4] Meraj Hasan, Junaid Maqsood, Mirza QutabBaig, Syed Murtaza Ali Shah Bukhari,
Salman Ahmed, "Design & Implementation of Single Phase Pure Sine Wave Inverter
UsingMultivibrator IC," 2015 17th UKSIM-AMSS International Conference on Modeling
and Simulation, doi:10.1109/UKSim.2015.58.
[5] S. Sarwar, S. Aslam, W. Arsalan, M. U. Sajjad, A. A. Khan and O. Shami, "Design
and Real-Time Implementation of Transformer-less Pure Sine-Wave Inverter," 2020
5
International Conference on Engineering and Emerging Technologies (ICEET), Lahore,
Pakistan, 2020, pp. 1-6, doi: 10.1109/ICEET48479.2020.9048200.
[6] D. Lidgate and H. AskarianAbyaneh, "Computer assessment of IDMT relay
performance for phase and earth faults on interconnected power systems," IEE Proceedings
C (Generation, Transmission and Distribution)
[7] The Basics Of Overcurrent Protection’ by 2021 EEP - Electrical Engineering
Portal[online]. Available:https://electrical-engineering portal.com /download-center/books-
andguides/relays/overcu rrent-protection-basics. [Accessed: 08- February- 2021].
[8] Know about Under and Overvoltage Protection Circuit with Working’ [Online].
Available:https: //www.elprocus.com/under-and-overvoltage-protection-circuit/[Accessed:
Accessed: 08- February- 2021].
[9] Relay Protection Coordination’ by patrarijaya.co.id [online]. Available:
https://www.patrarijaya.co.id/relay-protection-coordination/. [Accessed: 08- February- 2021].
[10] Dual Power Supply Circuit’ by theory circuit [online]. Available:
https://theorycircuit.com/dual-power-supply-circuit/ [Accessed: 08- February- 2021].
[11] Md. HumayunKabir Khan (Masum) ‘PIC Microcontroller Based Automatic Power
Factor Correction Using Switched Single Capacitor’ by Dhaka University of
Engineering & Technology, Gazipur [online]. Available:
https://www.duet.ac.bd/wp-content/uploads/2019/07/Thesis_-112250P.pdf [Accessed: 08-
February- 2021].
[12] Muhammad Ehsan, ‘Introduction to Arduino IDE’ by MamourDiop&Congduc Pham
[online]. Available: https://diy.waziup. io/sensors/introduction_Arduino_
IDE/intro_Arduino_IDE.html/ [Accessed: 08- February- 2021].
6
Code:
#include <ZMPT101B.h>
#include "ACS712.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define SENSITIVITY 500.0f
#define relay1 2
#define relay2 7
#define relay3 4
LiquidCrystal_I2C lcd(0x27, 20, 4);
ACS712 sensor(ACS712_20A, A1);
ZMPT101B voltageSensor(A0, 50.0);
void setup() {
Serial.begin(115200);
sensor.calibrate();
pinMode(relay1,OUTPUT);
pinMode(relay2,OUTPUT);
pinMode(relay3,OUTPUT);
7
lcd.begin();
lcd.backlight();
lcd.setCursor(0, 3);
lcd.print("IDMT Relay by CU");
lcd.print("");
voltageSensor.setSensitivity(SENSITIVITY);
void loop() {
float voltage = voltageSensor.getRmsVoltage();
float I = sensor.getCurrentAC();
Serial.println(voltage);
Serial.println(I);
delay(1000);
delay(1000);
if (I < 0.09) {
I = 0;
if(I>2 && I<2.8)
8
delay(3500);
digitalWrite(relay1,LOW);
delay(10000);
lcd.setCursor(0, 2);
lcd.print("Tripping Time: ");
lcd.print("3.5 Sec");
else {digitalWrite(relay1,HIGH);}
if(I>2.8 && I<3.7)
{delay(2500);
digitalWrite(relay2,HIGH);
delay(10000);
lcd.setCursor(0, 2);
lcd.print("Tripping Time: ");
lcd.print("2.5 Sec");
delay(300);
else {digitalWrite(relay2,LOW);}
if(I>3.7 && I<4.6)
9
{delay(1500);
digitalWrite(relay3,HIGH);
delay(10000);
lcd.setCursor(0, 2);
lcd.print("Tripping Time: ");
lcd.print("1.5 Sec");
delay(300);
else {digitalWrite(relay3,LOW);}
lcd.setCursor(0, 0);
lcd.print("Amp: ");
lcd.print(I);
lcd.print(" A");
delay(300);
lcd.setCursor(0, 1);
lcd.print("Volt: ");
lcd.print(voltage);
lcd.print(" V");
delay(300);
10