Protokol
"S7-TCP/IP" je také známy jako
"RFC1006" nebo
"ISO on top of TCP".
PLC automaty tímto protokolem většinou komunikují přes
PROFINET konektor (konektor pro napojení na Ethernet síť).
Tímto protokolem lze komunikovat např. s následujícími typy zařízení:
-
Siemens Simatic:
- S7-200 přes modul CP243-Ethernet
-
S7-300 přes modul
CP343-Ethernet, přes převodník
NETLink PRO ETH nebo s procesorem s integrovaným Ethernet rozhraním
-
S7-400 přes modul
CP443-Ethernet, přes převodník
NETLink PRO ETH nebo s procesorem s integrovaným Ethernet rozhraním
- S7-1200 (má integrované Ethernet rozhraní)
- ET-200S (má integrované Ethernet rozhraní)
- IPC + WinAC (softwarové PLC)
Základní vlastnosti ovladače:- Použití tohoto ovladače je vázáno na zakoupení licence:
PmS7.
S freeeware verzí
PmFree
nebo při vývoji aplikace
(s
vývojovou licencí pro testovací účely)
je tato komponenta funkční vždy.
- Komunikace je přes
Ethernet.
Pro komunikaci stačí běžná standardní Ethernet karta.
Při použití převodníku
NETLink PRO ETH
lze komunikovat i přes rozhraní
MPI,
PROFIBUS nebo
PPI.
- Ovladač nepotřebuje žádné speciální knihovny ani hardware.
-
Aplikace PROMOTIC je z hlediska této komunikace vždy MASTER
(tzn. že dává podnět k přenosu dat).
-
Ovladač optimalizuje fyzické přenosy datových zpráv s PLC automatem.
Jednou zprávou se mohou přenášet hodnoty z různých datových oblastí (datové bloky, vstupu, vystupy, ...)
a díky tomu je komunikace i při větším množství dat dostatečně rychlá.
Tak lze v běžné Ethernet síti obnovovat data např. s rychlostí 15x za sekundu.
- Ovladač je začleněn do systému PROMOTIC pomocí objektu
PmComm.
Do aplikace lze přidat objekt
PmComm a správně je nakonfigurovat
ale
lepší je použít:
Jsou podporovány následující
oblasti dat:
-
I = Input:
Digitální vstupy.
Bitové hodnoty (typ
X), které lze číst ale nelze do nich zapisovat.
Na tyto hodnoty lze přistupovat i jako na
1-byte (8 bitů, typ B),
2-byte (16 bitů, typ W) nebo
4-byte (32 bitů, typ DINT).
Pak lze na jednotlivé bity přistupovat
pomocí vlastnosti Var.Bit nebo
pomocí metod Pm.GetBit / SetBit.
-
Q = Output:
Digitální výstupy.
Bitové hodnoty (typ
X), které lze číst i zapisovat.
Na tyto hodnoty lze přistupovat i jako na
1-byte (8 bitů, typ B),
2-byte (16 bitů, typ W) nebo
4-byte (32 bitů, typ DINT).
Pak lze na jednotlivé bity přistupovat
pomocí vlastnosti Var.Bit nebo
pomocí metod Pm.GetBit / SetBit.
-
M = Memory, Marker, Flag:
Paměť kterou lze číst i zapisovat.
Na rozdíl od datových bloků nebývá tato paměť perzistentní,
tzn. po vypnutí PLC se paměť resetuje.
Přistupovat k hodnotám v této paměti lze pomocí všech podporovaných datových typů
(X, W, INT, STRING ...).
-
DB = Data Block: Perzistentní paměť kterou lze číst i zapisovat.
Přistupovat k hodnotám v této paměti lze pomocí všech podporovaných datových typů
(X, W, INT, STRING ...).
- T = Timer:
Časovače.
Jsou určeny jen pro čtení.
Hodnoty lze číst jako datové typy
S5T(=přednastaveno), Wbcd a W.
- C = Counter:
Čítače.
Jsou určeny jen pro čtení.
Hodnoty lze číst jako datové typy
Wbcd(=přednastaveno) a W.
Jsou podporovány následující
S7 datové typy:
-
X:
Bit, Boolean - Bit daný adresou bytu a číslem bitu. V aplikaci PROMOTIC je reprezentován datovým typem:
Boolean.
-
B:
Unsigned Byte - 1-bajt celé číslo (od
0 do
255).
V aplikaci PROMOTIC je reprezentován datovým typem:
Byte.
-
W:
Unsigned Word - 2-bajt celé číslo (od
0 do
+65 535).
V aplikaci PROMOTIC je reprezentován datovým typem:
Long.
-
INT:
Signed Word - 2-bajt celé číslo (od
-32 768 do
+32 767).
V aplikaci PROMOTIC je reprezentován datovým typem:
Integer.
-
D:
Unsigned Double Word - 4-bajt celé číslo (od
0 do
+4 294 967 295).
Protože jazyk
VBScript nemá celočíselný datový typ pro unsigned 4-bajt hodnotu,
je v systému PROMOTIC hodnota uložena v datové typu
Double.
-
DINT:
Signed Double Word - 4-bajt celé číslo (od
-2 147 483 648 do
+2 147 483 647).
V aplikaci PROMOTIC je reprezentován datovým typem:
Long.
-
Bbcd:
Unsigned Byte in BCD code - 1-bajt celé číslo. V PLC uloženo v BCD kódování (od
0 do
99).
V aplikaci PROMOTIC je reprezentován datovým typem:
Byte.
-
Wbcd:
Unsigned Word in BCD code - 2-bajt celé číslo. V PLC uloženo v BCD kódování (od
0 do
9999).
V aplikaci PROMOTIC je reprezentován datovým typem:
Integer.
-
Dbcd:
Unsigned Word in BCD code - 4-bajt celé číslo. V PLC uloženo v BCD kódování (od
0 do
99999999).
V aplikaci PROMOTIC je reprezentován datovým typem:
Long.
-
REAL:
Real number, 4B IEEE - 4-byte reálné číslo ve formátu
IEEE-754 (32-bit). V aplikaci PROMOTIC je reprezentován datovým typem:
Single.
-
LREAL:
Long Real number, 8B IEEE -
8-byte reálné číslo ve formátu
IEEE-754 (64-bit).
Tento typ podporuje např.
Simatic S7-1200.
Není podporován staršími typy PLC.
V aplikaci PROMOTIC je reprezentován datovým typem:
Double.
-
CHAR:
Signed Byte, Raw string -
Posloupnost znaků se zadaným počtem znaků (1 znak = 1 Byte).
V PLC je tento typ uložen bez informace o délce textu.
Pokud je při zápisu do PLC posílaný text kratší než zadaný počet znaků,
doplní se zbývající znaky hodnotou 0.
V aplikaci PROMOTIC je reprezentován datovým typem:
String.
-
STRING:
S7 string -
Text se zadaným počtem znaků (1 znak = 1 Byte).
V PLC je tento typ uložen navíc s hlavičkou, ve které je informace o aktuální délce textu.
Pokud je při zápisu do PLC posílaný text kratší než zadaný počet znaků,
doplní se zbývající znaky hodnotou 0.
V aplikaci PROMOTIC je reprezentován datovým typem:
String.
-
DTL:
Date and Time, 12B Bin format -
Datum a čas.
V PLC je uložen binárně na 12B.
Tento typ podporuje např.
Simatic S7-1200.
Není podporován staršími typy PLC.
V aplikaci PROMOTIC je reprezentován datovým typem:
Date.
-
DT:
Date and Time, 8B BCD format -
Datum a čas.
V PLC je uložen v BCD kódu na 8B.
Tento typ podporují starší typy PLC.
V aplikaci PROMOTIC je reprezentován datovým typem:
Date.
-
S5T:
S5TIME, Time Duration -
Čas nebo doba trvání.
V PLC je uložen v BCD kódu na 4B.
Tento typ podporují starší typy PLC.
Obvykle se využívá v paměti typu
"Timer".
V aplikaci PROMOTIC je reprezentován datovým typem:
Date.
Poznámka1:
Datový typ TIME
je v podstatě počet milisekund
a hodnotu lze proto vyčítat jako datový typ DINT.
Proto samotný typ TIME není ovladačem podporován.
Doporučené hodnoty parametrů:
| Číslo TCP/UDP portu |
Číslo Ethernet portu.
Toto číslo je určeno volbou typu S7 komunikace:
102 -
Komunikuje se přímo s PLC podporující S7 protokol
(podporující Ethernet rozhraní).
|
|---|
| Typ Ethernet přenosu | TCP |
|---|
| Počet opakování při neúspěšném přenosu |
Když druhá strana neodpoví, tak ovladač provede uzavření portu a znovu začne navazovat spojení.
Proto je pro tento konfigurátor doporučeno nastavit "bez opakování", tj. hodnotu 0.
|
|---|
| Timeout přenosu jednoho paketu [ms] |
V případě "Typ komunikace = Ethernet ISOonTCP Standard"
je nutno nastavit 4000 ms.
Jinak stačí 2000 ms.
|
|---|
| Uzavřít spojení po každém přenosu | NEzatrhnout (povinné).
Po každém navázání spojení s PLC je nutno přenést několik inicializačních zpráv
a kdyby se spojení často uzavíralo tak by se velmi snížila rychlost komunikace.
|
|---|
| Typ komunikace | Blíže určuje typ komunikace se zařízením. Ethernet ISOonTCP Standard - (for S7-300/400/1200..) -
Bude se komunikovat se zařízením, které podporuje Ethernet komunikaci protokolem S7 (podporuje PROFINET).
Ethernet ISOonTCP for CP243 - (for S7-200) - Bude se komunikovat se Simatic S7-200 přes modul CP243-Ethernet. Ethernet NETLink PRO ETH - (Helmholz, Softing, Accon) - Bude se komunikovat s převodníkem NETLink PRO ETH. |
|---|
| Rack | (0-7)
Určuje číslo rack-u na kterém je umístěn procesor, se kterým se požaduje komunikovat.
Většinou je hodnota 0.
Zadává se jen když "Typ komunikace = Ethernet ISOonTCP Standard" |
|---|
| CPU Slot | (0-31)
Určuje číslo slot-u na kterém je umístěn CPU procesor, se kterým se požaduje komunikovat.
(Upozornění: NENÍ to slot komunikační karty!)
Často je hodnota 2.
Pro S7-1200 je hodnota 1.
Příklad:
Na slotu 1 bývá zdroj napětí a pokud je zdroj větší (např. pro S7-400), pak může zabírat i další sloty.
Pokud tedy zdroj zabírá slot číslo 1 a 2 a na slotu 3 je např. ventilátor (nebo je slot neobsazen),
pak dáme procesor na slot 4.
V tomto konfigurátoru tedy bude hodnota 4.
Zadává se jen když "Typ komunikace = Ethernet ISOonTCP Standard" |
|---|
| Local TSAP | (hex)
Určuje hexadecimální adresu LocalTSAP.
Většinou je hodnota 4d57 ('MW').
Zadává se jen když "Typ komunikace = Ethernet ISOonTCP for CP243" |
|---|
| Remote TSAP | (hex)
Určuje hexadecimální adresu RemoteTSAP.
Většinou je hodnota 4d57.
Zadává se jen když "Typ komunikace = Ethernet ISOonTCP for CP243" |
|---|
| MPI/DP address | (0-31)
Určuje MPI nebo DP-PROFIBUS adresu procesoru, se kterým se požaduje komunikovat.
Pro MPI je často hodnota 2.
Zadává se jen když "Typ komunikace = Ethernet NETLink PRO ETH" |
|---|
| Connection type |
Typ připojení.
V konfiguraci MPI sítě lze nastavit max. počet připojení pro daný typ.
Zadává se jen když "Typ komunikace = Ethernet NETLink PRO ETH" 1 = PG-connection - Programovací zařízení 2 = OP-connection - Operátorský panel 3 = OTHER-connection - Jiný typ |
|---|
Popis komunikace pomocí objektů PmCommData

