Ovladač je určen pro spojení systému Control Web
s průmyslovými automaty (PLC) SIMATIC S7 přes rozhraní Ethernet.
Seznam sekcí: - Činnost ovladače
- Parametry ovladače
- Kanály ovladače
- Procedury ovladače
- Mapovací soubor ovladače a datové typy
- Zpracování a stavy výjimek ovladače
- Chybové kódy
- Příklad použití ovladače
Činnost ovladače
Ovladač komunikuje pouze přes standardní síťové rozhraní
počítače. Podporuje komunikaci s PLC S7-300, 400, 200(CP243),
LOGO!, 1200, 1500. Ovladač ke komunikaci používá vlastní
prostředky (nevyžaduje žádnou další programovou podporu).
Pomocí ovladače je možno číst nebo zapisovat data z datových
oblastí D, V, M, A, E, T, Z.
Ovladač interpretuje datové elementy PLC jako svoje kanály, což
jsou číselné nebo logické hodnoty (boolean) popřípadě
řetězce o max. délce 254 znaků. Datový element je zpravidla byte
(v oblastech D, V, M, A, E) nebo word (oblasti T, Z). Číselné
kanály mohou být různých typů (int8, uint8,
int16, uint16, int32,
uint32, float32, float32s),
podle toho kolik datových elementů zabírají. Logické kanály mohou
být také různých typů (bits, sbit,
bool8) podle toho, jestli se jedná o jednotlivé bity
elementů nebo o celé elementy (nulová hodnota = false,
nenulová hodnota = true). Dále umožňuje ovladač číst
a zapistovat datum a čas v PLC nebo synchronizovat čas v PLC s
časem v počítači. Datové kanály ovladače (jejich počet a typ) se
konfigurují v souboru parametrů podle požadavků uživatele.
Parametry ovladače
Pomocí souboru parametrů je možno nastavit parametry komunikace
a definovat kanály ovladače, popřípadě nastavit další doplňující
parametry. Celý soubor parametrů je rozdělen do několika sekcí.
Název sekce je uveden v hranatých závorkách. V sekci jsou uvedeny
za jménem a znakem = jednotlivé parametry. Na jednom
řádku může být definován jeden parametr.
Definice spojení - sekce [Connection]
V této sekci se definují všechna zařízení (PLC), se kterými
má ovladač komunikovat. Každému zařízení se přiřadí jméno,
podle kterého se identifikuje v sekci [Channels]
a dále se specifikuje adresa a další parametry k určení
zařízení.
Spojení u ovladače S7_TCP se definují takto:
[Connection]
<Id> = station:<Adr>, segment:<N>, rack:<N>, slot:<N>, cpu:<N>
<Id> = station:<Adr>, tsap:<H.H>, contype:<C>, cpu:<N>
<Id> = ...
...
Id - identifikátor spojení, který se
použije v sekci [Channels]. Je to libovolný
řetězec o maximální délce 32 znaků.
Adr - adresa PLC. Pro komunikaci
přes MPI nebo PROFIBUS je to číslo stanice. Pro komunikaci
přes Industrial Ethernet je to buď IP adresa nebo tzv. MAC
adresa (pouze u S_MPI). IP adresa je skupina 4 čísel (každé
maximálně 255) vzájemně oddělených tečkami. MAC adresa je
skupina 6 čísel v hexadecimálním tvaru vzájemně oddělených
pomlčkami.
N - číselná hodnota. Může být
zapsána dekadicky nebo hexadecimálně (ukončena znakem H).
H - číselná hodnota v hexadecimálním
tvaru (bez ukončovacího znaku H).
C - typ spojení. Může to být 'PG'
(programming console), 'OP' (Siemens HMI panel) nebo hodnota
3 až 16 (S7 Basic - generic data transfer
connection).
Parametr cpu slouží k rozlišení řady PLC. Pro řadu S7-200
se zadává hodnota 200. Pro vyšší řady (S7-300/400/M7/C7) se
zadává hodnota 300. Kromě tohoto zápisu je možno použít také
zkrácený zápis, kdy se napravo od rovnítka uvedou pouze čísla
v pořadí: station, segment, rack,
slot, cpu. U ovladače S7_TCP může
parametr cpu nabývat navíc hodnoty 1200 resp. 1500 pro typy
S7-1200 resp. S7-1500.
Parametr tsap je třeba zadávat v případě komunikace s PLC
S7-200 přes CP243
Upozornění: Řídicí systémy Siemens SIMATIC S7-1200 (od
firmware verze 4.0) a SIMATIC S7-1500 mají v sobě zabudovaný
firewall. Ve výchozím nastavení je aktivována maximální
ochrana. Pro navázání spojení s těmito PLC modely je třeba
povolit komunikaci se zařízeními třetích stran. Toto nastavení
je k dispozici ve vývojovém prostředí TIA
Portal. Postup: 1. V prostředí TIA Portal
otevřete váš PLC projekt. 2. Klikněte na PLC a z
nabídky vyberte příkaz Properties. 3. Na záložce
General klikněte na Protection a ujistěte se, že je vybrána
volba Full access (no protection). 4. Nakonec dole na
stránce zaškrtněte volbu Permit access with PUT/GET
communication from remote partner.
Upozornění: Pro přístup k datablokům (DB) u řídicích systémů
Siemens SIMATIC S7-1200 a S7-1500 je třeba vzít v úvahu
následující pravidla: 1. Pro komunikaci jsou přístupné
jsou pouze globální DB. 2. V PLC musí být vypnutý
parametr Optimized block access (TIA Portal).
3. Musí být nastaven úplný přístup (Access level -
full) a spojení musí mít povoleno mechanizmus
GET/PUT.
Příklady parametrů v sekci [Connection]ovladače:
[Connection]
CPU1 = 192.168.1.55, 0, 0, 2, 300
CPU2 = station:192.168.1.55, tsap:01.02, contype:PG, cpu:300
CPU3 = 192.168.1.55, 01.02, PG, 300
Parametry pro základní nastavení ovladače - sekce [Settings]
Tato sekce obsahuje parametry, které slouží ke konfiguraci
ovladače z hlediska komunikace. Následuje způsob zápisu
parametrů a jejich možné hodnoty. Společné parametry pro oba
ovladače:
[Settings]
SwapBytes = true | false
MaxExceptions = <N>
CheckTime = <N>
FinalizeAfterEachBlock = false | true
WritePriority = true | false
LocalTSAP = <H.H>
Timeout = <N>
PingDisable = true | false
Trace = none | log | xtrace | windows
N | číselná hodnota. Může být zapsána dekadicky nebo
hexadecimálně (ukončena znakem H). | H | číselná hodnota v hexadecimálním tvaru (bez
ukončovacího znaku H). |
Následuje výčet a popis jednotlivých
parametrů: SwapBytes | Příznak, který určuje zda se prohazuje pořadí byte ve
slově. Tento příznak je globální pro všechny bloky. Pokud
bude nastaven na false nebo nebude uveden, je možno nastavit
individuálně přehazování byte v rámci bloků kanálů. | MaxExceptions | Velikost fronty pro nezpracované výjimky od ovladače.
Implicitní nastavení je 4096. | FinalizeAfterEachBlock | Pomocí tohoto parametru se zadává, jestli budou data
předána do aplikace po každé komunikaci (hodnota parametru =
true) nebo až po dokončení přenosu všech bloků,
které se řeší v rámci daného časového kroku. Implicitní
nastavení je false. | WritePriority | Tento parametr ovlivňuje způsob komunikace ovladače s
PLC. Je-li nastaven na hodnotu false, jsou
střídavě odbavovány všechny požadavky na čtení kanálů a poté
všechny požadavky na zápis kanálů. Je-li parametr nastaven
na hodnotu true, požadavky na zápis kanálů do
PLC mají přednost. Implicitní nastavení je true. | CheckTime | Tento parametr nastavuje prodlevu v sekundách pro
další pokus o navázání spojení v případě, že se s PLC
nekomunikuje. Implicitní nastavení je 20 sekund. | Timeout | Tento parametr nastavuje dobu čekání na spojení nebo
odpověď od zařízení v milisekundách. Implicitní nastavení je
3000 milisekund. | LocalTSAP | TSAP počítače pro spojení s PLC (např. pro S7-200).
Není-li parametr uveden, bude použita hodnota
01.00. | PingDisable | Je-li tento parametr nastaven na hodnotu true,
vypne se vysílání ICMP paketu echo (ping) při spojování s
PLC. Implicitní nastavení je false. | Trace | Zapnutí trasovacích výpisů komunikace. Je-li nutno
sledovat komunikaci ovladače se zařízením, je možno zvolit
tímto parametrem cíl trasovacích výpisů. |
Možné hodnoty parametru Trace
jsou: Hodnota | Význam |
---|
none | žádné trasovací výpisy | log | výpisy jsou nasměrovány do Okna zpráv
záložky Ladicí výpisy systému Control Web | xtrace | výpisy jsou nasměrovány do souboru
'\XTRACE.TXT' | windows | výpisy jsou nasměrovány do ladicího okna systému
Windows |
Upozornění: Trasovací výpisy zpomalují činnost aplikace,
popřípadě mohou vést ke zmenšování prostoru v paměti nebo na
disku. Proto se nedoporučuje používat trasovací
výpisy ve finální aplikaci.
Příklad parametrů v sekci [Settings]:
[Settings]
SwapBytes = false
MaxExceptions = 1000
CheckTime = 60
FinalizeAfterEachBlock = false
Trace = log
LocalTSAP = 01.02
Konfigurace kanálů ovladače - sekce [Channels]
Tato sekce definuje jednotlivé kanály nebo skupiny kanálů
ovladače a jejich reprezentaci v paměti PLC. Skupiny se
definují po jednotlivých blocích. Blok je definován intervalem
kanálů, identifikátorem spojení, datovou oblastí v PLC,
datovým typem, a počáteční adresou v dané oblasti. V případě
použití obousměrných kanálů je možno definovat parametr
bidirect, který zamezí vzniku kolizí při současném čtení
i zápisu stejného kanálu - pak jsou v ovladači vytvořeny dva
zvláštní bloky, jeden pro čtení, druhý pro zápis. Další
nepovinný parametr určuje prohození pořadí byte u typů
zabírajících více než jeden byte v paměti PLC. Součástí
definice bloku může být i komentář. Ten musí být uveden na
samostatném řádku a musí začínat středníkem.
Z pohledu komunikace představuje jeden blok maximální
celistvý úsek, který se dá přenést najednou v rámci jedné
komunikace se stanicí. Použitý komunikační protokol resp.
nižší komunikační vrstvy tuto hodnotu dále upravují. Bude-li
definován delší blok než je možno přenést najednou a budou-li
zadány požadavky na čtení nebo zápis všech kanálů bloku,
rozpadne se komunikace na několik částí tak, aby byla všechna
data přenesena.
Následuje způsob zápisu parametrů a jejich možné hodnoty.
Každé skupině (bloku) kanálů odpovídá jeden řádek textu.
V hranatých závorkách jsou uvedeny nepovinné nebo doplňující
parametry:
[Channels]
Block = <From>,<To>,<Con>,<Area>[,<Type>][,<Adr>][,Bidirect][,SwapBytes][,Id:<Name>]
Block = ...
...
From | číslo prvního kanálu v bloku. | To | číslo posledního kanálu v bloku. | Con | identifikátor spojení (sekce [Connection]). | Area | kód datové oblasti v PLC. Možné hodnoty jsou: D | oblast paměti D (datablocks). | V | oblast paměti V (variable memory). Je dostupná
pouze u S7-200. | M | oblast paměti M (flag bytes). | A | oblast binárních výstupů. Je možno použít také
symbol O nebo Q. | E | oblast binárních vstupů. Je možno použít také
symbol I. | T | oblast časovačů. Parametry bloku Type
a Adr se nezadávají. | Z | oblast čítačů. Je možno použít také symbol C.
Parametry bloku Type a Adr se
nezadávají. | DT | takto označená oblast se využívá pro čtení nebo
zápis data a času v PLC. Blok by měl obsahovat šest
kanálů. Struktura data a času je přístupná přes
jednotlivé kanály bloku po položkách v pořadí: rok,
měsíc, den, hodina, minuta, sekunda. Parametry bloku
Type a Adr se nezadávají.
| DTStr | takto označená oblast se využívá pro čtení nebo
zápis data a času v PLC. Datum a čas se přenáší jako
textový řetězec ve formátu 'YYYY-MM-DD hh:mm:ss'.
Parametry bloku Type a Adr se
nezadávají. | DTSync | takto označená oblast se využívá pro
synchronizaci času PLC s časem v počítači. Kánál v bloku
je určen pouze pro zápis a jeho obsah nemá význam -
zápisem libovolné hodnoty do kanálu vyvolá synchronizaci
času v PLC. Parametry bloku Type a Adr
se nezadávají. |
| Type | typ dat v oblasti. Možné hodnoty jsou: bits | 8 boolean kanálů v jednom byte
paměti. Typ bits pracuje vždy s celým byte
v paměti PLC. Je-li nastaven tento typ, pak bude
nejmenší přenesené množství dat 1 byte. | sbit | tento typ slouží pro nastavení (zápis)
jednotlivých bitů v oblastech D (Data blocks), M
(Merkers) a A (Outputs). Při zápisu více než 8 bitů
najednou je efektivnější použít typ bits.
Při čtení dat typu sbit z PLC se bude
komunikovat stejně jako u typu bits po
celých byte. | bool8 | jeden boolean kanál v jednom byte
paměti PLC. Nulová hodnota je false,
nenulová hodnota je true. | uint8 | 8-bitové číslo bez znaménka | int8 | 8-bitové číslo se znaménkem | uint16 | 16-bitové číslo bez znaménka | int16 | 16-bitové číslo se znaménkem | uint32 | 32-bitové číslo bez znaménka | int32 | 32-bitové číslo se znaménkem | float32 | 32-bitové desetinné číslo podle normy
IEEE-754 | float32s | 32-bitové reálné číslo používané u PLC SIMATIC S5
(formát KG) | string[N] | Textový řetězec. Do hranatých závorek se uvede
velikost řetězce. Řetězec je vlastně struktura, ve které
první byte obsahuje velikost, druhý byte obsahuje
aktuální délku a pak následují znaky řetězce. Do
aplikace se první dva byte nepředávají (jsou vynechány).
Řetězec se komunikuje vždy celý, i když jeho aktuální
délka je menší. V takovém případě je řetězec doplněn do
své velikosti nulami. Součástí komunikovaného řetězce
do/z PLC je i jeho velikost a aktuální délka. Maximální
velikost řetězce je 254 znaků. |
| Adr | počáteční adresa v datové oblasti. Adresace je po
jednotlivých byte. Pouze u typy T a Z mají délku 2 byte
(word). | Bidirect | příznak toho, že blok slouží jak pro zápis, tak pro
čtení. Tento parametr je nepovinný. | SwapBytes | příznak, který určuje zda se prohazuje pořadí byte ve
slovech v rámci definovaného bloku. Tento parametr je
nepovinný. | Id | Name je jméno identifikátoru bloku.
Identifikátor slouží pro dynamickou změnu počáteční adresy
definovaného bloku za běhu aplikace. Změna adresy se provádí
pomocí procedur ovladače SetBlockId a SetBlockOffset.
Délka identifikátoru může být max. 32 znaků. Tento parametr
je nepovinný. |
Příklad parametrů v sekci [Channels]:
[Channels]
Block = 100, 100, CPU315, DTSync
Block = 110, 115, CPU315, DT
Block = 120, 120, CPU315, DTStr
Block = 200, 299, CPU315, M, sbit, 50
Block = 300, 347, CPU314, A, bits, 124
Block = 500, 547, CPU314, A, bits, 124
Block = 1100, 1999, CPU315, D100, uint16, 50, Id:InD100
Block = 2100, 2999, CPU315, D100, uint16, 50, Id:OutD100
Block = 3000, 3009, CPU315, Z, 0
Block = 4000, 4009, CPU315, T, 0
Kanály ovladače
Ovladač může jednotlivé prvky různých datových oblastí
připojených stanic interpretovat jako svoje kanály, což jsou
číselné nebo logické hodnoty (bity). Definice kanálů se děje
prostřednictvím souboru parametrů v sekci [Channels],
jak je popsáno v kapitole Parametry ovladače.
Vyhražené kanály ovladače
Kromě uživatelsky definovaných kanálů, viz sekce [Channels],
má ovladač skupinu kanálů, které jsou pevně definovány. Tyto
kanály jsou vyhraženy pro poskytování stavových informací
o ovladači a pro řízení jeho činnosti. Jsou mapovány do
intervalu 1 až 99. Proto kanály s těmito čísly nepoužívejte
v definici bloků pro komunikaci.
kanál č.1 - real input - stav
výjimky od ovladače
kanál č.2 - boolean output -
povolení výjimky od ovladače
kanál č.3 - real input - počet
zpracovaných výjimek od ovladače
kanál č.4 - real input - počet
nezpracovaných výjimek, které má ovladač ve frontě
kanál č.5 - real input - adresa
stanice, která způsobila výjimku
kanál č.6 - real input -
chybový kód
kanál č.7 - string input -
popis chyby
kanál č.8 - real input - číslo
prvního kanálu bloku, při jehož přenosu vznikla
chyba
kanál č.9 - real input - číslo
posledního kanálu bloku, při jehož přenosu vznikla
chyba
kanál č.10 - real input - kód
oblasti, při jejímž přenosu vznikla chyba:
68 - oblast D
86 - oblast V
77 - oblast M
65 - oblast A
69 - oblast E
84 - oblast T
90 - oblast Z
48 - oblast DTSync
49 - oblast DT
50 - oblast DTStr
Jedná se vlastně o číselné kódy jednotlivých
znaků. Pomocí funkce char v aplikaci
Control Web lze kód oblasti převést na
řetězec.
kanál č.11 - real input - počet
chyb čtení.
kanál č.12 - boolean output -
vynulování počítadla chyb čtení.
kanál č.13 - real input - počet
chyb zápisu.
kanál č.14 - boolean output -
vynulování počítadla chyb zápisu.
kanál č.15 - není využitý.
kanál č.16 - real input -
chybový kód zařízení.
kanál č.17 - není využitý.
kanál č.18 - string input -
popis chyby zařízení.
Automatická konverze typů
Při definování kanálů ovladače je nutno kromě zápisu bloků
v souboru parametrů vytvořit také soubor '*.DMF',
který obsahuje seznam kanálů a jejich typů pro aplikaci.
Ovladač nevyžaduje striktní dodržování stejných typů
v definici bloků a souboru '*.DMF'. Pouze
doporučujeme aby kanály typu boolean v souboru
'*.DMF' měly své protějšky v blocích v souboru
'*.PAR' jako typy bits, sbit
nebo bool8. Ostatní číselné typy se mohou
kombinovat. Např. v souboru '*.DMF' mohou být
všechny číselné kanály typu real a v blocích
ovladače mohou být uvedeny třeba jako int16.

