Moravské přístroje, a. s., zdroj: https://www.mii.cz/art?id=160&lang=405, vytištěno: 30.04.2025 19:09:16
Hlavní stránka▹Produkty▹Programový systém Control Web▹Ovladače pro Control Web a OPC Server | 8.1.2019 |
---|
Ovladač pro komunikaci s PLC SIEMENS SIMATIC S7. Ke své činnosti vyžaduje softwarovou podpory PRODAVE od firmy SIEMENS |
Ovladač je určen pro spojení systému Control Web s průmyslovými automaty (PLC) SIMATIC S7 přes rozhraní MPI, PROFIBUS a Industrial ETHERNET. Vlastnosti ovladačeUpozornění: Ovladač S_MPI vyžaduje ke své činnosti nainstalovaný produkt PRODAVE od firmy SIEMENS. Ovladač automaticky detekuje verzi nainstalovaného produktu a použije pouze ty funkce, které jsou k dispozici. Bude-li ovladač nakonfigurován tak, aby používal nepodporované datové oblasti, nastane při startu aplikace chyba.
Seznam sekcí:
Činnost ovladačeOvladač ke komunikaci používá programovou podporu PRODAVE od firmy SIEMENS. Komunikuje přes rozhraní MPI, PROFIBUS nebo Ethernet (Industrial Ethernet). Pro komunikaci protokolem MPI nebo PROFIBUS musí být počítač vybavený patřičným rozhraním (karta do počítače, externí převodník atd.). Pro komunikaci přes Industrial Ethernet stačí běžný síťový adaptér počítače. Ovladač komunikuje s PLC S7-300, 400, M7, C7. Pomocí ovladače je možno číst nebo zapisovat data z datových oblastí D, V, M, A, E, T, Z, S. Navíc je možno nastavovat jednotlivé bity v oblasti M. 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, S) 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 = true, nenulová hodnota = false). Datové kanály ovladače (jejich počet a typ) se konfigurují v souboru parametrů podle požadavků uživatele. Parametry ovladačePomocí 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. Poznámka: U názvů sekcí a parametrů je třeba dodržet správný zápis velkých a malých písmen. 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 S_MPI se definují na jednotlivých řádcích podle následujícího pravidla (maximální počet spojení je 32): [Connection] <Id> = station:<Adr>, segment:<N>, rack:<N>, slot:<N>, cpu:<N> <Id> = ... ...
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. Poznámka: U zkráceného zápisu se musí parametr segment zadat také pro IP nebo MAC adresu. V tomto případě je ale jeho hodnota ignorována. Příklady parametrů v sekci [Connection]ovladače S_MPI : [Connection] CPU1 = station:3, segment:0, rack:0, slot:2, cpu:300 CPU2 = 4, 0, 0, 2, 300 CPU3 = station:10.1.31.24, rack:0, slot:2, cpu:300 CPU4 = 10.1.31.24, 0, 0, 2, 300 CPU5 = station:01-01-01-01-22-22, rack:0, slot:2, cpu: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] DeviceName = <Device> ErrorFile = <File> ProdaveVersion = 60 | 61 ... MaxPacketLength = <N> SwapBytes = true | false MaxExceptions = <N> CheckTime = <N> FinalizeAfterEachBlock = false | true WritePriority = true | false Trace = none | log | xtrace | windows
Následuje výčet a popis jednotlivých parametrů:
Možné hodnoty parametru Trace jsou:
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] DeviceName = S7ONLINE ErrorFile = ERROR.DAT SwapBytes = false MaxExceptions = 1000 CheckTime = 60 FinalizeAfterEachBlock = false Trace = none 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 = ... ...
Poznámka: Typ sbit se uplatňuje pouze na datovou oblast M. U datových oblastí T a Z se neuvádí typ. Ten je vždy uint16. Příklad parametrů v sekci [Channels]: [Channels] 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čeOvladač 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 níže. Vyhražené kanály ovladačeKromě 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.
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čeAplikace 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 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)
Mapovací soubor ovladače a datové typyTento 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].
Přehled datových typů ovladače Zpracování a stavy výjimek ovladačePř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
Chybové kódyOvladač 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.
Programová podpora PRODAVEOvladač vyžaduje, aby byl na počítači nainstalován produkt PRODAVE (v.5.5 a vyšší) od firmy Siemens. Tento produkt se vyskytuje v různých verzích. Verze 5.5 má dvě varianty – PRODAVE S7 a PRODAVE S7 mini. Verze PRODAVE S7 mini umožňuje přenášet pouze data z databloků u řady S7-300/400/M7/C7. U řady S7-200 dovoluje pouze přenos dat v oblasti V. Plná verze PRODAVE S7 podporuje přenos dat i z oblastí M, A, E, T, Z, S. Verze PRODAVE MPI/IE V6.0 resp. PRODAVE MPI/IE V6.1 se funkčně podobá plné verzi 5.5, ale navíc podporuje komunikaci přes síťové rozhraní počítače (Industrial Ethernet). Poznámka: Existuje také verze PRODAVE V6, která nepodporuje komunikaci přes Industrial Ethernet. Ke komunikaci přes rozhraní MPI nebo PROFIBUS je potřeba příslušný hardware. Tím může být např. komunikační karta CP5611 pro sběrnici PCI nebo PCMCIA karta CP5511. Dále je možno použít externí PC Adaptér (MPI), který se připojuje na standardní sériové rozhraní počítače RS-232. Samozřejmě je nezbytné, aby byly k použitému hardware nainstalovány patřičné ovladače. Pro komunikaci přes rozhraní Industrial Ethernet stačí běžná síťová karta. Potřebné ovladače pro tuto komunikaci jsou obsaženy v podpoře PRODAVE. Poznámka: Nelze použít kombinaci S7-200 a PC Adaptér (MPI). Konfigurace rozhraní Siemens PG/PCPro správnou činnost ovladače je důležité správně nastavit některé parametry v nástrojích konfigurace interface PG/PC. Tyto nástroje se nacházejí v ovládacích panelech systému Windows pod ikonou: Nejdříve je nutné vybrat tzv. Access Point. Z nabídky vybereme S7ONLINE: Pro něj budeme nastavovat další parametry. Vybereme komunikační kartu a typ rozhraní MPI. Např. pro kartu CP5611 vypadá situace takto: Použijeme-li PC Adaptér (MPI) vybereme: Tlačítkem Properties vyvoláme další možnosti nastavení pro konkrétní hardware. Důležité je nastavit správně komunikační rychlosti a to, jestli bude počítač (PG/PC) jedinou nadřízenou stanicí (master) v síti. U spojení s S7-200 je nutné tuto volbu zaškrtnout. Při instalaci ovladače S_MPI se v kořenovém adresáři produktu Control Web vytvoří soubor 'ERROR.DAT', který obsahuje chybové zprávy. Programová podpora PRODAVE obsahuje soubory 'ERROR.ENG' a 'ERROR.GER', ve kterých jsou tatáž chybová hlášení v anglickém a německém jazyce. Soubor 'ERROR.DAT' je možno nahradit jedním z těchto souborů, přičemž je třeba zachovat jeho příponu ('DAT'). Příklad použití ovladačeSoučástí instalace je několik příkladů použití ovladače. Tyto příklady naleznete v adresáři '%PUBLIC%\Documents\Control Web 7\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. |