Total 4731 registered members
Testiranje performansi IEC 61850 GOOSE poruka

Testiranje performansi IEC 61850 GOOSE poruka

Jedan od čestih zahteva za uređaje relejne zaštite je podrška za IEC 61850 standard. U okviru standarda predviđene su i poruke za brzu razmenu informacija između releja tzv. GOOSE (Generic object-oriented substation event). U pitanju su uglavnom trip, interlocking, breaker failure i slični signali. Vreme transfera ovih signala je kritično, njihovo kašnjenje može prouzrokovati neželjeno isključenje potrošača ili oštećenje opreme.

U ovom radu istražićemo koja softverska arhitektura je najpogodnija da se ostvare tražene performanse. Softver za slanje/prijem GOOSE poruka može se nalaziti u real time (RT) ili user space prostoru operativnog sistema. Razmotrićemo user space i RT implementacije na dve različite mikroprocesorske arhitekture – ARM9 i PowerPC.

Do degradacije performansi može doći iz 2 razloga:

  • Zaštitna funkcija ima najviši prioritet. Najmanje 500 μs tokom svake milisekunde GOOSE task će biti uskraćen za procesorsko vreme.
  • U slučaju čiste user-space implementacije operativni sistem će prekidati GOOSE task na potpuno nedeterministički način.

User Space Test

Za testiranje performansi GOOSE poruka u user space-u razvijeno je okruženje bazirano na ARM7 arhitekturi:

  • ARM7 sa integrisanim Ethernet-om za slanje, prijem i time-stampovanje poruka.
  • PC aplikacija za setovanje parametara i prikupljanje rezultata.
Slika 1. Test konfiguracija za user space test
Slika 1. Test konfiguracija za user space test

Suština testa je sledeća: ARM7 ploča lansira niz poruka i beleži odlazno vreme za svaku poruku. ARM9 i PowerPC ploče su podešene da odmah po prijemu GOOSE poruke odgovore sa identičnom porukom sa istim rednim brojem.

ARM7 ploča registruje odgovor i pomoću rednog broja uparuje poruku sa originalnom porukom i računa proteklo vreme.

Slika 2. Analiza vremena
Slika 2. Analiza vremena

Na gornjoj slici može se videti analiza utrošenog vremena. A i B su zanemarljivi. Zbog prirode testa može se precizno meriti 2C+D ali ne možemo tačno znati koliko iznose C i D pojedinačno. No, u krajnjoj liniji to i nije bitno sa stanovišta standarda. Pogledajmo rezultate testa. ARM7 ploča lansira niz GOOSE poruka u razmaku od 100ms. Rezultati se mere i prikazuju u Excel-u.

Da bi rezultat bio što realniji uključena je prekostrujna zaštita. Na Y osi prikazano je vreme u milisekundama a na X osi redni broj GOOSE poruke.

Slika 3. ARM9 100ms (X osa – redni broj poruke, Y osa vreme transfera)

Slika 3. ARM9 100ms (X osa – redni broj poruke, Y osa vreme transfera)

Vidimo da tokom 20 sekundi vreme odgovora osciluje oko 2 milisekunde. Sledeći korak je bio da se uključi još nekoliko zaštitnih funkcija tako da tokom 1 milisekunde zaštita troši 700 μs. Očekivano je da pri većem opterećenju GOOSE performanse opadnu.

To se zaista i dešava kao što možemo videti na sledećoj slici:

Slika 4. ARM9 100ms, 700μs (X osa – redni broj poruke, Y osa vreme transfera)

Slika 4. ARM9 100ms, 700μs (X osa – redni broj poruke, Y osa vreme transfera)

Vreme sada osciluje oko 7 milisekudi. Iako je očekivano da će performanse opasti, ipak je postignuti rezultat iznad očekivanja. 7 milisekundi je i dalje dovoljno za neke aplikacije. Ovo su rezultati sa ARM9 platformu. PowerPC platforma se pokazala nešto bolje, jer ima skoro 2 puta veću procesorsku snagu. Na sledeće 2 slike vidimo rezultate.

Slika 5. PowerPC 100ms (X osa – redni broj poruke, Y osa vreme transfera)

Slika 5. PowerPC 100ms (X osa – redni broj poruke, Y osa vreme transfera)

Slika 6. PowerPC 100ms, 700μs (X osa – redni broj poruke, Y osa vreme transfera)

Slika 6. PowerPC 100ms, 700μs (X osa – redni broj poruke, Y osa vreme transfera)

