You are on page 1of 5


Electric Power Systems Research 35 (1995) 207 211



Microprocessor based inverse-time multiple overcurrent relays

Faisal Fadul, Ronald Krahe
School ~/" Engineering and Engineering Technology, The Pennsylvania State University at Erie, Station Road, Erie, PA 16563, USA
Received 28 February 1995; accepted 21 July 1995


Inverse-time overcurrent relays are used to protect transmission lines and other power system equipment. The use of microprocessors to implement single and multiple overcurrent relays has been reported in the literature. In this paper it is shown that several independent overcurrent relays and other tasks can be implemented using a single microcontroller: the Intel 8051. An interrupt-driven array based program is designed to monitor and control up to 128 overcurrent relays from a single monitor/control board. The system consists of a personal computer and several monitor and control interface boards, each built around the 8051 microcontroller. The proposed system surpasses the previously published systems in its efficiency, response time, and its ability to implement hundreds of different overcurrent relays of various types in addition to performing other tasks.
Keywords: Overcurrent; Relay protection: Computer control systems

1. Introduction

A typical power substation employs hundreds of overcurrent relays of various types to protect its equipment such as transformers, generators, motors, transmission lines and so forth [1]. Two types of overcurrent relays are used for protecting devices against overcurrents: inverse-time overcurrent relays and definite-time overcurrent relays. The trip time for relays having inverse-time characteristics varies with the value of the current. However, for definite-time overcurrent relays, the trip time is constant irrespective of the amount of current once it exceeds the pick-up value. This paper deals with the implementation o f inverse-time multiple overcurrent relays. Inverse-time overcurrent relays play an important role in protecting transmission and distribution equipment against overload and short-circuit currents. Methods have been suggested [2-6] to implement relaying functions using a dedicated microprocessor. The approaches in Refs. [2,3,5,6] solely dedicate the microprocessor time to poll the relays, thereby preventing them from performing other tasks. An interrupt-driven microprocessor based single overcurrent relay has been proposed [4]. Methods to implement multiple overcurrent relays by using multiprocessing methods have been
0378-7796795/$09.50 1995 Elsevier Science S.A. All rights reserved SSDI 0378-7796(95)01004-7

proposed, but they are designed for definite-time overcurrent relays [7,8]. In practical power substation systems several overcurrent relays need to be controlled in addition to carrying out other tasks such as overvoltage and undervoltage relaying transformer control including its protection and load management, metering devices, and power sector control. This paper addresses the implementation of up to 128 inverse-time overcurrent relays with various current ranges and tap settings as well as the ability to perform other tasks with a single microcontroller. The proposed system surpasses the above previously published systems in its response time, efficiency, and its capability to implement hundreds of overcurrent relays from a central location. The main features of the proposed system are the following. It employs a microcontroller which contains, in addition to the CPU, on-board RAM, EPROM, programmable I/O ports, and timers. These features make the controller compact, cost effective and more reliable. Each one of its monitor/control boards is capable of implementing up to 128 overcurrent relays as well as performing additional tasks. This is accomplished by the efficient utilization of interrupt-driven array based software routines for the 8051 microcontroller.


F. Fadul, R. Krahe Eleclric Power 5)'stems Re,search 35 (1995) 207 211

It contains an independent operating hardware monitor system which consists of a counter, a comparator, D/A converters, and RAM on a single unit. Each unit constantly monitors 128 current lines and does not prohibit the microcontroller from carrying out additional tasks. Modularity of hardware and software is possible. For example, implementation of additional overcurrent relays requires no change in the software but requires more monitor/control boards. It can be further expanded by adding additional low-cost commercially available hardware components to interface additional control and monitoring boards. This is accomplished by adding commercially available add-on expansion boards to the PC. A fast response time is possible, since each controller/monitor board is equipped with its own microcontroller and there is no need to use the PC time. The Intel 8051 microcontroller contains a 12 MHz crystal, powerful architecture and flexible instruction set. For example, the on-board memory reduces the fetch and execute cycle times and the true bit test instructions reduce the number of T states (time) needed to execute the instructions [9]. It allows the monitoring and control of hundreds of overcurrent relays from a central location where the PC is located. This enables security analysis and instantaneous changes of current settings, thereby improving the reliability of the system considerably [10-12].

measuring units. U5 is an 8-bit magnitude comparator whose output is interfaced to the interrupt of the microcontroller. Port 2 is used to input the 8-bit address of the faulted relay upon interrupt. Port 1 is used to input the current value of the faulted relay. This current is stored in an array and will be explained in the system software. The address will be used by the microcontroller to monitor and possibly trip the circuit breaker of the corresponding relay. U23 is a decoder circuit used by the microcontroller to trip circuit breakers of faulted relays.

