Найти тему
Геннадий Антонов

Python. Downloading of oscillograms from relay protection devices.

I would want to start column of publications about how application programming in usual working life, whoever you may be on your working position - engineer, clerk, or top manager, provides an opportunity to fantastically increase productivity and achieve amazing results.

In that publications, on real practical examples, I would to show possibilities and outlook, which discover programming skills.

Python. Downloading of oscillograms.

Let's review that on some example.

Who had worked with the E-SCADA or relay protection devices, well known how important to have on time downloaded oscillograms from relay protection devices.

Oscillogram itself makes possible record currents, voltages, discrete inputs-outputs conditions, as well as internal logical signals, on instance emergency case. From this information depend results of analysis emergency case, explanation reasons what were happened, and what necessary to do in order prevent that in the future.

Oscillograms as usual record in internal memory itself relay protection devices. In that equipment there is own internal logic and algorithms, according to which starts record of oscillograms. Different makers suggest differ possibilities for their equipment. Some devices makes possible flexible logic and you can define own algorithm, which will start record. Another devices has hard logic, without possibilities to edit, there as usual user nothing to do, and it has to be content - as build.

Strictly speaking on that devices where exist recording of oscillograms, that recording exist constantly. Every millisecond. Just this recording makes in volatile memory, but when got condition for recording, it could be named like 0 on time scale, recorded data of oscillogram in minus from 0 one or two second, and plus from 0 - there is longer period of time.

Minus from 0 need to know what was preliminary emergency case.

Plus from 0 need as emergency case itself.

Process downloading of oscillogram looking following manner.

Engineer, as usual this is relay protection engineer, take his laptop, on which installed maker equipment software, and connect to any channel of communication (RS485, 232, Ethernet, USB) to relay protection device and download all necessary oscillograms.

That means are good and in simple systems works impeccable, however in complicated systems in that means are some flaws.

1. Size of memory relay protection device are limited. Most normally when device could keep in memory simultaneously no more than 4-6 oscillograms. Is that critical when emergency events goes one by one, manually it possible obtain most probably only one oscillogram related with last emergency event, because of previous oscillograms will rewrite by last event.

2. Time of work. In manual mode downloading of oscillograms exceptionally slow process.

Especially this important in case of when necessary to download events from variety devices.

For example in case of Sepam 80 series in number 50-60 pieces, that for one engineer could continue for couple working days.

Therefore this seems to suggest about automation of downloading.

When got such question we of course first of all appeal to maker of relay protection, what they suggest in that case.

Immediately become clear that they suggest as usual own SCADA for gathering information from equipment, as well as the download oscillogram in auto mode. Price that SCADA, most probably, enough, require additional equipment, adjustment and commissioning. If in your company expenditure restricted, most probably you will take denial in installation such kind of SCADA.

However, not everything in such black color.

Makers in spite of trying to sell own SCADA, anyways remain possibilities for implementation relay protection to another not mother SCADA. They describe sequence actions what necessary to do so that to take oscillogram in auto mode.

Most simple when oscillograms possible to take on FTP protocol.

Considerably difficult to work with another protocols, for example to take oscillograms by Modbus. In that case maker explain process exchanging registers buffer, size of buffer, confirmation for download, date of oscillogram etc.

In my case that task arise as downloading oscillogram in auto mode from relay protections devices Sepam 80 series (Schneider Electric manufacturer). Part of number devices were connected through ACE850 module, which give possibilities to download oscillogram by FTP protocol. Another part of number devices were connected through Modbus RTU, and needs to be to download oscillograms by this protocol.

When with application task my utility written on Python became cope with success, I elaborated it by possibilities working in parallel mode with multiply number of relay protection devices simultaneously, that was decreased a lot time of downloading oscillogram.

Approximately estimation spending time for download:

1. In manual mode - 2 working days and 2 hours

2. Auto consistent mode - 9 hours

3. Parallel mode - 10 min

Please, see the diagrams which describe by visual means.

Downloading oscillograms in manual mode
Downloading oscillograms in manual mode
auto-consistent downloading software working for example in loop mode
auto-consistent downloading software working for example in loop mode
Downloading oscillograms in parallel mode
Downloading oscillograms in parallel mode

Try to have a look below on video which demonstrate process of work my utility on Python, with downloading oscillograms from Sepam 80 devices, by Modbus protocol.

https://youtu.be/LOJZcJJTYQ0

Latter I developed for REF615 and REF620 relay protection devices (ABB manufacturer) utility on Python for downloading oscillograms by FTP protocol. Because of particularities realization FTP on such devices, where used TLS protected protocol, I used combination from Python and WinSCP software.

How it could possible realize, look on video.

And yes, of course by speed of download FTP out of competition.

https://youtu.be/_FXK_KsjEGw