Saturday, October 27, 2018

Learning Java on a Mac

Farrell states it is a tradition that programmers write their first program in a particular language that produces the expression “Hello, world!” (2016). Performing such a tradition for the language of Java will be the second time I have had the pleasure of undertaking in the world of programming. The first time was in 2003 at Penn State, Berks Campus, where I created machine code for Motorola's 68000 microprocessor in the Associate Electrical Engineering Technology program. In this discussion, I will explore some basic knowledge on how to get set up using Java on a Mac and will demonstrate my first Java program that computes a cylinder's area and volume based on a user's prompt for radius and length.

The process of writing a computer program begins with the use of a simple text application such as Text Editor to formulate statements, called source code, using certain rules of the Java language. The text file is saved as a .java file. The whole point of creating source code is to prepare for a smooth interface between the human and computer languages. The Java Compiler, provided by a Java Developer Kit (JDK), converts the source code in to a binary format called bytecode and creates a new .class file. When the program is run, the Java Virtual Machine (JVM) performs a security analysis of the .class file and translates it into machine code, which is a set of instructions that acts upon the computer's operating system to produce a desired result.

The three types of errors that may be encountered in program construction are compile-time, run-time, and logic. A compile-time error is the result of the improper use of the Java language syntax rules. Because of this violation, source code is not able to be converted into bytecode. A run-time error occurs when machine code is created successfully but the program fails to execute. A logic error, the most difficult to resolve, occurs when the machine code is created successfully and the program runs but the execution produces undesired results. For example, consider the programmer who wants to add two numbers together. The programmer would realize a logical error has occured when discovering that the program was actually multiplying the two numbers instead of adding them.

I use a MacBook (13-inch, Mid 2010, Model Identifier 7,1), with a Core 2 Duo 64-bit processor that runs on the 64-bit MacOS High Sierra Version 10.13.6. To write my source code for calculating the area and volume of a cylinder, I used the application Text Editor, which comes with the operating system (OS). When finished writing, I saved the file as a .java file, which can be done by viewing the file extension in the File Save window and replacing .txt with .java.  A JDK is required to compile and execute the program. Therefore, since I have Java Version 8 installed, I downloaded Java JDK Version 8 from Java's website. I used Terminal, which comes with the OS, to compile the source code and have JVM run the program. The command to compile is javac followed by a space and complete file name for the source code. If compiled successfully without any errors, a new file is created with the same file name but with .class file extension. The command to run is java followed by a space and just the file name without an extension. JVM is actually loading and running the bytecode in the .class file.

Using Text Editor and Terminal is a very simplistic, bare bones way to writing programs but it does give you an appreciation for the basic requirements and a greater awareness of the process steps. Some other commands in Terminal are date (display time and date), ls (list the directory contents), pwd (show current directory), and cd (change directory). It is important to note that a PC uses a backward slash ( \ ) for file paths and a Mac uses a forward slash ( / ). To improve and speed up the process of writing sourcode, I downloaded a 32-bit application called Text Wrangler. This application color codes the different functions of the source code but you still have to use Terminal to compile and check for syntax errors. The ultimate experience is to download an Integrated Development Environment (IDE) application. An IDE will automatically check for syntax errors as you type and automatically compiles the code behind the scenes when you choose to run the program. I opted for NetBeans.

The purpose of the blog is just to show how to get started with running a Java program on a Mac. All that is needed next is a good textbook on the topic in order to learn the many tools that are available.

References:

Farrell, J. (2016). Java programming (8th ed.). Boston, MA: Cengage Learning.

The good and the bad of Java programming (2018, August 9). Altexsoft. Retrieved from: https://www.altexsoft.com/blog/engineering/pros-and-cons-of-java-programming/





Saturday, September 15, 2018

Power Line Carrier

With the use of modern communication assisted relaying on transmission lines, understanding how power line carrier protection schemes operate and investigating transmission line outages seems to be a lost art. There are many work groups, each having a specific skill-set, that play a role in how transmission equipment is handled. Management of transmission equipment seems to break down in to 5 areas of major focus: design, project management, operation, protection, and maintenance. Crews of transmission equipment tend to break down according to the type of equipment: line, substation, communication, and relaying. Utilities that own bulk electric system (BES) equipment are mandated by the federal regulatory body, North American Electric Reliability Corporation (NERC) to identify and correct the causes of misoperations of protection systems per standard PRC-004. This requires a great deal of collaboration among the different categories of management and crews. This article focuses on the troubleshooting of a misoperation on a 115 kV two terminal line that uses a directional comparison blocking (DCB) scheme to get a greater understanding of how power line carrier (PLC) operates, how to troubleshoot, and which work groups are affected.

