Porovnávané verzie

Kľúč

  • Tento riadok sa pridal
  • Riadok je odstránený.
  • Formátovanie sa zmenilo.

...

Protokol B&R PVI Interface slúži na komunikáciu s PLC B&R pomocou rozhrania PVI od firmy Bernecker & Rainer. Podporené sú čítanie aj zápis. Podporené je čítanie a zápis jednoduchých typov (i8, i16, i32, i64, u8, u16, u32, u64, boolean, string, wstring, time, dt, date, tod). Podporená je aj práca s položkami štruktúrovaných premenných. Podporené je čítanie polí do štruktúrovaných meraných body s nakonfigurovaným cieľovým stĺpcom štruktúry.

Nie Zatiaľ nie je podporená práca s dátovým typom "data".

Komunikácia bola testovaná voči virtuálnemu B&R PLC s PVI verziami:

  • Automation Net PVI V4.2
  • 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, Module Task sú konfigurované v protokolových parametrov komunikačnej stanice D2000.

Objekty typu Variable sú konfigurované Variable sú konfigurované ako merané body D2000.


Kotva
komunikacna_linka
komunikacna_linka
Konfigurácia komunikačnej linky

...

  • 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".

...

Max PointsMax Data BytesNetwork No.Request destination module I/O No.Request destination module station No.Retry CountRetry TimeoutWait TimeoutFull DebugText Debug
ParameterPopisJednotkaNáhradná
hodnota
--- Address Parameters ---

Kotva
s
s
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).

--

Kotva
c
c
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 sú ďalšie existujú tieto použiteľné parametre pre UDP komunikáciu: 

ParameterValuesSettingDescription
/DA1-2557Station number of the target station.
Automatic identification of the target station from the station number. The station number must be unique within the INA2000 network. The highest station number is 99 for SG3 and SGC with AR Version < 2.00, or 255 for SG4 and SGC with AR Version >= 2.00.
Example: "/DA=56".
/DAIPIP address,
Host name
NoneThe IP address of the target station.
Manual identification of the target station from the IP address or identification from the hostname (DNS, only possible for SG4).
Examples: "/DAIP=68.10.10.27" ... IP address, "/DAIP=CP340su" ... Hostname.

Specifying the parameter /DA depends on whether the parameter /DAIP is specified:
If the parameter /DAIP is not specified, then the parameter /DA must always be specified. If the parameter /DAIP is specified as an IP address, the parameter /DA is optional. If /DA is specified, however, the defined station number must be correct. If the /DAIP parameter is specified as a hostname, the /DA parameter is ignored.

/RT0 - 65535275

Response timeout in ms.
If a response to a sent frame is not received with this time, then the frame is transferred again. After the third retry, the connection is deemed canceled. The time in which an interrupted connection is detected is a result of ResponseTimeout * 4.
Setting /RT=0 uses the INA2000 default value (275 ms).
Example: "/RT=400".

Recommended values:

20 - 250...For simple point-point connections, or connections via a local network with pure variable communication on SG4 controllers with sufficient idle time, with AR 3.00 and higher.
250 - 500...For connections via a local network with pure variable communication to any target systems / AR versions.
500 - 750...For connections via a local network with PLC services running (e.g. Automation Studio project transfer).
750 - 1500...For connections via an in-house network.
1500 - 5000...For connections via Intranet/Internet.


REPO1025 - 3276711159IP port number of the target station.
If the value is specified in Hexadecimal, then "0x" must be used to introduce the value (e.g. "/LOPO=0x2b97").
The port number must match the setting on the target station (PLC).
Example: "/REPO=11159".
/CKDA0 / 11Enables or disables the check to see if the target station number (parameter /DA) is unique.
The parameter /CKDA is irrelevant if used together with the parameter /DAIP (check is always disabled).
Example: "/CKDA=0" ... Checking is disabled.
/ANSL0 / 1*)Turn on/off fast TCP download/upload via ANSL.
Example: "/ANSL=0" ... Download/upload via ANSL is turned off.
/APN1025 - 3276711169ANSL IP port number of the target station (peer station) for fast TCP download/upload.
Example: "/APN=11169".


-CD="/DAIP=127.0.0.1 /REPO=11160 /RT=1000"

Kotva
m
m
Module object definition

Definícia objektu typu Modul. Parameter umožňuje vytvorenie spojenia na modul v rámci PLC. 
Syntax parametra CD:
/RO=[<Name of application module>::]<Module name>
alebo
[<Name of application module>::]<Module name>

