IEC 870-5-104 Sinaut

IEC 870-5-104 Sinaut

Protokol IEC 60870-5-104 Sinaut

Podporované typy a verzie zariadení  
Konfigurácia komunikačnej linky
Konfigurácia komunikačnej stanice
Parametre protokolu stanice
Konfigurácia meraných bodov
Tell príkazy
Literatúra
Revízie dokumentu

Podporované typy a verzie zariadení


Protokol je modifikácia protokolu IEC 870-5-104 pracujúcom na báze TCP sieťovej komunikácie. Protokol je upravený špecificky pre redundantnú komunikáciu so systémom Siemens Sinaut Spectrum. Podporuje balancovaný mód a aktívne aj pasívne nadväzovanie komunikácie (pripájajúcu aj čakajúcu stranu) podľa nastavenia parametrov protokolu stanice, preto umožňuje prepojiť nielen systém D2000 so systémom Sinaut, ale aj dva systémy D2000 medzi sebou.

Obrázok: Redundantný systém D2000 komunikujúci s redundantným systémom Sinaut v redundantnej sieti

Obrázok
Obrázok

Obrázok znázorňuje TCP spojenia - každý proces D2000 KOM (D2000 Hot, D2000 StandBy) s každým Sinaut-om (Sinaut Hot, Sinaut StandBy).

Implementácia je podľa normy IEC870-5-104 nasledovná:

  • Originator ASDU address - je 1 bajt, zadáva sa ako číslo linky.

  • ASDU address - je 2 bajty, zadáva sa ako adresa stanice. Každá stanica na jednej linke musí mať rôznu ASDU adresu.

    Poznámka: Kvôli dátovému modelu Sinaut je vymenený horný a spodný bajt adresy oproti štandardnej implementácii IEC 104, t.j. big endian namiesto little endian.
    Príklad:
    adresa stanice=1, pošle sa ASDU address ako bajty 0, 1
    adresa stanice=513 (2*256+1), pošle sa ASDU address ako bajty 2, 1
    Kvôli lepšej orientácii je možné zapisovať adresu stanice v tvare ByteHI,ByteLO, t.j. adresa 2,1 je rovná 513.

  • Cause of transmission - má 2 bajty (obsahuje aj Originator ASDU address)

  • Information object address - 3 bajty, zadáva sa ako adresa meraného bodu

    Poznámka: Kvôli dátovému modelu Sinaut je vymenené poradie bajtov adresy oproti štandardnej implementácii IEC 104, t.j. big endian namiesto little endian.
    Príklad:
    adresa meraného bodu=1, pošle sa ASDU address ako bajty 0, 0, 1.
    adresa meraného bodu=66051(1*256*256+2*256+3), pošle sa ASDU address ako bajty 1, 2, 3.
    Kvôli lepšej orientácii je možné zapisovať adresu meraného bodu v tvare ByteHI,ByteMIDDLE,ByteLO, t.j. adresa 1,2,3 sa pošle ako bajty 1, 2, 3.

Implementované sú nasledujúce ASDU v smere monitorovania (zo Sinautu do D2000, v balancovanom móde aj opačným smerom):

Tab. č. 1

Typ ASDU

Typy meraného bodu

1 - Single-point information

Di, Qi (On/Off), Ai, Ci

2 - Single-point information with time tag

Di, Qi (On/Off), Ai, Ci

3 - Double-point information

Qi, Ai, Ci

4 - Double-point information with time tag

Qi, Ai, Ci

5 - Step position information

Ci, Ai *

6 - Step position information with time tag

Ci, Ai *

7 - Bitstring of 32 bits

Ci, Ai

8 - Bitstring of 32 bits with time tag

Ci, Ai

9 - Measured value, normalized value

Ai

10 - Measured value, normalized value with time tag

Ai

11 - Measured value, scaled value

Ci, Ai

12 - Measured value, scaled value with time tag

Ci, Ai

13 - Measured value, short floating point value

Ai

14 - Measured value, short floating point value with time tag

Ai

15 - Integrated totals

Ci, Ai

16 - Integrated totals with time tag

Ci, Ai

17 - Event of protection equipment with time tag

Ci, Ai, TiR **

18 - Packed start events of protection equipment with time tag

Ci, Ai, TiR ***

20 - Packed single-point information with status change detection

Ci, Ai

21 - Measured value, normalized value without quality descriptor

Ai

30 - Single-point information with time tag CP56Time2a