The word carrier implies that the conductor of a transmission line is being used to transmit an electric signal at a frequency other than 60 Hz to convey certain information about the current state of the electric system. In the case of DCB, only two bits of information can be conveyed by one terminal letting the other terminal know if fault current is either flowing away from the line or into the line. This is accomplished by either the presence or absence of a signal. A terminal that receives a signal implies that the other terminal sees fault current away from the line and a terminal that does not receive a signal implies that the other terminal sees fault current towards the line. This is where you get the words "directional comparison" in DCB. A terminal gets to know which out of two different directions that fault current is flowing at the other terminal. The reason why a terminal needs this information is because it is difficult for the terminal's line relaying to determine fault location at the other terminal. A location on the line and just outside the substation is just a short distance away from a location that is away from the line but also just outside the substation. Line relaying is very good at differentiating locations that are close to it but not so well at locations that are many miles out. Therefore, the purpose of DCB is to prevent over-tripping of additional lines. If a terminal happens to see fault current onto his line and receives a carrier signal, then he is essentially being told by the other terminal, "Hey buddy, you just sit tight, don't do anything, I see the fault current as well, and I got things under control on my end." As a result, the terminal receiving the signal ensures that tripping of its line breaker is blocked. This is where you get the word "blocking" in DCB.

This year I was asked to investigate a 115 kV line that over-tripped twice for a fault that took place two lines out. The carrier signal operates at 96 kHz. Sequence of event (SOE) information that was gathered shortly after these incidents seemed to show that Station A tripped because it did not have the presence of a carrier signal from Station B. SOE data can come from digital fault recorders (DFR), microprocessor relaying, and signal processing equipment (carrier set). Relay and electronic crews gather this data and protection engineers analyze it. This was the first time I have ever gotten involved in an investigation of an over-trip due to carrier issues, so I had to consult equipment vendors, design engineers, protection engineers, and electronic technicians.

The first step in troubleshooting an over-trip due to a carrier issue is to ensure that a terminal sends a signal when it is supposed to. A line relay that sees current flow toward the line and away from the substation is considered forward direction. A line relay that sees current flow away from the line and towards the substation is considered reverse direction. Therefore, a test set can be used in the line relaying circuitry to simulate reverse direction to prove that carrier signal is sent. A relay crew and a field engineer would typically perform this work utilizing a test plan that is created by a protection engineer.

The second step in troubleshooting is to perform manual check-back testing of the signal. This is done by having an electronic technician at each terminal. Signals are sent and received to verify that a terminal receives a signal when the other terminal sends it. Signal power levels are measured to ensure that the carrier set will operate at the signal power received and to determine if there is any considerable attenuation of the signal in the various parts of the circuitry that the signal travels through. This is where I come in.

The third and final step in troubleshooting is to check for timing and discontinuities of the signal and verify the functionality of signal processing and relaying equipment by performing what is called end-to-end testing. As in the first step, a relay crew and a field engineer would typically perform this work utilizing a test plan that is created by a protection engineer.

It is important to understand how a signal is sent from one terminal to the other. There is a lot of equipment to consider. You basically need a way to generate a strong enough signal to overcome any losses it will suffer during transmission (transmitter), match the different characteristic impedances between coaxial cable circuits and transmission lines (impedance matching transformer), select for the particular signal frequency (LC series pass filter), couple it to the line (coupling capacitor potential device), ensure is travels only on the line (line or wave trap), and then couple it back to the carrier set at the other terminal. It is possible that signal power levels can be severely attenuated at certain parts in this signal path. If levels are too low, then the carrier set may not actuate during signal transmission. The picture provided shows an example of typical attenuation that takes place on a transmission line. You can see that the transmitter output of 10 Watts has already been cut by more than half when leaving the coaxial circuit!