Príklady:

  • CD="/RO=Module1"
  • CD="/RO=Generator::Module1"
  • CD=Module2
  • CD=Generator::Module2
--

Kotva
mttmt
Monitoring Timer

250 ms16
Kotva
mpmp-480
Kotva
mdmdbyte512
Parametre routovania pre 3E/4E
Kotva
nnnnČíslo cieľovej siete (pre multidrop systémy/stanice na vzdialených sieťach). Hodnota sa zadáva dekadicky a je v rozmedzí 0-255.  Pri komunikácii s priamo pripojenou stanicou sa zadáva hodnota 0. Iné hodnoty (viď dokumentácia) sa zadávajú pri komunikácii so stanicami nachádzajúcimi sa na iných segmentoch siete (môže sa jednať aj o sériové linky) umiestnených za priamo pripojenou stanicou. Viac informácií viď Literatúra.-0
Kotva
dmdmČíslo cieľového I/O modulu (pre multidrop/multiCPU/redundantné systémy). Hodnota sa zadáva hexadecimálne a je v rozmedzí 0000-FFFF. Pri komunikácii s priamo pripojenou stanicou sa zadáva hodnota 03FF.  Iné hodnoty (viď dokumentácia) sa zadávajú pri komunikácii so stanicami nachádzajúcimi sa na iných segmentoch siete (môže sa jednať aj o sériové linky) umiestnených za priamo pripojenou stanicou, v prípade multidrop spojení a v prípade práce s redundantnými PLC a s PLC s viacerými CPU. Viac informácií viď Literatúra.-03FF
Kotva
dsdsČíslo cieľovej stanice (pre multidrop/multiCPU/redundantné systémy). Hodnota sa zadáva hexadecimálne a je v rozmedzí 00-FF. Pri komunikácii s priamo pripojenou stanicou sa zadáva hodnota 00.  Iné hodnoty (viď dokumentácia) sa zadávajú v prípade multidrop spojení. Viac informácií viď Literatúra.-00
Iné parametre
Kotva
rcrcMaximálny počet opakovaní výzvy. Ak po poslaní tohto počtu výziev nedôjde odpoveď, stanica prechádza do stavu komunikačnej chyby.-2
Kotva
rtrtTimeout pred opakovaním výzvy, pokiaľ neprišla odpoveď.s0.1
Kotva
wtwtTimeout na príjem odpovede. Hodnota parametra by mala byť väčšia ako čas zodpovedajúci hodnote parametra Monitoring Timer.s1.0
Kotva
fdfdVýpis dodatočných ladiacich informácií o komunikácii na linke.YES/NONO
Kotva
tdtdTextové výpisy správ. Pokiaľ Code type=ASCII code, budú výpisy správ v textovom tvare.YES/NONO

...

Možné typy hodnôt bodov: Ai, Ao, Di, Do, Ci, CoTiRToR.

Adresa meraného bodu:

...

V terminológii protokolu Mitsubishi sa jednotlivé objekty, ktorých hodnoty sú čítané a zapisované, nazývajú zariadenia. Protokol umožňuje pristupovať k viacerým typom zariadení. Podporená je práca s týmito typmi zariadení (device code):

...

Z

...

Pre konkrétny typ zariadenia (device code) sa jednotlivé objekty identifikujú číslom (device number). Pri použití rámcov 3E a 4E sa špecifikuje 3-bajtové číslo, pri použití rámca 1E sa špecifikuje 4-bajtové číslo. Číslovanie začína od 0, maximálne číslo pre konkrétny typ zariadenia závisí od konkrétneho PLC.

...

Voliteľný parameter - prístup ku konkrétnemu bitu. Pre typ zariadenia (device code), ktoré majú wordové dáta, je možné špecifikovať konkrétny bit (0-15). 
Poznámka: pre meraný bod so špecifikovaným bitom nie je zatiaľ implementovaný zápis, iba čítanie.

...

Voliteľný parameter - interpretácia dát.
Pre typy zariadenia (device code), ktoré majú dáta typu word, je prednastavená interpretácia WORD (napr. adresa SD5). 
Pre typy zariadenia (device code), ktoré majú dáta typu bit, je prednastavená interpretácia BIT (napr. adresa X5)

...

t
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.--


Kotva
merany_bod
merany_bod
Konfigurácia meraných bodov

...

Možné typy hodnôt bodov: Ai, Ao, Di, Do, Ci, CoTiRToR, 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:

ParameterDescription
CD

Connection description