Di, Qi (On/Off), Ai, Ci

31 - Double-point information with CP56Time2a tag

Qi, Ai, Ci

32 - Step position information with CP56Time2a tag

Ci, Ai *

33 - Bitstring of 32 bits with CP56Time2a tag

Ci, Ai

34 - Measured value, normalized value with CP56Time2a tag

Ai

35 - Measured value, scaled value with CP56Time2a tag

Ci, Ai

36 - Measured value, short floating point value with time tag CP56Time2a

Ai

37 - Integrated totals with time tag CP56Time2a

Ci, Ai

38 - Event of protection equipment with time tag CP56Time2a

Ci, Ai, TiR **

39 - Packed start events of protection equipment with time tag CP56Time2a

Ci, Ai, TiR ***

40 - Packed output circuit information of protection equipment with time tag CP56Time2a

Ci, Ai, TiR ***

Poznámka: Jednotlivé bity bajtu, ktorý hovorí o kvalite (SIQ pre ASDU 1,2,30; DIQ pre ASDU 3,4,31; QDS pre 5..14,20,32..36) sú namapované do flagov A (0.bit), B (1.bit) .. H (7.bit).
Takže napríklad:
pre ASDU 4: A=DPI bit 0, B=DPI bit 1, C=0, D=0, E=BL bit, F=SB bit, G=NT bit, H=IV bit.
pre ASDU 16: A .. E Sequence number bity 0..4, F=CY bit, G=CA bit, H=IV bit

Navyše:

  • ak je nastavený bit IV (Invalid), stav hodnoty bude Invalid,

  • ak je nastavený niektorý z bitov NT (Not topical), SB (Substituted), BL (Blocked), OV (Overflow), CA (Counter adjusted), CY (Counter overflow) pre príslušné typy ASDU, stav hodnoty bude Weak.

* - T-bit z hodnoty z týchto  ASDU ide do flagu FI, do premennej typu Ci/Ai ide číslo -64 .. +63

** - ASDU 17 a 38: bajt SEP ide do flagov A (0.bit), B (1.bit) .. H (7.bit), nasledujúce 2 bajty (CP16Time2a) idú ako kladné číslo (0-60 000) do premennej typu Ci/Ai alebo ako relatívny čas (0-60 sekúnd) do premennej typu TiR

Implementované sú nasledujúce ASDU v smere riadenia (od D2000 do Sinautu, v balancovanom móde aj opačným smerom):

Tab. č. 2

Typ ASDU

Typ meraného bodu

45 - Single command

Dout

46 - Double command

Dout, Co

47 - Regulating step command

Dout

48 - Set point command, normalised value

Ao

49 - Set point command, scaled value

Co

50 - Set point command, short floating point value

Ao

51 - Bitstring of 32 bit

Co

58 - Single command with time tag CP56Time2a

Dout

59 - Double command with time tag CP56Time2a

Dout, Co

60 - Regulating step command with time tag CP56Time2a

Dout

61 - Set point command, normalised value with time tag CP56Time2a

Ao

62 - Set point command, scaled value with time tag CP56Time2a

Co

63 - Set point command, short floating point value with time tag CP56Time2a 

Ao

64 - Bitstring of 32 bit with time tag CP56Time2a

Co

Na nastavenie bitov "stavového" bajtu (SCO pre ASDU 45,58; DCO pre ASDU 46,59; RCO pre ASDU 47,60; QOS pre ASDU 48..50,61..63) sa používajú flagy A (0.bit), B (1.bit) .. H (7.bit) s výnimkou bitov, ktoré sú priamo nastavované hodnotou premennej ( SCO bit 0, DCO a RCS bity 0-1). Po prijatí odpovede (pozitívnej/negatívnej) sa flagy A .. H nastavia na základe bitov "stavového" bajtu.

Pri zápise príkazov (ASDU 45-64) sa ako CauseOfTransmission používa hodnota 6 [Activation]. Či sa očakáva odpoveď od riadenej stanice, závisí od nastavenia parametra CMDC. Existujú tieto možnosti:

  • zápis sa považuje za úspešný, keď príde paket s RSN potvrdzujúcim SSN paket so zápisom,

  • zápis sa považuje za ukončený, keď príde odpoveď s CauseOfTransmission=7 [Activation Confirmation] a/alebo 10 [Activation Termination]. Úspešnosť/neúspešnosť závisí od nastavenia P/N bitu v CauseOfTransmission.

