ARIES PLC110[M02]-MS4, HMI, OPC a SCADA aneb kolik Heřmánkového čaje člověk potřebuje. Část 1

Dobré odpoledne, milí čtenáři tohoto článku. Píšu to ve formátu recenze.

Malé varováníUpozorňuji, že pokud jste hned z nadpisu pochopili, o čem mluvíme, doporučuji změnit první bod (vlastně jádro PLC) na cokoli z cenové kategorie o stupínek výše.
Žádná úspora peněz subjektivně nestojí za tolik nervů.

Pro ty, kteří se nebojí trochu šedivých vlasů a amplitudy nervového tiku, později podrobně popíšu, jak tento technologický zázrak vznikl. Tento článek poskytuje stručnou analýzu projektu s jistou dávkou kritiky.

Původ. Formulace problému

Ve skutečnosti pracuji v projekční kanceláři a testujeme automatizační zařízení pro integraci do našich továren na klíč. Nedávno dorazilo do skladu zařízení OWEN a bylo rozhodnuto sestavit z něj zkušební stolici:

  • PLC110[M02]-MS4 (výkonné prostředí MasterSCADA 4D)
  • Ovládací panel SP307
  • Univerzální vstupní modul analogového signálu МВ110-224.2А
  • Vstupní modul signálu tenzometru MV110-4TD
  • Elektrický měřicí modul MV110-220.3M