Příklad automatické konverze typu int16 na
real.
Procedury ovladače
Aplikace může volat ovladači určité procedury, pomocí nichž je
možno řídit chování ovladače nebo získat důležité informace. To se
děje prostřednictvím systémové procedury:
system.DriverQueryProc( DriverName : string; Param1 : any; &Param2 : any )
Její parametry mají následující význam:
DriverName je symbolické jméno ovladače,
definované v aplikaci.
Param1 slouží k zadání povelu (jména procedury
ovladače).
Param2 je použit jako parametr nebo návratová
hodnota.
DriverName a Param1 se zadávají jako textové
řetězce. Param2 je různého typu podle významu procedury.
Některé procedury, sloužící k nastavení parametrů, mohou skončit
chybou. Výsledek naposled vykonané procedury je možno získat
voláním procedury GetResult.
Přehled a význam jednotlivých procedur ovladače (parametr Param1)
- GetResult
-
Vrátí výsledek naposledy volané procedury ovladače.
Výsledkem je některý z chybových kódů, popsaných v kapitole
Chybové kódy. Tato procedura by
se měla volat po volání těch procedur, u kterých může nastat
chyba.
- GetVersion
-
Vrátí v Param2 řetězec popisující jméno a verzi
ovladače.
- GetMajorVersion
-
Vrátí vyšší slovo verze produktu Control Web.
- GetMinorVersion
-
Vrátí nižší slovo verze produktu Control Web.
- GetAPIMajorVersion
-
Vrátí vyšší slovo verze API produktu Control Web.
- GetAPIMinorVersion
-
Vrátí nižší slovo verze API produktu Control Web.
- EnableException
-
Voláním této procedury se povolí další výjimka od
ovladače.
- GetErrorCode
-
Vrátí číslo chyby právě zpracovávané výjimky
ovladače.
- GetErrorString
-
Vrátí popis chyby právě zpracovávané výjimky
ovladače.
- GetExcStatus
-
Vrací kód právě zpracovávané výjimky ovladače.
- SetTraceOutput
-
Nastaví cíl trasovacích výpisů komunikace. Parametr udává
cíl výpisů:
0 - žádné trasovací výpisy
1 - výpisy jsou nasměrovány do ladicího
okna systému Windows.
2 - výpisy jsou nasměrovány do Okna
zpráv záložky Ladicí výpisy systému
Control Web
3 - výpisy jsou nasměrovány do souboru
'\XTRACE.TXT'
- SetBlockId
-
Nastaví identifikátor aktuálního bloku kanálů pro změnu
adresy (offsetu) v paměti PLC. Param2 je typu string
a předává se v něm identifikátor bloku (maximálně 32 znaků).
Tento identifikátor musí být shodný s identifikátorem
v definici bloků v souboru parametrů.
- SetBlockOffset
-
Nastavuje adresu (offset) začátku bloku v paměti PLC.
Blok je určen svým identifikátorem v souboru parametrů a
vybrán pomocí procedury SetBlockId. Parametr
udává adresu a může být libovolného číselného typu.
Upozornění: Rozsah parametru se nehlídá.
Mapovací soubor ovladače a datové typy
Tento soubor obsahuje typy kanálů ovladače. Protože ovladač má
jak pevnou množinu kanálů, tak proměnnou množinu kanálů, měl by
tento soubor obsahovat vždy shodnou definici pro vyhrazené kanály
a různou (podle požadavků aplikace) pro kanály definované
uživatelsky v souboru parametrů v sekci [Channels].
Typ dat |
Typ kanálu |
Popis |
uint32 |
číslo |
32-bitová hodnota bez znaménka - 4 byte |
int32 |
číslo |
32-bitová hodnota se znaménkem - 4 byte |
float32 |
číslo |
32-bitová real hodnota - 4 byte |
float32s |
číslo |
32-bitová real hodnota - 4 byte |
|
uint16 |
číslo |
16bitová hodnota bez znaménka - 2 byte |
int16 |
číslo |
16bitová hodnota se znaménkem - 2 byte |
|
uint8 |
číslo |
8bitová hodnota bez znaménka - 1 byte |
int8 |
číslo |
8bitová hodnota se znaménkem - 1 byte |
bool8 |
boolean |
1 boolean hodnota - 1 byte |
bits |
boolean |
1-bitová hodnota - 8 v 1 byte |
|
string[N] |
string |
textový řetězec o max. velikosti 254 znaků. N je
velikost řetězce |
Přehled datových typů ovladače
Zpracování a stavy výjimek ovladače
Při výskytu chyby komunikace vznikne událost, kterou ovladač
může přenést jako výjimku do aplikace. V aplikaci musí být
definován objekt (virtuální přístroj), který má definován parametr
driver_exception se symbolickým jménem tohoto
ovladače. V tomto případě je takový přístroj výjimkou aktivován.
V rámci jeho činnosti je třeba zapsat na kanál č.2 hodnotu true
nebo zavolat proceduru ovladače EnableException. Tím
se povolí vyvolání další výjimky, jakmile nastane nebo pokud není
fronta výjimek prázdná. Přečtením kanálu č.1 je možno zjistit stav
výjimky. Při použití kanálu č.2 je třeba pamatovat na to, aby měl
virtuální přístroj nastaven parametr send_same_data.
Pokud aplikace výjimky nezpracovává, přidávají se do fronty, jejíž
maximální velikost je určena parametrem MaxExceptions
v sekci [Settings].
Kódy pro stavy výjimek ovladače
0 - žádná výjimka od ovladače
1 - výjimka signalizuje chybu při čtení dat.
Její kód a popis je možno získat voláním procedury ovladače
GetErrorCode nebo čtením kanálu č.6.
2 - výjimka signalizuje chybu při zápisu
dat. Její kód a popis je možno získat voláním procedury
ovladače GetErrorCode nebo čtením kanálu č.6.
3 - změna dat v zařízení. U asynchronních
komunikací nebo v případě, že ovladač vystupuje jako
podřízená stanice (slave), se takto signalizuje změna dat
v zařízení.
4 - chyba procedury ovladače. Vykonání
některých procedur ovladače může zabrat poměrně dlouhou
dobu. Proto běží zpravidla ve zvláštním threadu, aby
nezdržovaly běh aplikace. Pokud procedura skončí chybou,
způsobí generování výjimky s tímto kódem.
Chybové kódy
Ovladač generuje následující chybové kódy. Tyto kódy jsou
k dispozici na kanále č.6. Kód a popis chyby je také možno získat
voláním procedur ovladače GetErrorCode a GetErrorString.
Při vzniku chyby se současně vypíše hlášení do Okna
zpráv systému Control Web.
0 - úspěšná operace
1 - chyba timeoutu
2 - neplatná hodnota
3 - neexistující kanál
1000 - vnitřní chyba
1001 - chyba kontrolního součtu
1002 - vstupní komunikační buffer je
plný
1003 - nesprávná adresa stanice
1004 - nesprávný kód povelu (funkce)
1005 - přijatá data mají nesprávnou
délku
1006 - chyba potvrzení
1007 - nesprávná odpověď
1020 - nesprávný parametr procedury
1021 - data nejsou k dispozici
1022 - neznámá procedura ovladače
1023 - nesprávný identifikátor bloku
1024 - neplatný offset bloku
1025 - zařízení není připojeno
1026 - datový element je určen pouze pro
čtení
Příklad použití ovladače
Součástí instalace je několik příkladů použití ovladače. Tyto
příklady naleznete v adresáři '%PUBLIC%\Documents\Control Web
7\Examples\S7_TCP Examples'. Součástí příkladů jsou také
soubory '*.DMF' a '*.PAR'. Před spuštěním
příkladů si nejprve tyto soubory upravte podle aktuální
konfigurace.
|