Základné vlastnosti redundantnej komunikácie so systémom Siemens Sinaut:

  • Jedna linka typu TCP/IP-TCP Redundant komunikuje s dvoma redundantnými partnermi Sinaut, jeden z nich je HOT, druhý STANDBY.

  • S každým partnerom sa komunikuje po dvoch redundantných sieťach (t.j. vytvárajú sa 2 TCP spojenia pre každý Sinaut, spolu 4 TCP spojenia).

  • Iba HOT účastník komunikácie (D2000 resp. Sinaut) posiela nové hodnoty a odpovedá na ASDU 100 [Interrogation Command]. STANDBY účastník po nadviazaní spojenia posiela iba potvrdenia (S-framy) a testovacie framy. Aj standby účastník môže vyslať ASDU 100 [Interrogation Command].

  • Každý účastník komunikuje s partnerom iba cez jedno TCP spojenie. Cezeň posiela nové hodnoty, potvrdenia príkazov, ASDU 100 aj odpovede na ASDU 100. Druhé spojenie je nečinné (posielajú sa cezeň testovacie framy) a použije sa až pri detekcii výpadku prvého spojenia.

Nadväzovanie spojenia: 

  • V aktívnom režime sa proces D2000 KOM pripojí na špecifikované TCP porty. Na každý pošle U-frame StartDT Act, ako odpoveď očakáva StartDT Con.

  • V pasívnom režime proces D2000 KOM čaká na špecifikovanom TCP porte (viď parametre SP, SH). Po pripojení sa klientov čaká na U-frame StartDT Act, ako odpoveď posiela StartDT Con.

  • Ďalšia komunikácia je úplne symetrická. Obaja partneri môžu vyslať ASDU 100 [Interrogation Command] na načítanie všetkých aktuálnych hodnôt, a následne prijímajú a posielajú zmenené hodnoty a príkazy.

Po nadviazaní spojenia môže poslať účastník I-frame s ASDU 100 [Interrogation Command] s CauseOfTransmission=6 [Activation] a s ASDUAddres=FFFF, čím žiada hodnoty meraných bodov pre všetky stanice. Ako odpoveď očakáva:

  • prijatie I-frame s ASDU 100 [Interrogation Command] a s CauseOfTransmission= 7 a ASDUAddres=FFFF

  • prijatie aktuálnych hodnôt všetkých meraných bodov

  • prijatie I-frame s ASDU 100 [Interrogation Command] a s CauseOfTransmission= 10 a ASDUAddres=FFFF

Vynútené prerušenie spojenia: Keď sa všetky komunikačné stanice na linke dostanú do simulácie alebo majú zastavenú komunikáciu, komunikačná linka sa odpojí (dôjde ku zavretiu komunikačných socketov). Keď aspoň jedna stanica bude mať vypnutú simuláciu a nebude mať zastavenú komunikáciu (záložka Parametre objektu typu Stanica), linka sa znovu pripojí (a pošle sa Interrogation Command resp. Counter Interrogation Command na túto aktívnu stanicu). Následne po zapnutí každej ďalšej stanice sa pošle na ňu Interrogation Command, resp. Counter Interrogation Command, viď ďalší odstavec.

Vynútené zaslanie Interrogation Command resp. Counter Interrogation Command: Keď sa stanica dostane do stavu, že nie je v simulácii a nemá zastavenú komunikáciu (záložka Parametre objektu typu Stanica), pošle proces D2000 KOM Interrogation Command a/alebo Counter Interrogation Command (viď parametre OIC, OCIC).

Protokol IEC870-5-104 Sinaut podporuje balancovaný mód popísaný v protokole IEC 870-5-104 a teda je sčasti server, preto platia preň pravidlá pre serverovské protokoly.

Konfigurácia komunikačnej linky


  • Kategória komunikačnej linky: TCP/IP-TCP Redundant

  • TCP parametre:

    • Host: string max. 80 znakov – dve čiarkou oddelené IP adresy servera vo formáte a.b.c.d
      V aktívnom režime sú to adresy servera, na ktorý sa KOM proces pripája.
      V pasívnom režime (viď parametre SP, SH) sú to IP adresy klienta, ktoré proces D2000 KOM akceptuje (v prípade pripojenia sa klienta z inej IP adresy, bude tento hneď odpojený).

    • Port: číslo TCP portu (0 až 65535)
      V aktívnom režime je to port servera, na ktorý sa proces D2000 KOM pripája.
      V pasívnom režime (viď parametre SP, SH) je tento parameter ignorovaný (ale musí byť nastavený, napr. na hodnotu 0).

    • Číslo linky: použije sa ako Originator ASDU address (1 bajt, 0-255).