In this example you can see that the power level of the carrier signal where it enters the RFL 6785P carrier set was +16 dBm, using the PowerComm PCA-4125 Power Communications Analyzer. This was -15 dB compared to carrier set's nominal level. There is a 12 to 15 dB margin that the carrier set will respond to. So the -15 dB reading was just at the edge of this margin. Two years ago, the signal receive strength was +28 dBm. So, something changed on the transmission line and carrier equipment to cause more power loss of the carrier signal. After extensive testing, this factor could not be identified. Therefore, the new power level was accepted as the norm and the carrier set was recalibrated to accept this level as the nominal. To explain what happened during the system event, the vendor stated that the carrier set actuates for a certain dB margin and that fault current may compromise the carrier signal. EPRI states that "during the occurrence of a fault, there may be additional noise generated by the impulsive voltages and currents associated with the fault" (2017). Therefore, it is very likely that Station A received the carrier signal when it was supposed to but unfortunately the signal power level and signal to noise ratio was too low until after the fault current was dissipated by the tripping of the breaker. This resulted in a over-trip and misoperation because the breaker operated when it was not supposed to, due to the carrier set being late in actuating the block function of the relays. Now, with the carrier set calibrated to the new signal power level, the carrier set and relaying should respond appropriately. This was confirmed by performing end-to-end testing at a later time. A project was created to install a carrier signal meter to alert transmission operators when signal power levels are too low during the daily, automatic check-back tests of the carrier signal.

I highly recommend the use of the PowerComm 4125 by technicians when it comes to troubleshooting signal levels! Performing routine signal strength testing allows a utility to ensure its carrier equipment is properly calibrated.

Article by Dan Scrobe

References:

EPRI AC Transmission Line Reference Book-200 kV and Above, 2017 Edition. EPRI, Palo Alto, CA: 2017. 3002010123.



Saturday, March 31, 2018

Bushing Health Monitoring



It appears that all new capital equipment that is purchased for distribution and transmission systems is not with just the intent of replacing aging equipment but also with the intent to gauge the expected lifetime cycle of the new unit. This allows for an increase in planned outages to repair/replace parts that are soon to fail and a decrease in unplanned outages to address parts that have already failed. With transformers, bushing failures can be catastrophic to human life and to the integrity of the transformer. One way to monitor the health of a transformer bushing is to measure the capacitive reactance of the series capacitances within the oil impregnated, foil layers that surround the electrical conductor. This monitoring is done by advanced electronics such as performed by Dynamic Ratings. Sometimes the monitoring systems can give false alarms. The aim of this article is for the field technician to understand how the bushing health monitoring system works and how to perform manual in-service measurements to verify the legitimacy of an alarm.
 
Transformer bushings will typically have a connection point to the outer foil layer. This connection is called the C2 tap and gets shunted to ground via the installation of its cap cover. For out of service testing, when the cap is removed, the equivalent series capacitance from the conductor to the tap is called C1 and the capacitance from the tap to ground is called C2. Both C1 and C2 are given on the nameplate of the bushing in units of picofarads. Doble testing takes advantage of the C2 tap to measure the capacitances of C1 and C2 and the Watts loss of the bushing by applying a test voltage to the bushing terminal. Dynamic Ratings basically performs this Doble testing while a transformer is in service by removing the cap and shunting the C2 tap to ground via a resistor or "burden." The Dynamic Ratings system will constantly measure the voltage across and the current through all three resistors (three phase system) for a set of bushings such as H1-H2-H3 on a transformer. If one bushing begins to fail, the magnitude of the sum vector will breach a set circular zone called the bushing intolerance limit, which can be adjusted via the settings of the monitoring unit.

In this test, by knowing line voltage, frequency, burden resistance, and nameplate capacitances of C1 and C2, a field technician can determine to some degree the health of the bushing via voltage measurements taken by an Arbiter. In this example, line voltage is 69kV, frequency is 60 Hz, and the burden is 500 ohms. The reference chosen was A phase on the low side of the transformer. A potential transformer is connected to 7.6kV A phase and its 120V output provides a signal to the load tap changer controller.  Because C2 has a high impedance at 60 Hz and is shunted by only a 500 ohm resistor, C1 and the burden resistance can be essentially considered a series circuit and the voltage divider rule can be used to calculate the voltage across the burden. Therefore, by using Ohm's Law calculations, the voltage across the burden was calculated to be 1.8V. And since the equivalent impedance between a bushing terminal conductor and ground is mostly capacitive, it was expected that the burden voltage would lead the system phase-to-ground voltage by 90 degrees. The Arbiter proved these calculations. If one of the bushings were going bad, where foil layers within the bushing would begin shorting together, then the capacitance of C1 would go up, the capacitive reactance of C1 region would go down, and the voltage across the burden would go up. All burden voltages Ax, Bx, Cx are under 1.8V and evenly spaced about 120 degrees apart. Therefore, the magnitude of sum vector for all three burden voltages would likely be very small.

Article by D Scrobe III