B&R PVI Interface (Bernecker & Rainer Process Visualisation Interface)
Popis protokolu
Konfigurácia komunikačnej linky
Konfigurácia komunikačnej stanice
Konfigurácia meraných bodov
Literatúra
Zmeny a úpravy
Revízie dokumentu
Popis protokolu
Protokol B&R PVI Interface slúži na komunikáciu s PLC B&R pomocou rozhrania PVI od firmy Bernecker & Rainer. Podporená je nasledovná fukncionalita:
- čítanie aj zápis meraných bodov,
- čítanie a zápis jednoduchých typov (i8, i16, i32, i64, u8, u16, u32, u64, boolean, string, wstring, time, dt, date, tod),
- práca s položkami (ktoré sú jednoduchých typov) štruktúrovaných premenných,
- čítanie polí do štruktúrovaných meraných body s nakonfigurovaným cieľovým stĺpcom štruktúry.
Zatiaľ nie je podporená práca s dátovým typom "data".
Komunikácia bola testovaná voči virtuálnemu aj fyzickému B&R PLC s PVI verziami:
- Automation Net PVI V4.0
- Automation Net PVI V4.2
- Automation Net PVI V4.3
- Automation Net PVI V4.7
Hierarchia objektov PVI
B&R PVI definuje nasledovnú hierarchiu objektov pre linku INA2000, ktorá sa používa na komunikáciu s riadiacimi jednotkami B&R SG3, SGC a SG4 prostredníctvom protokolu INA2000 (Industrial Network Architecture).
Objekty typu Line a Device sú konfigurované v protokolových parametrov komunikačnej linky D2000.
Objekty typu Station, CPU, Module a Task sú konfigurované v protokolových parametrov komunikačnej stanice D2000.
Objekty typu Variable sú konfigurované ako merané body D2000.
Konfigurácia komunikačnej linky
- Kategória linky: API
Parametre protokolu linky
Pre protokol "B&R PVI Interface" je možné konfigurovať nasledovné globálne parametre protokolu linky:
Názov | Popis | Jednotka | Náhradná hodnota | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
--- PVI Parameters --- | |||||||||||||||||||
Communication timeout | Parameter pre funkciu PviXInitialize (inicializácia PVI rozhrania). Časový limit komunikácie pre komunikáciu klient/server (aplikácia / PVI Manager) v sekundách. Hodnota zadaná v tomto parametre slúži ako predvolené nastavenie inicializačného parametra COMT. Ak nie je požadované žiadne prednastavenie, mala by sa zadať predvolená hodnota 0. | sec | 0 | ||||||||||||||||
Retry time | Parameter pre funkciu PviXInitialize (inicializácia PVI rozhrania). Čas opakovania pre užívateľské správy PVICOM v sekundách. Hodnota zadaná v tomto argumente funkcie slúži ako predvolené nastavenie inicializačného parametra RETR. Ak nie je požadované žiadne prednastavenie, mala by sa zadať predvolená hodnota 0. | sec | 0 | ||||||||||||||||
Initialization parameter string | Parameter pre funkciu PviXInitialize (inicializácia PVI rozhrania).
| - | - | ||||||||||||||||
Line object definition | Parameter ObjectDescriptor pre funkciu PviXCreate pri vytváraní objektu Line. | - | CD=LnIna2 | ||||||||||||||||
Device object definition | Parameter ObjectDescriptor pre funkciu PviXCreate pri vytváraní objektu Device. Parameter udáva popis zariadenia. Prednastavená hodnota CD="/IF=tcpip /SA=1" vytvorí spojenie s použitím TCP/IP (UDP), zdrojová adresa (adresa D2000 KOM-u) bude 1. Dokumentácia PVI popisuje parametre pre jednotlivé typy zaríadení (Serial, Ethernet UDP, Modem, CAN device, Profibus FDL device). | sec | 30 | ||||||||||||||||
--- Other Parameters --- | |||||||||||||||||||
Browse tasks | Parameter ovplyvňuje rozsah browsovania využívaného pri konfigurácii meraných bodov. | YES/NO | NO | ||||||||||||||||
Inactivity timeout | Ak je hodnota parametra nenulová, tak v rámci periodického čítania hodnôt v rámci stanice sa kontroluje, či za posledných "Inactivity timeout" sekúnd bola prijatá nejaká hodnota ľubovolnou stanicu na linke. Ak nie, bude spojenie s PVI Managerom rozpojené a znovu nadviazané. Pozn: parameter sa dá použiť na zrýchlenie detekcie komunikačných problémov. Pokiaľ chodia hodnoty meraných bodov zriedkavo, odporúčame vytvoriť výstupný meraný bod, do ktorého bude každých niekoľko sekúnd zapisovaná hodnota. | sec | 0 | ||||||||||||||||
Cleanup command | Parameter umožňuje spustenie dávkového súboru pri (re)štarte komunikácie. Tento dávkový súbor môže napr. reštartovať proces PVI Manager (PviMan.exe) - napr. pomocou utility pskill.exe alebo pomocou Windows utility "sc", ak je PVI Manager spustený ako servis. Reštartovanie pomáha, ak sa napríklad PVI Manager dostane do stavu "Locked". V názve dávkového súboru môže byť použitá symbolická konštanta #APPDIR#, ktorá udáva aplikačný adresár, napr. #APPDIR#cleanup.bat | - | - | ||||||||||||||||
Cleanup timeout | Čas v sekundách, do ktorého musí dávkový súbor zadaný parametrom Cleanup command skončiť. Po uplynutí tohto timeoutu bude dávkový súbor ukončený. | sec | 10 | ||||||||||||||||
Post create delay | Oneskorenie po vytvorení každého objektu. Tento parameter slúži na spomalenie nábehu komunikácie kvôli ladeniu a diagnostike. | sec | 0,0 | ||||||||||||||||
Asynchronous write/create | Parameter určuje spôsob komunikácie s PVI Managerom pri vytváraní objektov a pri zápise hodnôt. Odporučaný je asynchrónny spôsob, synchrónny je implementovaný iba kvôli ladeniu a diagnostike. Synchrónny spôsob práce je navyše nepodporený PVI Managerom z viacerých threadov, preto ho je možné použiť iba pri jedinej linke B&R. | YES/NO | YES | ||||||||||||||||
Value Debug | Zapnutie výpisu čítaných a zapisovaných hodnôt a názvov meraných bodov. | YES/NO | NO | ||||||||||||||||
Full Debug | Výpis dodatočných ladiacich informácií o komunikácii na linke. | YES/NO | NO |
Konfigurácia komunikačnej stanice
- Komunikačná stanica zodpovedá zariadeniu, s ktorým KOM proces komunikuje. Na úrovni parametrov protokolu stanice sa špecifikujú objekty typu Station, CPU, Module, a Task.
- Komunikačný protokol "B&R PVI Interface".
Parametre protokolu stanice
Parameter | Popis | Jednotka | Náhradná hodnota | |||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Station object definition | Definícia objektu typu Station. Pre linku typu INA2000 nie je nutné konfigurovať (parameter má využitie na linkách typu NET2000, DCAN, MODBUS a SNMP). | - | - | |||||||||||||||||||||||||||||||||||||||||||||||
CPU object definition | Definícia objektu typu CPU. Prednastavená hodnota CD="/DAIP=127.0.0.1 /REPO=11160 /RT=1000" vytvára spojenie na lokálne bežiace (/DAIP=127.0.0.1) virtuálne PLC na porte 11160 (/REPO=11160), s timeoutom na odpoveď 1000 ms (/RT=1000). Podľa dokumentácie PVI existujú tieto použiteľné parametre pre UDP komunikáciu:
| - | CD="/DAIP=127.0.0.1 /REPO=11160 /RT=1000" | |||||||||||||||||||||||||||||||||||||||||||||||
Module object definition | Definícia objektu typu Module. Parameter umožňuje vytvorenie spojenia na modul v rámci PLC. Príklady:
| - | - | |||||||||||||||||||||||||||||||||||||||||||||||
Task object definition | Definícia objektu typu Task. Parameter umožňuje vytvorenie spojenia na task (program) v rámci PLC. Merané body, ktoré sú potomkami stanice, reprezentujú globálne premenné PLC a lokálne premenné tasku, ktorý je zadaný týmto parametrom. Pre každý task v rámci PLC je teda nutné konfigurovať samostatnú stanicu. Ak parameter nie je zadaný, sú dostupné iba globálne premenné PLC. | - | - |
Konfigurácia meraných bodov
Možné typy hodnôt bodov: Ai, Ao, Di, Do, Ci, Co, TiR, ToR, TiA, ToA, TxtI, TxtO.
Adresa meraného bodu:
Meraný bod zodpovedá objektu typu Variable.
Adresa meraného bodu je v tvare Parameter1=hodnota1 [Parameter2=hodnota2] ...
Povinné zadávané parametre sú CD=variable_name VT=typ_hodnoty. Pre reťazce (VT=string a VT=wstring) je povinný aj VL=element_length. Pre polia hodnôt je povinný aj VN=number_of_elements.
Pozn: meraný bod je ignorovaný, ak jeho adresa začína %IGNORE
Podľa dokumentácie PVI sú podporené tieto parametre:
Parameter | Description |
---|---|
CD | Connection description |
EV | Definition of the enable mask for events. Default: "EV=ed".
If no events should be enabled, then specify "EV=". |
AT | Object attributes. Default: "AT=rw"
|
RF | Refresh rate in ms. Default: "RF=1000".
|
VT | Variable type (Data format description). Default in the process object: "VT=i32"
|
VL | Variable length in bytes (data format description). This parameter can only be specified together with the VT parameter. For single variables, the variable length corresponds to the process data length. For array variables, the variable length is defined as the element length. This parameter does not need to be specified when used in conjunction with variable types which have a fixed variable length (e.g. VT=i32 always has a variable length of 4 bytes). |
VN | The number of elements in array variables (data format description). Default: VN=1. This parameter can only be specified together with the VT parameter. |
VS | Optional additional specification of the variable type (Data format description). This parameter can only be specified together with the VT parameter. The VS parameter provides additional information about the variable type (VT parameter), and does not affect how data is handled (data functions, type changes, etc.) in PVI. Each additional specification consists of one or more specification IDs ('a' - 'z'). The individual specification IDs are separated by semicolons (';'). The following additional specifications are currently defined: 'a' ... array variable, 'b' ... bit string, 'e' ... enumeration, 'v' ... derived data type. |
AL | Structure alignment. Default: "AL=1". This parameter only takes effect in connection with variable type "VT=struct". Alignment values 1, 2, 4, 8, or 16 can be defined. |
CM | Mode for type casting (cast mode). Default: "CM=0". The mode is defined as a bit list and controls type casting between link and process objects.
|
VA | Variable addressing. Default: No variable addressing Using variable addressing, link objects can address subsets from the process data of a variable object. |
DV | The default value for single variables (process data). This parameter can be used to assign a default data value to process variable objects of type Integer, Floating Point, Boolean, or String. If this parameter is specified, then a data format also has to be defined in the object description. This default value is only written to the process image but is not transferred to the PLC. Examples: DV=123, DV=2.561e10, DV="string format" |
HY | Assigned event hysteresis. Default: No hysteresis Definition of event hysteresis for single variables or array variables of type Integer or Floating Point. Event hysteresis is specified as a hysteresis value. Examples: HY=10, HY=2.5 |
FS | Assigned data function. Default: No function Definition of a data function for single variables or array variables of type Integer or Floating Point. The data function is specified as a function description. |
UT | A user tag. With user tags, PVI applications can assign a private user code or specific user data to a process object (module, task, or variable object) in the form of a string. User tags are only managed by PVI, not evaluated. |
Príklady konfigurácie:
- CD=gByte VT=u8 RF=10 - 1-bajtová premenná gByte bez znamienka, 10 ms refresh rate
- CD=gMyInt VT=i16 HY=5 - 2-bajtová premenná gByte so znamienkom, s hysteréziou 5 (menšia zmena ako 5 nebude reportovaná)
- CD=gDate RF=250 AT=rw VT=date - premenná gDate typu dátum, prístup na čítanie a zápis, 250 ms refresh rate
- CD=gmArrInt VT=i16 VN=6 - premenná gmArrInt typu pole 16-bitových integerov, bude čítaných prvých 6 položiek poľa
Pozn: Aby malo zmysel čítanie viac ako jednej položky poľa, je nutné nakonfigurovať cieľový stĺpec štruktúry.
Pozn: Takáto premenná je určená iba na čítanie. Ak je potrebný zápis, je nutné nakonfigurovať každú položku poľa ako samostatný meraný bod (viď ďalší príklad). - CD=gmArrInt[0] VT=i16 - nultá položka poľa 16-bitových integerov gmArrInt (polia v B&R PLC štandardne začínajú nultou položkou podobne ako v jazyku C)
- CD=string_arr RF=250 AT=rw VT=string VL=6 VN=5 - premenná string_arr typu pole 6-bajtových reťazcov, bude čítaných prvých 5 položiek poľa, 250 ms refresh rate
Pozn: Ak má reťazec typu string 6 bajtov, zmestí sa doň iba 5 znakov (posledný bajt je ukončovacia nula). - CD=wstring_arr VT=wstring VL=42 VN=4 - premenná wstring_arr typu pole širokých (2-bajtových) reťazcov, budú čítané prvé 4 položky poľa
Pozn: Ak má reťazec typu wstring 42 bajtov, zmestí sa doň iba 20 2-bajtových znakov (posledné 2 bajty je ukončovacia nula). - CD=Controll.cmd.SetPoint VT=f32 VL=4 VN=1 - položka SetPoint podštruktúry cmd štruktúrovanej premennej Controll je 32-bitové reálne číslo.
Browse
Pre merané body je možné zistiť zoznam objektov typu Variable a ich dátové typy a iné detaily, pokiaľ KOM proces beží a komunikácia so stanicou je nadviazaná.
Po kliknutí na tlačidlo Browse sa otvorí okno B&R PVI Item Browser a načíta sa zoznam objektov.
Obr - okno B&R PVI Item Browser
V okne sú zobrazené nasledovné informácie:
Task: názov tasku (ak sa jedná o lokálnu premennú), prípadne prázdny reťazec (ak sa jedná o globálnu premennú). Štandardne sú načítané iba lokálne premenné patriace tasku zadanému ako parameter Task object definition. Pokiaľ je zapnutý parameter Browse tasks, sú načítané lokálne premenné všetkých taskov.
Variable: názov premennej v B&R PLC (hodnota parametra CD)
Parameters: ďalšie parametre premennej (viď konfiguráciu meraného bodu)
Point: názov meraného bodu, ktorý je nakonfigurovaný pre tento objekt.
Filtrovanie v zozname objektov: prehľadávací dialóg umožňuje filtrovanie podľa hodnôt zobrazených v jednotlivých stĺpcoch. Nie je potrebné zadať ich celé. Postačuje zápis *FILTROVANÝ VÝRAZ*, kde hviezdičky reprezentujú ľubovoľný text pred začiatkom a koncom výrazu (napr. *put* zahŕňa input aj output).
Celkový počet objektov: v ľavej spodnej časti okna je zobrazený celkový počet objektov vo všetkých skupinách objektov.
Význam jednotlivých volieb a tlačidiel:
Copy all to clipboard
Skopírovanie zobrazených objektov a podrobností do schránky Windows - Clipboardu.
Refresh
Tlačidlom Refresh je možné vynútiť znovunačítanie zoznamu objektov zo zariadenia. Štandardne KOM proces načíta zoznam objektov iba pri prvej požiadavke a uchová ho v pamäti. Toto načítanie môže trvať v závislosti od počtu objektov a rýchlosti zariadenia dlhší čas. Následne posiela procesu/procesom CNF tieto uchované zoznamy, takže ďalšie naplnenie zoznamu v okne B&R Item Browser je už rýchle.
Cancel
D2000 Cnf má implementované recyklovanie prehliadacieho dialógu. Pokiaľ je dialóg zavretý tlačidlom Cancel alebo po výbere objektu, v skutočnosti je iba skrytý a je k dispozícii pre browsovanie iného meraného bodu v rámci tej istej stanice, takže sa zachová zoznam prehliadaných objektov. Kliknutie na krížik vpravo hore spôsobí skutočné zavretie dialógu.
V prípade štruktúrovaných premenných sa v okne zobrazia jednotlivé položky, ktoré sú základných typov. Pokiaľ sa browsujú lokálne premenné všetkých taskov (parameter Browse tasks), lokálne premenné nepatriace tasku zadanému ako parameter Task object definition budú zobrazené šedou farbou a nebudú sa dať vybrať. Položky štruktúrovaných premenných aj lokálne premenné iných taskov zobrazuje nasledujúci obrázok:
Literatúra
PVI Base system - B&R documentation
Blog
O protokole B&R PVI protocol si môžete prečítať aj blog:
Zmeny a úpravy
-
Revízie dokumentu
Ver. 1.0 – 1.4.2021 - vytvorenie dokumentu
Súvisiace stránky:
Pridať komentár