Konfigurácia komunikačnej stanice


  • Komunikačný protokol: IEC870-TCP Sinaut.

  • Adresa stanice je dekadické číslo v rozsahu 0 až 65535, určuje adresu ASDU.
    Kvôli lepšej orientácii je možné zapisovať adresu stanice v tvare ByteHI,ByteLO, t.j. adresa 2,1 je rovnaká ako 513 (2*256 + 1). Viď poznámku o adrese ASDU.

Poznámka: Protokol podporuje posielanie dlhých časových značiek (CP56Time2a tag) v lokálnom čase alebo v UTC čase s definovaným posunom podľa nastavenia stanice (pozri parameter Použi monotónny čas UTC+).

Parametre protokolu stanice


Dialóg konfigurácia stanice - záložka Parametre protokolu.
Ovplyvňujú niektoré voliteľné parametre protokolu. Môžu byť zadané nasledovné parametre protokolu stanice:

Tab. č. 3

Parameter

Popis

Jednotka

Náhradná hodnota

Command Confirm

Potvrdzovanie riadiacich ASDU.
Ak CMDC=0, proces D2000 KOM neočakáva potvrdzovanie riadiacich ASDU od partnerskej stanice spätným poslaním ASDU s inou CauseOfTransmission, ASDU sa považuje za potvrdenú keď sa príjme paket s príslušným ReceiveSequenceNumber.
Ak CMDC=1, proces D2000 KOM očakáva potvrdenie s CauseOfTransmission=7 (Activation Confirmation).
Ak CMDC=2, proces D2000 KOM očakáva potvrdenie s CauseOfTransmission=10 (Activation Termination).
Ak CMDC=3, proces D2000 KOM očakáva potvrdenie s CauseOfTransmission=7 alebo 10 (ak dôjdu obe, berie sa do úvahy prvé z nich).
Až po prijatí príslušného potvrdenia sa považuje zápis za ukončený (zhodí sa príznak Transient zapisovanej hodnoty a prestane plynúť timeout WTn).
Ak príde potvrdenie s iným CauseOfTransmission, ako proces D2000 KOM očakáva, je ignorované.
Zápis je považovaný za úspešný, ak v prijatej ASDU je P/N bit nastavený na 0. V opačnom prípade je zápis považovaný za neúspešný.
Hodnota z prijatej ASDU je spätne zapísaná do príslušného meraného bodu a ide do systému. Takže napr. ak je zaslaná ASDU typ 50 (short floating point) s hodnotou 1200.0 a partnerská stanica pošle ako odpoveď ASDU typ 50, P/N bit=0, hodnota 999.0 (napr. kvôli fyzikálnym obmedzeniam na danú veličinu), tak túto hodnotu pošle proces D2000 KOM ďalej.

-

3

Debug Input

Maska pre úrovne debugovania vstupných dát. Jednotlivé bity majú nasledovný význam:

  • 1. bit - zobrazenie počtu bodov prijatých v rámci General Interrogation

  • 2. bit - zobrazenie prijatých hodnôt meraných bodov

  • 3. bit - balancovaný mód: bol prijatý Interrogation command

  • 4. bit - informácie o zahodených hodnotách z dôvodu nastavenia parametra Ignore Flagged

0 .. 255

0

Debug Output

Maska pre úrovne debugovania výstupných dát. Jednotlivé bity majú nasledovný význam:

  • 1. bit - balancovaný mód: zobrazenie počtu bodov odoslaných v rámci General Interrogation

  • 2. bit - zobrazenie odoslaných hodnôt meraných bodov

0 .. 255

0

ICCP compatible flags

Povoľuje mapovanie flagov kompatibilných so Sinaut Spectrum ICCP OPC komunikáciou. Bližšie info viď ICCP kompatibilné mapovanie flagov.

YES/NO

NO

Ignore Flagged

Parameter umožňuje špecifikovať príznaky hodnôt (dátových ASDU 1-40), ktoré - ak budú nastavené - spôsobia, že príslušná hodnota bude zahodená. Parameter bol implementovaný, keď bolo nutné odfiltrovať hodnoty s príznakom "Non-topical" (mapované do flagu G), ktoré prišli od komunikačného partnera.

