...
- rady S7-300 a S7-400, vybavenými ethernetovými rozhraniami pre komunikáciu S7 ISO over TCP.
- rady S7-1200, S7-1500
- rady Siemens LOGO
- rady Siemens Microbox
Pozn: bola overená komunikácia cez Profinet/Profibus prevodník ACCON-NetLink-PRO compact od firmy DELTALOGIC. Komunikácia s viacerými PLC rady S7-300 na Profibus zbernici fungovala po aktualizácii firmware prevodníka na verziu V2.54 (31. marec 2015) s BIOS-om prevodníka na verzii V2.39 (7. jún 2011). Keď bol firmware prevodníka na verzii V2.37 (8.august 2011), komunikácia nebola funkčná.
Pozn: bola vyskúšaná komunikácia s PLC automatom Siemens LOGO. Časť pamäte, ktorá je prístupná na čítanie/zápis je tzv. V area, viditeľná ako DB1.
Pozn: protokol má "big endian" reprezentáciu dát.
...
Parameter | Popis | Jednotka / rozmer | Náhradná hodnota | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Číslo Siemens Simatic rack number. | 0 až 7 | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | Rack 0 je najčastejšie používaný. Pozn: pri použití prevodníka ACCON-NetLink-PRO compact je treba nastaviť parametre Rack/Slot tak, aby MPI adresa S7, s ktorým sa komunikuje, bola rovná 32 * Rack + Slot. Pre každé S7 je teda nutné vytvoriť vlastnú linku so špecifickými hodnotami Rack/Slot. Je nutné aj nastaviť "RFC Routing over CPs with TSAP" na hodnotu ON vo web rozhraní prevodníka. | 0 až 7 | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Číslo Siemens Simatic slot number. Slot 2 je najčastejšie používaný. | 0 až 31 | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| slot | slot | SlotČíslo Siemens Simatic slot number. | 0 až 31 | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | s7sub1 | s7sub1 | S7 Subnet ID-part 1 (hex)S7 subnet adresa posielaná ako súčasť Remote TSAP, ak je nastavený parameter Use long TSAP na hodnotu True | 0x0 až 0xFFFF | 0 |
| S7 subnet adresa posielaná ako súčasť Remote TSAP, ak je nastavený parameter Use long TSAP na hodnotu True | 0x0 až 0xFFFF | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| S7 subnet adresa posielaná ako súčasť Remote TSAP, ak je nastavený parameter Use long TSAP na hodnotu True | 0x0 až 0xFFFF | 0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Parameter umožňuje Parameter umožňuje použitie redundantných PLC, ktoré sa môžu líšiť v nastavení niektorých parametrov (Rack, Slot, S7 Subnet ID). Ak je jeho hodnota True, pri pripájaní sa k PLC pomocou zadaných IP adries sú striedavo použité primárne a sekundárne parametre. | - | False | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Connection resource, vstupuje ako MSB byte do výpočtu hodnoty parametra Remote TSAP pri inicializácii ISO spojenia Connection-request. Viď popis parametra Use long TSAP. | 0x0 až 0xFF | 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | ltsap | ltsap | Local TSAP (hex)ISO Local TSAP (Transport Service Local Point). Hodnota Source TSAP parametra pri inicializácii ISO spojenia Connection-request. Viď popis parametra Use long TSAP. | 0x0 až 0xFFFF | 0x1000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | srcref | srcref | Source ReferenceISO Source Reference. Hodnota SRC-REF parametra pri inicializácii ISO spojenia Connection-request. | 0 až 65535 | 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | ult | ult | Use long TSAPPozn: v konkrétnom prípade, keď dva systémy (jeden z nich D2000) potrebovali komunikovať s S7-300, museli mať každé odlišný Connection resource, v opačnom prípade po poslaní úvodnej sekvencie D2000 KOM procesom došlo k rozpadu spojenia: /TSK1/Sending CR-TPDU: CLASS=0, SRC-REF=0x0001, TPDU size=1024, SRC-TSAP=10-00, DST-TSAP=03-02 Po zmene Connection resource z 3 na 2 začala komunikácia fungovať.
| 0x0 až 0xFF | 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ISO Local TSAP (Transport Service Local Point). Hodnota Source TSAP parametra pri inicializácii ISO spojenia Connection-request. Viď popis parametra Use long TSAP. | 0x0 až 0xFFFF | 0x1000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ISO Source Reference. Hodnota SRC-REF | Zapnutie dlhého formátu pri posielaní lokálneho a remote TSAP vo fáze nadväzovania spojenia. Krátky TSAP má dĺžku 2 bajty. Krátky lokálny TSAP má formát:
Dlhý remote TSAP má dĺžku 28 bajtov a obsahuje
| - | False | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | mpiaddr | mpiaddr | MPI/Profibus AddressMPI/Profibus adresa posielaná ako súčasť Remote TSAP, ak je nastavený parameter Use long TSAP na hodnotu True | 0 až 126 | 1 | Kotva | | tpdus | tpdus | ISO TPDU Size Variable ParameterMaximálna požadovaná veľkosť ISO TPDU. Hodnota parametra pri inicializácii ISO spojenia Connection-request.8192, 4096, 2048, 1024, 512, 256 alebo 128 bytov | 1024 bytov | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | pnj | pnj | Nr. of Parallel Network ThreadsMaximálny počet paralelných komunikačných threadov. V prípade požiadavky na vyšší počet údajov čítaných zo zariadenia za kratší čas, zvýšte hodnotu parametra. | 1 až 4 | 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | ct | ct | Cycle TimePožadovaná dĺžka jedného cyklu čítania údajov. V podstate perióda čítania údajov zo zariadenia, keďže časové parametre na stanici sa neuplatňujú. | ms | 1000 ms | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | wt | wt | Message TimeoutMaximálny čas čakania na dátovú odpoveď od partnera. | ms | 2500 ms | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | imd | imd | Inter Message DelayOneskorenie vkladané pred odoslaním každej žiadosti o dáta. V prípade požiadavky na vysoký prenosový výkon nastavte 0 ms. | sec.ms | 20 ms | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | rd | rd | Reconnect DelayOneskorenie pred pokusom o spojenie s partnerom po rozpade spojenia alebo inej komunikačnej chybe. | sec.ms | 2 sec | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | cet | cet | Connection Error TimeoutPo uplynutí tejto doby a v prípade komunikačnej chyby na všetkých komunikačných threadoch, je na staniciach nastavený stav komunikačnej chyby a na linke stav FALSE. | sec.ms | 20 sec | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | pdu | pdu | S7 PDU SizeMaximálne PDU v bytoch pri S7 komunikácii s partnerom. | 240, 480, 960 bytes | 480 bytes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | tnd | tnd | Tcp No DelayNastavenie "Tcp No Delay"=True parametra spôsobí nastavenie nízkoúrovňového parametra socketov TCP_NODELAY, čím sa vypne prednastavené spájanie paketov. | - | False | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | nvd | nvd | Debug ValuesZapína ladiace informácie o načítaných hodnotách meraných bodov. Odporúčame zapnúť iba v prípade nutnosti ladenia komunikácie, pretože výrazne zvyšuje záťaž CPU a spomaľuje komunikáciu. | YES/NO | NO | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | iopd | iopd | Debug I/O Binary Packets InfoZapína ladiace informácie o binárnom obsahu komunikačných paketov. Odporúčame zapnúť iba v prípade nutnosti ladenia komunikácie, pretože výrazne zvyšuje záťaž CPU a spomaľuje komunikáciu. | YES/NO | NO | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | rdd | rdd | Debug Requests InfoZapína základné ladiace informácie o požadovaných dátach. | YES/NO | YES | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Kotva | rad | rad | Debug Answers InfoZapína základné ladiace informácie o získaných paketoch. | YES/NO | YES |
...
0 až 65535 | 1 | ||||||||
| Zapnutie dlhého formátu pri posielaní lokálneho a remote TSAP vo fáze nadväzovania spojenia. Krátky TSAP má dĺžku 2 bajty. Krátky lokálny TSAP má formát:
Dlhý remote TSAP má dĺžku 28 bajtov a obsahuje
| - | False | ||||||
| MPI/Profibus adresa posielaná ako súčasť Remote TSAP, ak je nastavený parameter Use long TSAP na hodnotu True | 0 až 126 | 1 | ||||||
| Maximálna požadovaná veľkosť ISO TPDU. Hodnota parametra pri inicializácii ISO spojenia Connection-request. | 8192, 4096, 2048, 1024, 512, 256 alebo 128 bytov | 1024 bytov | ||||||
| Maximálny počet paralelných komunikačných threadov. V prípade požiadavky na vyšší počet údajov čítaných zo zariadenia za kratší čas, zvýšte hodnotu parametra. | 1 až 4 | 1 | ||||||
| Požadovaná dĺžka jedného cyklu čítania údajov. V podstate perióda čítania údajov zo zariadenia, keďže časové parametre na stanici sa neuplatňujú. | ms | 1000 ms | ||||||
| Maximálny čas čakania na dátovú odpoveď od partnera. | ms | 2500 ms | ||||||
| Oneskorenie vkladané pred odoslaním každej žiadosti o dáta. V prípade požiadavky na vysoký prenosový výkon nastavte 0 ms. | sec.ms | 20 ms | ||||||
| Oneskorenie pred pokusom o spojenie s partnerom po rozpade spojenia alebo inej komunikačnej chybe. | sec.ms | 2 sec | ||||||
| Po uplynutí tejto doby a v prípade komunikačnej chyby na všetkých komunikačných threadoch, je na staniciach nastavený stav komunikačnej chyby a na linke stav FALSE. | sec.ms | 20 sec | ||||||
| Maximálne PDU v bytoch pri S7 komunikácii s partnerom. | 240, 480, 960 bytes | 480 bytes | ||||||
| Nastavenie "Tcp No Delay"=True parametra spôsobí nastavenie nízkoúrovňového parametra socketov TCP_NODELAY, čím sa vypne prednastavené spájanie paketov. | - | False | ||||||
| Zapína ladiace informácie o načítaných hodnotách meraných bodov. Odporúčame zapnúť iba v prípade nutnosti ladenia komunikácie, pretože výrazne zvyšuje záťaž CPU a spomaľuje komunikáciu. | YES/NO | NO | ||||||
| Zapína ladiace informácie o binárnom obsahu komunikačných paketov. Odporúčame zapnúť iba v prípade nutnosti ladenia komunikácie, pretože výrazne zvyšuje záťaž CPU a spomaľuje komunikáciu. | YES/NO | NO | ||||||
| Zapína základné ladiace informácie o požadovaných dátach. | YES/NO | YES | ||||||
| Zapína základné ladiace informácie o získaných paketoch. | YES/NO | YES |
Kotva | ||||
---|---|---|---|---|
|
...
- Komunikačný protokol: Siemens SIMATIC S7 ISO over TCP.
- Nezadáva sa žiadna adresa stanice ani parametre protokolu na stanici.
- Nastavenie časových parametrov stanice sa ignoruje, bližšie informácie viď parameter protokolu linky Cycle Time.
- Časová synchronizácia zariadenia nie je možná.
Kotva | ||||
---|---|---|---|---|
|
...
Možné typy hodnôt bodov: Ai, Ao, Ci, Co, Di, Dout, TiA, ToA, TiR, ToR, TxtI.
Adresa meraného bodu je kompatibilná so Siemens SimaticNET OPC serverom (s výnimkou typu CHARARR).
Adresa meraného bodu je znakový reťazec podľa pravidiel:
{;}{S7:[connectionname]}DB<no>,<type><address>
{;}{S7:[connectionname]}DI<no>,<type><address>
{;}{S7:[connectionname]}<object>{<type>}<address>
resp. pre štruktúrované merané body s nakonfigurovaným cieľovým stĺpcom
{;}{S7:[connectionname]}DB<no>,<type><address>{, <items>}
{;}{S7:[connectionname]}DI<no>,<type><address>{, <items>}
{;}{S7:[connectionname]}<object>{<type>}<address>{, <items>}
Kde:
; | Je voliteľný parameter, ktorý slúži na vyradenie meraného bodu z komunikácie. Taktiež sa nekontroluje správnosť adresy meraného bodu pri jeho ukladaní. Môže byť nápomocný pri fáze vývoja alebo ladenia komunikácie so zariadením. Pozn: aj meraný bod s adresou, ktorá sa začína %IGNORE, bude ignorovaný. | ||||||||||||||||||||||||||||||||||||||
S7:[connectionname] | Je nepovinný parameter, ktorý neobsahuje žiadnu potrebnú informáciu a je podporovaný iba kvôli spätnej kompatibilite so Siemens SimaticNET OPC serverom. | ||||||||||||||||||||||||||||||||||||||
DB | Data block. Identifikátor S7 premennej z "Data block". | ||||||||||||||||||||||||||||||||||||||
DI | Instance data block. Identifikátor S7 premennej z " Instance data block". | ||||||||||||||||||||||||||||||||||||||
<no> | Číslo "data block" alebo "instance data block". | ||||||||||||||||||||||||||||||||||||||
<object> | Špecifikácia bloku alebo oblasti v S7 PLC. Možné sú hodnoty:
| ||||||||||||||||||||||||||||||||||||||
<type> | Dátový typ S7. Pre objekty T, C a S nie je špecifikovaný.
|
...
- Komunikačný protokol: Siemens SIMATIC S7 ISO over TCP.
- Nezadáva sa žiadna adresa stanice ani parametre protokolu na stanici.
- Nastavenie časových parametrov stanice sa ignoruje, bližšie informácie viď parameter protokolu linky Cycle Time.
- Časová synchronizácia zariadenia nie je možná.
...
Možné typy hodnôt bodov: Ai, Ao, Ci, Co, Di, Dout, TiA, ToA, TiR, ToR, TxtI.
Adresa meraného bodu je kompatibilná so Siemens SimaticNET OPC serverom (s výnimkou typu CHARARR).
Adresa meraného bodu je znakový reťazec podľa pravidiel:
{;}{S7:[connectionname]}DB<no>,<type><address>
{;}{S7:[connectionname]}DI<no>,<type><address>
{;}{S7:[connectionname]}<object>{<type>}<address>
resp. pre štruktúrované merané body s nakonfigurovaným cieľovým stĺpcom
{;}{S7:[connectionname]}DB<no>,<type><address>{, <items>}
{;}{S7:[connectionname]}DI<no>,<type><address>{, <items>}
{;}{S7:[connectionname]}<object>{<type>}<address>{, <items>}
Kde:
; | Je voliteľný parameter, ktorý slúži na vyradenie meraného bodu z komunikácie. Taktiež sa nekontroluje správnosť adresy meraného bodu pri jeho ukladaní. Môže byť nápomocný pri fáze vývoja alebo ladenia komunikácie so zariadením. |
S7:[connectionname] | Je nepovinný parameter, ktorý neobsahuje žiadnu potrebnú informáciu a je podporovaný iba kvôli spätnej kompatibilite so Siemens SimaticNET OPC serverom. |
DB | Data block. Identifikátor S7 premennej z "Data block". |
DI | Instance data block. Identifikátor S7 premennej z " Instance data block". |
<no> | Číslo "data block" alebo "instance data block". |
<object> | Špecifikácia bloku alebo oblasti v S7 PLC.|
Skratka | Popis (Nemecký názov) |
---|---|
I, E | Input (Eingang, E) |
Q | Output (Ausgang, A) |
PI | Peripheral Input ( Peripherie Eingang, PE) |
PQ | Peripheral Output ( Peripherie Ausgang, PA) |
M | Memory bit (F) |
C | Counter (Zähler, Z) - BCD kódované celočíselné hodnoty z intervalu <0-999> |
T | Timer (Timer, T) - BCD kódované časovače z intervalov <0.00-9.99>, <00.0-99.9>, <000-999>, <0000-9.9990> |
Kotva | szl | szl | SSystem Status Lists (System-ZustandsListen, SZL) - zoznamy s diagnostickými informáciami, ktoré sú k dispozícii na CPU rodiny S7-300 a S7-400. Obsah informácií sa pre rôzne triedy PLC líši a detaily sú popísané v manuáloch (napr. System Software for S7-300/400 System and Standard Functions, Volume 1/2) Pozn: meraný bod S musí byť typu TxtI. | <type> | Dátový typ S7. Pre objekty T, C a S nie je špecifikovaný.
Pozn: typ CHARARR je D2000 rozšírenie, ktoré umožňuje čítať/zapisovať pole CHAR-ov ako reťazec. Tento typ nie je kompatibilný so Siemens SimaticNET OPC serverom.
|
<address> | Adresa premennej. Možné sú varianty:
|
<items> | 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. Štruktúrované merané body nie sú podporené pre objekty typu T (timers), C (counters) a S (system status lists) ani pre dátový typ STRING. Pozn: Celý počet item elementov je vyčítavaný naraz. Pokiaľ je nakonfigurovaných napr. 100 elementov typu D (double word), jedná sa o čítanie bloku 400 bajtov. Pokiaľ pri nadviazaní komunikácie je dohodnutá menšia veľkosť paketu (S7 PDU size), čítanie takéhoto meraného bodu sa neuskutoční a v logu linky bude o tom chybová hláška. Dohodnutá veľkosť S7 PDU size je minimom možností D2000 (parameter S7 PDU Size) a možnosti konkrétneho zariadenia. Pozn: syntax adresy pri zadaní počtu elementov je kompatibilná so Siemens S7 OPC serverom (napr. S7:[MyPLC]DB120,INT1050, 24), čo umožuje jednoduchý prechod z OPC komunikácie na protokol Siemens SIMATIC S7 ISO on TCP nakonfigurovaním novej linky, stanice a zmenou rodiča meraných bodov (napr. CSV alebo XML exportom a importom). Príklady adries:
|
...
V praxi sa vyskytli prípady, keď sa komunikácia so zariadením (išlo o Simatic S7-1200) síce rozbehla, ale po poslaní požiadavky na čítanie dát zariadenie ako odpoveď neposlalo dáta, ale paket s ResultCode = 0x8104 tj. decimálne 33028.
Podľa http://stackoverflow.com/questions/23745407/libnodave-error-while-reading-from-siemens-s7-1200-0x8104 je problém v nedostatočných prístupových právach. Príčinou je vyššia úroveň zabezpečenia v TIA Portal verzii 12 a vyšších, ktorá štandardne zakazuje prístup k read/update blokom. Bez explicitného povolenia iba Siemens nástroje majú prístup k dátam.
Konfigurácia: V TIA, pod vlastnosťami CPU projektu je treba ísť na "Protection" a tam zaškrtnúť tam zaškrtnúť "Permit access with PUT/GET communications from remote partner" a nastaviť "Access level" podľa obrázku.
Pozn: v praxi bolo odskúšané s Simatic S7-1500 čítanie/zápis aj pri nastavení "Access level" = "HMI access", so zapnutým "Permit access with PUT/GET communications from remote partner" a nastaviť "Access level" podľa obrázku.
V prípade TIA Portal verzie 14 je nastavenie "Permit access with PUT/GET communications from remote partner" na samostatnej záložke "Connection mechanisms" pod "Protection & Security":
...
Po zmene bezpečnostných nastavení v TIA Portal je nutné v menu vybrať Compile → "Software (Rebuild all)" a po skompilovaní projekt nahrať do PLC. Čiastočný rebuild nemusí postačovať." a po skompilovaní projekt nahrať do PLC. Čiastočný rebuild nemusí postačovať.
Od verzie STEP 7 V17 na sfunkčnenie komunikácie môže byť potrebný nasledujúci postup: použite "Online & diagnostics" na vykonanie Reset to Factory Settings a označte políčko označené "Delete password for protection of confidential PLC configuration data".
Kotva | ||||
---|---|---|---|---|
|
...
- RFC 1006, "ISO Transport Service on top of the TCP, Version: 3", May 1987.
- International Standard ISO/IEC 8073:1997, "Information technology - Open Systems Interconnection - Protocol for providing the connection-mode transport service."
- International Standard ISO/IEC 8072:1996, "Information technology - Open Systems Interconnection - Transport service definition."
Info | ||
---|---|---|
| ||
O protokole Siemens SIMATIC S7 ISO on TCP si môžete prečítať aj blogy |
Kotva | ||||
---|---|---|---|---|
|
...
- Ver. 1.0 - 17. september 2010 - Vytvorenie dokumentu.
- Ver. 1.1 - 2. júl 2020 - Podpora CHARARR.
- Ver. 1.2 - 9. júl 2020 - Podpora BCD a LBCD.
- Ver. 1.3 - 27.august 2020- Podpora Siemens Microbox
Info | ||
---|---|---|
| ||
...