Pro tento ovladač lze používat objekty
PmCommData.
Pro běžné případy přenosů dat je to výhodnější než použít objekt
PmCommMsg.
Proměnné v objektu PmCommData mohou být v libovolném množství, libovolného typu v libovolném pořadí.
Ovladač sám optimálním způsobem vnitřně vytvořenými komunikačními zprávami vyčítá data ze zařízení.
Proměnné se vyčítají všechny
(pokud je povolen konfigurátor Obnovování dat povoleno),
při zápisu do proměnné se posílá do zařízení jen tato jedna proměnná
(pokud je povolen konfigurátor Automaticky zasílat při zápisu do položky).
Popis konfigurátoru ItemId:
Ovladač umí přenášet datové položky,
které mají konfigurátor ItemId nastaven na text,
ze kterého ovladač pozná, jak má hodnotu položky přijímat nebo vysílat.
Text se nemusí psát,
sestaví se pomocí tlačítka vpravo od konfigurátoru ItemId.
Pro zadání lze použít Makro výraz (vyhodnocuje se při spouštění aplikace).
Příklady tvaru identifikátoru:
- "I0.2" =
Hodnota uložená v I=Input na adrese 0 ve druhém bitu
jako datový typ X=bit=přednastaveno.
- "Q0.2" =
Hodnota uložená v Q=Output na adrese 0 ve druhém bitu
jako datový typ X=bit=přednastaveno.
- "QB0" =
Hodnota uložená v Q=Output na adrese 0
jako datový typ B=Byte=8 bitů.
- "MREAL30" =
Hodnota uložená v M=Memory na adrese 30
jako datový typ REAL=4-bajt reálné číslo.
- "DB10.W83" =
Hodnota uložená v DB=DataBlock č.10 na adrese 83
jako datový typ W=Unsigned Word.
- "DB3.Wbcd83" =
Hodnota uložená v DB=DataBlock č.3 na adrese 83
jako datový typ Wbcd=Unsigned Word in BCD code.
- "DB24.CHAR0.12" =
Hodnota uložená v DB=DataBlock č.24 od adresy 0 (na adrese 0,1,..11)
jako 12 položek typ CHAR které se v PROMOTIC uloží do jedné hodnoty typu String.
- "DB25.STRING0.12" =
Hodnota uložená v DB=DataBlock č.25 od adresy 0
jako datový typ S7 STRING která se v PROMOTIC uloží do hodnoty typu String.
- "T15" =
Hodnota uložená v T=Timer na adrese 15
jako datový typ S5T která se v PROMOTIC uloží do hodnoty typu Date.
- "TWbcd15" =
Hodnota uložená v T=Timer na adrese 15
jako datový typ Wbcd=Unsigned Word in BCD code.
- "C20" =
Hodnota uložená v C=Counter na adrese 20
jako datový typ Wbcd=Unsigned Word in BCD code.
- "CW20" =
Hodnota uložená v C=Counter na adrese 20
jako datový typ W=Unsigned Word.
Poznámka:
Ovladač zatím nepodporuje v jedné proměnné s jedním
ItemId přenášet vektor hodnot
(kromě vektoru znaků v typu
CHAR).
Tento konfigurátor se pro daný ovladač nevyužívá.
Komunikace s převodníkem NETLink PRO ETH
Převodník NETLink PRO ETH převádí Ethernet protokol S7 na fyzické rozhraní
MPI, PROFIBUS nebo PPI.
Když je převodník připojen do MPI/PROFIBUS sítě,
pak v této síti může být napojeno i více procesorů se kterými se požaduje komunikovat
(každý bude mít jinou MPI/DP adresu).
Jeden objekt PmComm komunikuje jen s jedním procesorem.
Lze mít současně více PmComm objektů se stejnou IP adresou převodníku
ale s jinou hodnotou "MPI/DP address".
Převodník
NETLink PRO ETH dodává např:
-
Firma
Helmholz (
www.helmholz.cz,
www.helmholz.com).
Jádro hardware této firmy používají i jiné firmy pro své převodníky (viz dále).
V česku firmu zastupuje firma Intersoft (www.intersoft-automation.cz).
Pokud se u převodníku přes WEB rozhraní nastaví konfigurátor "Go online after boot",
pak je převodník transparentní a v PmS7 ovladači lze nastavit
"Typ komunikace = Ethernet ISOonTCP Standard".
-
Firma
Softing (
www.softing.com).
Tyto převodníky používaji hardware firmy
Helmholz.
-
Firma
Deltalogic (
www.deltalogic.de, typ
ACCON).
Tyto převodníky používaji hardware firmy
Helmholz.
V česku firmu zastupuje firma Foxon (www.foxon.cz).
-
Převodníky jiných firem
(např. převodníky IBH NETLink, NETLink Kepware ...).
Není vyzkoušeno, že s těmito jinými převodníky lze pomocí ovladače PmS7 komunikovat.