Mapovanie jednotlivých príznakov z ASDU do flagov A..H je nasledovné:

  • A - Overflow (OV) - ASDU 5-14, 20, 32-36

  • B - bez mapovania (podľa normy bit má byť 0)

  • C - bez mapovania (podľa normy bit má byť 0)

  • D - Elapsed time Invalid (EI): ASDU 17-19, 38-40

  • E - Blocked (BL) - ASDU 1-14, 17-20, 30-36, 38-40

  • F - Substituted (SB)- ASDU 1-14, 17-20, 30-36; Counter overflow (CY)  - ASDU 15, 16, 37

  • G - Non-topical (NT) - ASDU 1-14, 17-20, 30-36; Counter adjusted (CA)  - ASDU 15, 16, 37

  • H - Invalid (IV) - ASDU 1-20, 30-40

A..H

-

Ignore Unknown Addresses

Ak je hodnota parametra True, proces D2000 KOM nebude hlásiť chybu (na konzole ani do logovacích súborov) v prípade, že príde hodnota s adresou, ktorej nezodpovedá žiaden meraný bod.

YES/NO

NO

Interrogation Covers Counter Interrogation

Ako odpoveď na Interrogation sa posielajú aj ASDU 15,16,37 (Integrated Totals), ktoré sú štandardne vyžiadané ASDU 101 [Counter Interrogation].

YES/NO

YES

K (max outstanding I APDUs)

Veľkosť vysielacieho okna, t.j. množstvo paketov, ktoré proces D2000 KOM odošle bez prijatia potvrdenia (S-framu alebo I-framu). Podľa normy je prednastavené K=12.

-

12

No Flags

Ak je hodnota parametra True, potom sa stavový bit prichádzajúcich ASDU ignoruje a neukladá do príznakov A .. H. Zároveň sú ignorované príznaky výstupných meraných bodov a stavový bit sa nenastavuje podľa nich.

YES/NO

NO

Order of IC

Poradie posielania ASDU 100 [Interrogation Command] pri prechode stanice do komunikácie alebo pri vytvorení novej stanice. Ak je OIC<OCIC, pošle sa ASDU 100 pred ASDU 101. Ak je OIC=0, ASDU 100 sa neposiela. Parameter je nastaviteľný a platný zvlášť pre každú stanicu.

-

1

Order of Counter IC

Poradie posielania ASDU 101 [Counter Interrogation Command] pri prechode stanice do komunikácie alebo pri vytvorení novej stanice. Ak je OCIC<OIC, pošle sa ASDU 101 pred ASDU 100. Ak je OCIC=0, ASDU 101 sa neposiela. Parameter je nastaviteľný a platný zvlášť pre každú stanicu.

-

0

Ping Count

Počet opakovaní, po ktorých ak IP adresa neodpovedá na ping, je označená ako nefunkčná. Viď parameter PTO.

-

3

Ping TimeOut

Ak je tento parameter nenulový, tak udáva timeout (v milisekundách) na odpoveď servera na ping (ICMP echo) paket. Proces D2000 KOM v pozadí pinguje všetky štyri nakonfigurované IP adresy. Ak niektorá IP adresa PCNT-krát po sebe neodpovie, je označená ako nefunkčná a spojenie je ukončené. Ak je parameter PTO= 0, pingovanie IP adries nie je aktívne.

-

0

Post Start Delay

Oneskorenie pri inicializácii spojenia medzi prijatím odpovede StartDT Con a zaslaním Interrogation Command a/alebo Counter Interrogation Command.

ms

0

Send Sequence Number

Počiatočné SSN. Podľa normy sa po vytvorení spojenia nastavuje SSN na 0, iné ako nulové SSN môže byť vhodné napr. na testovanie.

-

0

Server Port, Server Host

Číslo portu a IP adresa rozhrania, na ktorom má proces D2000 KOM počúvať. Ak sú zadané oba parametre, proces D2000 KOM funguje ako pasívny (čaká na pripojenie sa klientov Sinaut). Ak má počúvať na všetkých sieťových rozhraniach, treba nastaviť hodnotu parametra na ALL alebo *.

-

 

Standby Keep Open

Ak je True, po prechode procesu D2000 Server, ku ktorému je proces D2000 KOM pripojený, z Hot do Standby stavu (redundantný systém) sa nezatvorí spojenie so druhou stranou.

-

True

Station Communication Error

Comments