3. System operation
The system will operate in the following manner. Analog signals from overcurrent relays enter the multiplexed A/D converter as shown in Fig. 1. The RAM, U3, and the multiplexed A/D converters, U6-U22, will be simultaneously addressed by the binary counter whose lines are also connected to the data bus of the microcontroller. Lines 1-4 of the counter U2 are con4---[NeasueingUnit ! [ U I

~--.-[NeasueingUnit 9 I

2. System hardware
~--.-[.Neas~ingUnit 161 The system hardware consists of a personal computer (PC), and several monitor/control interface boards. The frequency of the crystal employed by the 8051 microcontroller is 12 MHz. This enables the system to implement several overcurrent relays in less time than the previously suggested microprocessor systems [2-5]. In addition, the response time can be further reduced by taking advantage of the embedded timer and flexible instruction set of the 8051. A block diagram of a monitor/control PC interface board is shown in Fig. 1. U1 is the 8051 microcontroller which controls all the board operation. U2 is an 8-bit binary counter which has three lines connected to all the multiplexed A/D converters, and four lines connected to both the RAM, U3, and the decoder, U4. The output lines of the counter are also connected to port 2 of the microcontroller. U4 is a four-to-sixteen decoder which addresses one of the sixteen 8-bit multiplexed A/D converters, U 6 - U 2 2 , which take analog signals from the measuring units and convert them to their digital equivalents before processing. Upon interrupt, a clock pulse controlled by the microcontroller increments the counter, U2, in order to scan all 128

uni, 12ub

k I' Trip Unit 1 k I Trip Unit 2

......... i

k I T~JF Unit 128

Fig. 1. System hardware.

F. Fadul, R. Krahe /Electric Power Systems Research 35 (1995)207 211







These lines are used to select one of the eight measuring units connected to each multiplexed A/D converter. A clock pulse coming from the microcontroller increments the counter and monitors each overcurrent relay. The output data of the multiplexer will be compared directly with the contents of the RAM using the 8-bit magnitude comparator. If the signal from the corresponding relay is comparably larger, an interrupt signal will be sent to the microcontroller. The board will continue to monitor all relays while the microcontroller operates the interrupt subroutine. The address of the faulted overcurrent relay will be disabled from the microcontroller until the check is completed. If another relay is faulted then the microcontroller will read the address and current of the faulted relay and add it to the relay array. The interface board can also be used to independently and instantaneously trip relays if instantaneous tripping is required. The PC employed can be used by the operator to enter high-level commands to oversee, monitor, and control all overcurrent relays from a central location. Eight monitor/control interface boards can be installed on the mother board of the PC [13], thereby allowing the implementation of up to 1024 overcurrent relays. It is possible to use an add-on expansion box from Metrabyte, Inc. [14] to increase the PC bus capability from its original eight positions. This allows for the implementation of additional overcurrent relaying functions from a single microcomputer, depending on the capability of the add-on box employed.

1 msec \ TIMER ~ INTERRUPT /


4. System software
The proposed software is used to implement, monitor and control overcurrent relays when the microcontroller is interrupted. It is understood that the microcontroller was performing other tasks at this time. For a single overcurrent relay, the circuit current is monitored. If the level of current is below I~ (the safe level), the circuit overcurrent relay is never tripped. If the level of current exceeds I~,, the level of current is monitored and integrated over time. When the integration reaches a value specified by the timecurrent curve, the relay is tripped. Multiple circuits and overcurrent relays are controlled by a single microcontroller according to the algorithm illustrated by the flowcharts in Figs. 2 and 3. The microcontroller maintains a record of the status of all relays in a relay array or linked list. Initially, at power up or reset, the relay is cleared. Also at this time, an embedded timer is initialized to interrupt the microcontroller every 1 ms. The 1 ms time interval can be changed based upon the time requirements for implementing the overcurrent relays. Finally, a second interrupt is enabled which detects the initial overcurrent

(b) ~..~



/idle )
Fig. 2. Software interrupt service routines.

nected to the decoder and will select one of the multiplexed A/D converters, while lines 5 - 7 are connected to the select lines of all the multiplexed A/D converters.


F. Fadul, R. Krahe .,Electric Power Systems Research 35 (1995)207 211



Fig. 3. Relay array maintenance subroutine.

condition on any of the circuits. After this preliminary work, the microcontroller enters the idle state or is free to work on other tasks as shown in Fig. 2(a). Every 1 ms, the microcontroller is interrupted by the timer. It increments the system real-time clock, which is the basis of overcurrent integration and trip time. It also checks the relay array and, if no circuits are currently in an overcurrent condition, it immediately returns to the idle state as shown in Fig. 2(b). When an overcurrent condition is detected in any circuit, an external interrupt is generated. The microcontroller immediately reads the level of current in the circuit and determines the time at which the relay should be tripped. This trip time, which is the sum of the current system time plus the delay time, is stored in the relay array. The microcontroller then returns to the idle state as shown in Fig. 2(c). The next time' the 1 ms interrupt occurs, the system real-time clock is incremented. Now, when the microcontroller checks the relay array and finds an overcurrent entry, it rereads the level of current in that circuit. If the level has dropped below Is, the safe level, the array entry is cleared. However, if an overcurrent condition still exists, a new trip time is computed based on an integration of the level of current over time using Simpson's rule, and is stored in the relay array. After the relay array entry is updated, it is compared with the system real-time clock. If the entry is greater than the present time, the relay is immediately tripped. If not, it will be checked again next time. After all relay array entries have been checked, and any relays tripped, the microcontroller returns to the idle state as shown in Fig. 2(b) and Fig. 3. Each instruction of the 8051 microcontroller consists of a certain number of states where each state takes

83.3 x 10 '~ s with the 12 MHz crystal. The overcurrent relays are implemented by a program stored in the EPROM of the microcontroller. Fig. 3 shows the flowchart of the software program. An estimate of 14 gs was calculated for the computer (when interrupted) to evaluate one relay for one cycle of the program. Of course, the time it takes to implement each relay is different and each implementation can differ depending on the input status. The input status is an analog DC signal ranging from 0 to 5 V produced by the relay. This signal is a function of the current in the power system. The signal is then converted to digital information for evaluation. Any filtering, rectifying or amplification of the input signal must be performed, before entering the interface board, to ensure surge protection for the chips. The binary counter is used to address the RAM on the interface board to fetch the memory contents for a specified relay for implementation. The purpose of addressing the RAM on the interface board is to provide digital information to evaluate each overcurent relay. Each byte of information is a function of the maximum allowed current for the corresponding relay in the power system. The contents stored in the R A M can be entered or changed through the PC via the address/data bus. When a relay exceeds its maximum prescribed current level beyond the allowed time limit, the PC will send an output signal to trip the corresponding relay. Depending on the type of relay used, decoding may be necessary. It is possible to implement up to 128 overcurrent relays from a single interface board.

5. Conclusions

An interrupt-driven microcontroller based multiple overcurrent relay is proposed to control an interface board designed for interface with a PC. The proposed system surpasses previously published systems in its reduced cost, simplicity and its ability to implement hundreds of overcurrent relays as well as its ability to carry out additional tasks. Several interface boards can be used with the PC to allow the monitoring and control of 1024 overcurrent relays from a central location. Additional overcurrent relays can be implemented if commercially available add-on expansion boards are used. This permits security analysis and instantaneous changes of operational current requirements, thereby improving the reliability of the system.

[1] M.E. Hawary, Electrical Power Systems: Design and Analysis, Prentice-Hall, Englewood Cliffs, NJ, 1983.

F. Fadul, R. Krahe / Electric Power Systems Research 35 (1995)207 211


[2] M. A1-Nema, S. Bashi and A. Ubaid, Microprocessor-based overcurrent relays, IEEE Trans. Ind. Electron., IE-33 (1) (1986) 49-51. [3] M.A. Manzoul, Multiple overcurrent relays using a single microprocessor, IEEE Trans. Ind. Electron., 37 (4) (1990) 307-309. [4] M.A. Manzoul, Interrupt-driven microprocessor-based overcurrent relay, IEEE Trans. Ind. Electron., 38 (1) (1991) 8-9. [5] G. Benmouyal and S. Boismenu, A field programmable time-overcurrent relay, 1EEE Trans. Power Deliver),, P W R D - I (3) (1986) 376 384. [6] M.A. Manzoul and M. Suliman, Fault-tolerant microprocessorbased overcurrent relays, Microelectron. Reliab., 31 (1) (1991) 133 139. [7] F. Fadul and K. Weidenboerner, Microcomputer interface board based multiple overcurrent relays, Comput. Electr. Eng., 19 (1) (1993) 19 24. [8] F.K. Fadul, M.J. Holubek and J.B. Lowry llI, Parallel processing

[9] [10]



[13] [14]

network for overcurrent relays, Int. J. Microeomput. Appl., 11 (3) (1992) 115-119. 8-bit Embedded Controller Handbook, lntel, Santa Clara, CA, 1990. H. Kosonen, Practical experiences in the use of advanced network applications at the Finnish National Control Centre, IEEE Trans. Power Syst., PWRS-1 (3) (1986) 298-301. J. Carpentier, The French National Control Center present state and developments, IEEE Trans. Po~er Svst., P W R S - I (4) (1986) 42-48. A. Sugarman, Condition monitoring of electrical equipment in nuclear power plants, 1EEE Trans. Energy Convers., EC-I (3) (1986) 1 8. 386 User's Manual, Gateway 2000, North Sioux City, SD, 1991. Data acquisition and control, Hardware and Soj?ware.[br IBM PC/AT/XT, IBM PS/2, Microchannel, and Apple Mackintosh Computers, Metrabyte/ASYST/DAC, Vol. 22, Metrabyte, Taunton, MA, 1990.