Struktura systému byl vybrán s rozlišením sítí podle účelu:

  1. Modbus RTU na bázi RS-485 - komunikace mezi PLC a slave zařízeními (moduly, frekvenční měniče, chytré senzory, HMI panel SP307), master sítě PLC.
  2. Modbus TCP založený na Ethernetu - Komunikace různých PLC mezi sebou a s OPC serverem
  3. OPC a SCADA systémový PC server je současně bránou mezi dvěma různými sítěmi (Corporate LAN of enterprise a Modbus TCP síť kontrolérů (dva síťové adaptéry se směrováním dat pomocí standardních nástrojů Windows)
  4. Firemní LAN má přístup k internetu přes proxy server

Obecná struktura systému je znázorněna na obrázku níže:

ARIES PLC110[M02]-MS4, HMI, OPC a SCADA aneb kolik Heřmánkového čaje člověk potřebuje. Část 1

Vestavěná funkčnost

  • Sběr a přesměrování dat z PLC na OPC server
  • Lokální ovládání a monitorování přes HMI panel
  • Řízení a monitorování ze SCADA přes OPC server
  • Ovládání z libovolného PC z podnikové LAN a přes internet pomocí SCADA klienta
  • Připojení mobilních OPC monitorů přes LAN a Internet
  • Samozřejmostí je archivace a generování reportů

Zdá se, že nic nechybělo. Existuje obecný popis systému a nyní vlastně k tématu (způsoby eliminace popíšu v článcích s implementací každého uzlu):

Vyskytly se potíže

1. Dokumentace PLC

Beta testování deklarovaného PLC na jádře MasterSCADA 4D bylo výrobcem indikováno v roce 2012. Navzdory tak působivé životnosti konceptu má vývojář v roce 2019 k dispozici pouze programovací manuál o 28 (!?) stranách, na kterém je o něco méně než žádné užitečné informace a screenshoty v manuálu jsou z MasterSCADA 3D, což je docela vtipné, když vezmeme v úvahu, že se rozhraní změnilo.

Vlákno fóra s 20 tématy je také aktivně podporováno třemi přívrženci a manažerem prodeje.

2. Architektura PLC modulů

Toto je samostatné téma k diskusi. Stručně: PLC komunikuje s moduly jako Modbus RTU slave zařízení, která musí být nejprve konfigurována obslužným programem samostatně připojením každého k PC přes převodník RS-485.

Chytří kluci to samozřejmě asi umí bez převodníku přes PLC, sekvenčně připojovat moduly do sítě a zapisovat potřebné registry, ale to přichází se zkušenostmi a obrovskou bolestí.

Pro vývojáře, který takovou architekturu vidí poprvé, není vůbec uživatelsky přívětivá.
Také všechny analogové moduly z neznámých důvodů rády selhávají a berou s sebou celou síť RS-485 v Terra Incognita, ale o tom chci také mluvit samostatně, samozřejmě o celém eposu. Problém je mimochodem 10 let starý, výrobce se tomu směje „Musíme přiznat, že nám šablony nefungovaly“Toto je však jediné rozhraní pro komunikaci s moduly a lidé, zcela vážně, píší své implementace Modbus RTU již dlouhou dobu.

Mezitím docházel heřmánkový čaj... Slunce zapadalo

3. IDE MasterSCADA

Nebudeme se bavit o grafických nástrojích, moc jsem je netestoval, ale hned řeknu, že se mi to nelíbilo.

Hovoříme o implementaci výměny dat a standardních jazyků IEC:

Fyzické vstupy a výstupy regulátoru nejsou globální proměnné a nelze k nim přistupovat z žádné části programu zapsáním aliasu, například „DI1“. Tu byste měli do každého programu přetáhnout pomocí handle, vytvoří se tam lokální proměnná, která zdědí nebo přenese hodnotu. Tito. samotná podstata PLC se v mé představě trochu ztrácí: zařízení by mělo zjednodušit programování logiky provozu fyzických kanálů na úroveň "Pokud je vstup DI1 spuštěn, zapněte výstup DO1"a vypadá to takto "Vstup DI1 - proměnná LI1 - proměnná LO1 - výstup DO1", také kvůli neznalosti tohoto principu IDE můžete zaznamenat slastné varování „Boolean-Boolean conversion is nemožná“ (s největší pravděpodobností je jedním z nich ukazatel, ale v editorech tvůrců si představuji, že je to harmoničtější) .

Knihovny jazyků ST, FBD, SFC jsou poměrně objemné a existuje možnost volby pro snadné programování, tyto komponenty však nejsou funkcemi, ale třídami, do kterých jsou zabudovány metody, a za druhé, většina z nich nemá pomoc s popisem funkčnost a datové typy. Vytrvalost mě zavedla do knihoven jádra CodeSys, odkud byly všechny tyto funkce převzaty, pomohla jejich pomoc.

4. Výměna za panel SP307

Docela zajímavá akce pro ty, kteří nemají kde strávit pár dní.

Standardní testování GUI (HMI nebo SCADA) pro mě znamená provést 6 testů:

  1. Čtení diskrétního signálu
  2. Nahrávání diskrétního signálu
  3. Čtení celočíselné hodnoty
  4. Zápis celočíselné hodnoty
  5. Čtení skutečné hodnoty
  6. Psaní skutečné hodnoty

Podle toho nakreslím na obrazovku 6 primitivních komponent a každou zkontroluji v pořadí
Výměna je naprosto stejná jako u modulů, ale ze samostatného PLC portu RS-232/485 a zdá se, že stabilnější. Vzhledem k tomu, že se jedná o HMI slave, napsal jsem do něj změnou a přečetl jsem jej během 500 ms dotazování, abych nezmeškal akce operátora.

První 4 body byly splněny perfektně, ale body 5 a 6 způsobily problémy.

Odešleme data typu Single Float, zobrazíme je na obrazovce a vidíme, že data nejsou stejná, ačkoli všechna nastavení výstupu (Float, registr dimenze 1 atd.) jsou správná. Bylo by lží tvrdit, že precedent není v dokumentaci popsán, ale zkuste najít který a kde, zvenčí je to vtipné.

Po hysterickém prohledávání všech nastavení ohledně samotných dat a jejich odesílání, Píšeme na technickou podporu, odpověď je v průměru 5-6 kalendářních dnů, pracujeme podle standardního skriptu technické podpory „Zkontrolujte, zda je napájení zapnuto – zkontrolujte verzi softwaru – počkejte prosím ještě týden – pojďme na to sami “.

Mimochodem, rozhodlo se o instalaci jednoho klíštěte na absolutně neadekvátní místo s absolutně nedostatečným podpisem.

Ve funkčnosti obrazovky Vstup analogového signálu ve formátu „Slider“ není součástí dodávky, lze do textového pole zadat pouze pomocí čísel. To je prostě úžasné, buď si tlačítka „±“ a skript napíšeme sami, nebo zadáme číslo z klávesnice a zapomeneme na měkké ovládání nějaké mechaniky.

Nebudu článek zahlcovat, takže problémy s nejvyšší úrovní popíšu v části 2.

shrnutí, Chci poznamenat, že jsem měl dostatečnou volnost a spoustu času na řešení těchto problémů, které na první pohled vypadají legračně, ale oběti způsobují mnoho bolesti. V podmínkách omezeného času je kritické čelit takovým problémům.

PS: Všechny zde prezentované teze jsou subjektivní, a jsou pouze snahou varovat nepřipravené, a ne diskriminovat výrobce, žádám vás, abyste tento článek brali z tohoto úhlu pohledu.

Druhý díl už je tady: klikněte

Zdroj: www.habr.com

Přidat komentář