EVDefinition of the enable mask for events. Default: "EV=ed".
  • "e": Change in error state
  • "d": Change in data
  • "f": Change in data format
  • "c": Change in the connection description
  • "p": Progress information about active requests
  • "s": Status changes
  • 'u': Change in the user tag string
  • 'l': Special line events
Example: "EV=edfc"
If no events should be enabled, then specify "EV=".
ATObject attributes. Default: "AT=rw"
  • "r": Allows read access
  • "w": Allows write access
  • "e": PLC event operation
  • "h": Immediate write echo if access type POBJ_ACC_DATA
  • "d": Direct event trigger for the POBJ_EVENT_DATA event
RFRefresh rate in ms. Default: "RF=1000".
  • =-1: Cyclic data refresh is turned off
  • = 0: Data refresh is only carried out once
  • > 0: Cyclic data refresh is carried out with the specified refresh rate
VTVariable type (Data format description). Default in the process object: "VT=i32"
  • "i8", "i16", "i32", "i64": 8 to 64-bit signed integer
  • "u8", "u16", "u32", "u64": 8 to 64-bit unsigned integer
  • "f32", "f64": 32/64-bit floating point
  • "boolean": Flag with element length of 1 byte
  • "string": String with 8-bit character size
  • "wstring": String with 16-bit character size
  • "struct": Structure
  • "time": 32-bit time in ms since midnight
  • "dt": 32-bit date and time in seconds since 1/1/1968
  • "date": 32-bit date,
  • "tod". 32-bit time of day,
  • "date": General variable type with 1-byte element length
VLVariable 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).
VNThe 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.

ALStructure 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.
CMMode 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.
  • Bit 0: String variable for PG2000 or AS 1.3
  • Bit 1: String contents are interpreted as a decimal number
  • Bit 2: Value range is monitored
  • Bit 3: Rounding takes place when casting type from a float to an integer
  • Bit 4: Strings are always terminated with 0 (null).
VAVariable addressing. Default: No variable addressing
Using variable addressing, link objects can address subsets from the process data of a variable object.
DVThe 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"
HYAssigned 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
FSAssigned 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.
UTA 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=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, počet položiek poľa 6 (tj. čítajú sa položky gmArrInt[0]gmArrInt[5])
    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šie príklady).
  • 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, počet položiek poľa 5, 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, počet položiek poľa 4
    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).


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.

Image Added

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é 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.


Kotva
literatura
literatura
Literatúra

...

View file
namePviBase.chm
height150
 PVI Base system - B&R documentation

Pozn: pri interpretácii 32-bitových čísel sa dáta interpretujú ako little-endian (nižší word na nižšej adrese, vyšší na vyššej). 

...

Počet elementov pre štruktúrované merané body s nakonfigurovaným cieľovým stĺpcom. Každý načítaný element (1,2,3 .. items) bude zapísaný do jednej položky cieľového stĺpca.
Pozn: Celý počet item elementov je vyčítavaný naraz. Pokiaľ je nakonfigurovaných napr. 100 elementov pre typ zariadenia (device code), ktoré má dáta typu word (napr. adresa D10, WORD, 100), jedná sa o čítanie bloku 100 objektov s veľkosťou dát 200 bajtov. Ak je počet objektov väčší ako hodnota parametra Max Points, alebo veľkosť dát väčšia ako Max Data Bytes, čítanie nebude vykonané a do logu linky pribudne chybová hláška Too many elements in point <názov meraného bodu>.

Príklady konfigurácie:

  • X10 - Input číslo 10, interpretácia ako BIT (default)
  • D0 - Data register číslo 0, interpretácia ako WORD (default)
  • M12, WORD - Internal relay číslo 12-27 interpretované ako WORD
  • D4, REAL - Data registre 4 a 5 interpretované ako REAL
  • Y10, BIT, 20  - Input číslo 10 až 29, interpretácia ako BIT (default), priradené do 20 položiek cieľového stĺpca štruktúry
  • D4, REAL, 10 - Data registre 4 až 23 interpretované po dvojiciach ako REAL, priradené do 10 položiek cieľového stĺpca štruktúry
  • D4, WORD, 10 - Data registre 4 až 13 interpretované ako WORD, priradené do 10 položiek cieľového stĺpca štruktúry

...

Kotva
zmeny_upravy
zmeny_upravy
Zmeny a úpravy

...

Kotva
revizie
revizie
Revízie dokumentu

...

Ver. 1.0 – 10.3.2021 - vytvorenie dokumentu

Info
titleSúvisiace stránky:

Komunikačné protokoly

...