Pri manjem opterećenju vreme osciluje oko 0.8 ms a pri većem oko 2.5 ms. Kao što vidimo izmerena vremena se kreću u okvirima koji nude solidan dijapazon primena. Na žalost ova vremena važe samo u slučaju da je GOOSE task jedini aktivni task. U slučaju postojanja drugih taskova – na primer disturbance recorder, event recorder, embedded web server, IEC 61850 MMS server itd… vremena postaju nepredvidiva i mogu ići i do 80ms, što je naravno neprihvatljivo.

Real Time Test

Slika 7. Test konfiguracija za real time test

Slika 7. Test konfiguracija za real time test

Mada je real time GOOSE nešto teži za implementaciju, nudi neke značajne prednosti kako ćemo videti. Test okruženje za real time je značajno drugačije. Za testiranje je korišćen mrežni analizator. Program se može besplatno skinuti sa Interneta (1). Suština testa je sledeća: zaštitni relej je podešen da osluškuje poruke koje emituje laptop računar i da momentalno odgovori sa istom vrednošću dataseta koja je u dolaznoj poruci. Kada analiziramo niz poruka u mrežnom analizatoru doći ćemo do momenta kada relej i laptop emituju identičnu vrednost.

Vreme između momenta kada laptop počinje sa emitovanjem i momenta kada relej počne da emituje istu vrednost kao i laptop je traženo vreme.

Na sledećoj slici možemo videti rezultate prikazane u mrežnom analizatoru.

Slika 8. Ethereal mrežni analizator

Slika 8. Ethereal mrežni analizator

Slika 9. Niz GOOSE poruka sa vremenima prijema, mrežnim adresama i oznakom protokola

Slika 9. Niz GOOSE poruka sa vremenima prijema, mrežnim adresama i oznakom protokola

Poruku broj 42 emituje laptop,a poruku 43 relejna zaštita. Ako oduzmemo vremena prijema: 3,757 – 3,753 = 4msec. Pri ponovljenim merenjima rezultat osciluje oko 4ms. Razlog za to je što su taskovi za slanje i prijem podešeni da se bude na svake 2 milisekunde.

Zaključak

Na prvi pogled real time i user space implementacije operišu u sličnim vremenskim okvirima. Ali, postoji ozbiljna razlika. Kod RT implementacije GOOSE task može da deli procesor sa proizvoljnim brojem ostalih taskova kao što je disturbance recorder i sl. Takva arhitektura u mnogome smanjuje krajnju cenu uređaja i daje korisniku više funkcionalnosti. U suprotnom bi GOOSE softver morao da obitava na zasebnom hardveru.

.

AUTOR STRUČNOG TEKSTA:

Veljko Milisavljević | ABS Control Systems, Srbija

Veljko Milisavljević

Veljko Milisavljević

.

Related articles

ANSI CODE : 50BF Circuit Breaker Failure

ANSI CODE : 50BF Circuit Breaker Failure

This function is designed to detect the failure of breakers that do not open when a tripping order is sent. The “breaker failure” protection function is activated by an O1 output tripping order received from the overcurrent protection functions (50/51, 50N/51N, 46, 67N, 67). It checks for the disappearance of current during the time interval specified by the time delay T.

It may also take into account the position of the circuit breaker read on the logic inputs to determine the actual opening of the breaker. Wiring a volt-free closed circuit breaker position contact on the “breaker closed” equation editor input can ensure that the protection is effective in the following situations:

  • When 50BF is activated by protection function 50N/51N (set point Is0 < 0.2 In), detection of the 50BF current set point can possibly be not operational.
  • When trip circuit supervision (TCS) is used, the closed circuit breaker contact is short-circuited. Logic input I102 is therefore no longer operational.

Automatic activation of this protection function requires the use of the program logic circuit breaker control function. A specific input may also be used to activate the protection from the equation editor. That option is useful for adding special cases of activation (e.g. tripping by an external protection unit).
The time-delayed output of the protection unit should be assigned to a logic output via the control matrix.
The starting and stopping of the time delay T counter are conditioned by the presence of a current above the set point (I > Is).

Block diagram
Block diagram – 50BF

Block diagram – 50BF

Example of setting

The example below shows how to determine the time delay setting for the 50BF function Overcurrent protection setting: T = inst. Circuit breaker operating time: 60 ms.
Auxiliary relay operating time to open the upstream breaker or breakers: 10 ms.a

Example of setting

Example of setting using SEPAM relay

The time delay for the 50BF function is the sum of the following times: Sepam O1 output relay pick-up time = 10 ms Circuit breaker opening time = 60 ms Overshoot time for the breaker failure function = 20 ms.

To avoid unwanted tripping of the upstream breakers, choose a margin of approximately 20 ms. This gives us a time delay T = 110 ms.

.

Related articles