Tvorba HMI pro externí webserver PLC

Šablony uživatelského rozhraní HMI (Human-machine interface) slouží k jednoduchému ovládání a sledování jednoho či více zařízení. Grafické HMI rozhraní je určené pro webové prohlížeče a umožní vám monitorovat stav, nebo ovládat automatizační procesy. Nejjednodušší variantou je šablona pro lokální web na PLC. Dalšími variantami jsou terminálové grafické šablony pro Mervis SCADA a pro externí webserver.

Patron
Neuron
Gate
Unipi 1.1
Axon

Co budete potřebovat?

Terminál Externího webového serveru je virtuální zařízení v Mervis IDE sdružující informace o vybraných PLC projektu. Ve vlastnostech terminálu nastavujete údaje potřebné pro připojení a nahrání externího webového serveru do vybraného PLC. Externí webový server je vždy uložen pouze na jednom PLC, kde komunikuje pomocí protokolu SSCP s ostatními PLC obsaženými v definici terminálu. Tímto způsobem čte/zapisuje do konkrétní proměnné.

Vytvořte nový projekt, nebo integrujte do vašeho stávajícího projektu. Externí webserver je primárně určen pro dvě a více PLC se společným HMI rozhraním. Pro přidání dalšího PLC je nejprve nutné projekt přepnout do Plného módu. Tím také vypnete automatické vytváření proměnných “Autogen” a je jej nutné spouštět manuálně, nebo si vytvářet vlastní definice proměnných. Postupujte dle následujícího návodu:

Vytvoření a popis struktury terminálu

Prvotní nastavení Mervis IDE se dvěmi PLC:

Nyní přidejte terminál kliknutím na Systém, kde zvolte Přidat terminál.

Následně ze seznamu vyberte Controller as External Webserver rev. 2.0.

Klikněte na vytvořený terminál a pojmenujte jej. Nyní je velmi důležité, aby položka Jazyk (WEB) byla nastavena na stejný jazyk jako ve vlastnostech PLC, do kterého nahrajete webový server. Poté jen nastavte Parametry SSCP sloužící pro připojení k PLC a následné nahrání na webový server.

Parametry SSCP:

  • Jméno uživatele: vaše jedinečné jméno uživatele PLC (Engineering)
  • Heslo: vaše jedinečné heslo PLC (Engineering)
  • SSCP adresa: nastavte adresu podle PLC
  • Cílová adresa: IP adresa, nebo doména PLC
  • TCP port: nastavte 12346

Více o uživatelích se dočtete v návodu Vytvoření vzorového projektu, v kap. zabezpečení PLC.

Nyní klikněte pravým tlačítkem myši na komunikační kanál terminálu “terminalChannel” a zvolte Přiřadit zařízení.

Otevře se dialogové okno, kde vyberete konkrétní PLC, pro které chcete společné HMI rozhraní. Potvrďte kliknutím na OK.

Nyní máte vytvořenu základní strukturu projektu, měl by vypadat následovně:

Posledním důležitým krokem je nastavení Parametrů SSCP pro konkrétní PLC, ty slouží pro čtení/zápis proměnných z daných PLC přiřazených v předchozích krocích. Nastavení je principiálně u všech PLC stejné, pouze s rozdílnými údaji. Nyní již konkrétní nastavení.

Pokud je v terminálu obsaženo i PLC na kterém je uložen externí server, musí mít toto PLC vyplněny místní údaje pro připojení (uživatel, heslo, adresa SSCP, adresa TCP, port). V tomto případě nepoužívejte proxy, jelikož by jste se připojovali z PLC na stejné PLC, ale přes externí servery, což by zpomalilo komunikaci.

Klikněte na PLC v kanálu terminálu, v pravém sloupci nyní můžete nastavit Název spojení, poté vyhledejte Parametry SSCP a nastavte následovně:

Parametry SSCP:

  • Koncový bod: Custom
  • Adresa zařízení: zvolte podle vlastností PLC
  • Uživatelské jméno: jméno uživatele PLC - postačí úroveň Plné řízení
  • Heslo: heslo uživatele PLC
  • Proxy ID: pokud je PLC v jiné síti, lze se s ním spojit pomocí proxy - v tom případě vyplňte vaše Proxy ID

Parametry TCP:

  • Adresa zařízení: sem vložte IP adresu, nebo doménu PLC, nebo adresu pro připojení přes proxy - proxy.unipi.technology
  • Port zařízení: 12346 (proxy: 12348)

Nastavení s IP adresou:

Nastavení s proxy:

Více o uživatelích se dočtete v návodu Vytvoření vzorového projektu, v kap. zabezpečení PLC.

HMI šablonu vytvoříte kliknutím pravým tlačítkem myši na HMI projekt, zde vyberte Přidat novou HMI šablonu.

Otevře se vám dialogové okno. Zadejte název a nastavte ostatní kolonky podle použití.

  • Názvy volte s rozvahou a doporučujeme použití prefixu odděleného podtržítkem, např. EXTERNAL_nazev
  • Typ displeje určuje o jaký druh šablony se jedná → Grafický
  • Typ šablony - zde zvolte Terminál
  • Terminal - vyberte terminál externího webserveru pro který je šablona tvořena

Nyní je nutné šablonu přiřadit k terminálu. Klikněte na terminál a v pravé sloupci v jeho vlastnostech nalezněte a zvolte Šablona zařízení. Zde vložte šablonu vytvořenou v předchozích krocích.

V levém panelu dvojklikem otevřete vytvořenou HMI šablonu. Nyní ve spodní části tohoto panelu přepněte na záložku HMI objekty, vaše obrazovka by poté měla vypadat takto:

V okně HMI objekty naleznete širokou škálu grafických elementů, které lze do šablony přidat. V případě našeho tutoriálu začneme s prvkem Value Indicator, který slouží k zobrazování číselných hodnot - ideální pro zobrazení aktuální teploty v kanceláři. V levém panelu na tento prvek klikněte a přetáhněte jej na hlavní panel.

Na panelu přibude nový prvek, který automaticky zůstane vybrán. V panelu Vlastnosti nyní můžete vidět všechny nastavitelné atributy prvku. Pro nás nejdůležitější je vlastnost Proměnná umístěná v sekci HMI. Pomocí tohoto nastavení prvku sdělíme, co má použít jako zdroj zobrazovaných dat. Klikněte na Proměnná levým tlačítkem a poté klikněte na tlačítko .

Objeví se již důvěrně známý dialog Vyberte proměnnou, ve kterém můžete vyhledat svou proměnnou. Pro účely návodu hledáme předem vytvořenou proměnnou kancelar_teplota. Vyhledejte a vyberte ze seznamu, volbu potvrďte kliknutím na OK.

Zpět do panelu Vlastnosti. Nyní změníme vlastnost Jednotka určující jednotku zobrazované hodnoty. Tato jednotka bude v HMI automaticky přidána za zobrazenou hodnotu, a jelikož se jedná o teplotu ve stupních Celsia, nastavíme atribut Jednotka na °C.

Nyní by bylo vhodné hodnotu pojmenovat. Z nabídky HMI objekty vyberte element Text a umístěte jej do šablony. V panelu Vlastnosti pak změňte Text na Aktuální teplota.

Nový název je výrazně delší než původní, pro lepší viditelnost proto můžete textové pole zvětšit přetáhnutím jednoho ze žlutých čtverců okolo prvku.

Textový prvek rovněž není zcela čitelný a jeho současný vzhled evokuje spíše tlačítko než jmenovku. Změníme proto barvu textu na tmavě modrou pomocí vlastnosti Popředí v sekci vlastností Text.

Nyní změňte vlastnost Pozadí na bílou a Vodorovné zarovnání textu na Vpravo

Jako další hledáme prvek pro zobrazení a nastavení hodnoty analogové proměnné. Teoreticky bychom mohli opět použít Value indicator, tento prvek ale umožňuje pouze zobrazení hodnoty, nikoliv její změny. Lepší volbou zde bude Analog Setter. Vyberte jej a umístěte jej na pracovní plochu. V sekci vlastností HMI pak proveďte následující nastavení.

  • Proměnná, zde vyberte vhodnou proměnou reprezentující teplotu, v případě tohoto návodu zvolím proměnnou hranicni_teplota
  • Jednotka bude nastavena na °C, neboť proměnná je vyjádřena ve stupni Celsia
  • Min. hodnota bude 18, což uživateli zabrání nastavit teplotu menší než 18 °C
  • Max. hodnota bude 30, což uživateli zabrání nastavit teplotu vyšší než 30 °C
  • Krok, neboli stupeň po kterém bude moci být teplota upravována, nastavte na 0.5

Rovněž vytvoříme textové označení prvku, stejně jako jsme učinili u Aktuální teploty. Zde můžete textové pole jednoduše zkopírovat a následně upravit text.

Poslední prvek, který budeme potřebovat, je indikátor stavu topení, tj. zda je topení zapnuto (ON) či vypnuto (OFF). I zde bychom mohli použít prvek Value indicator, ten by ale zobrazoval pouze hodnoty 0 a 1. Lepší volbou proto bude digitální prvek Digital Indicator. Vyberte jej a umistěte jej na pracovní plochu. Zde je třeba provést jen výběr správné proměnné např. DI_1.02.

Doporučujeme vždy pojmenovávat vstupy/výstupy smysluplnými názvy jako např. svetlo_kuchyn, dverni_zvonek apod. Existují dva hlavní důvody

  1. Takové názvy učiní projekt výrazně čitelnějším a přehlednějším
  2. Pokud se rozhodnete pro fyzické přepojení senzoru do jiného vstupu, stačí jen přejmenovat vstupní proměnnou - zbytek programu pak bude nadále užívat stejný název

Nyní už nás čeká jen pár posledních úprav. Vytvořte pro indikaci stavu topení jméno a poté vytvořte další, větší textové pole označující název celého HMI projektu. Výsledek může vypadat například takto:

Zabezpečení HMI je důležité nastavení, umožňující nastavení uživatelů a skupin uživatelů pro webový přístup. Pokud zabezpečení nezměníte, může se každý uživatel ve stejné síti připojit k HMI přístupu za pomoci výchozích hesel a měnit tak údaje v PLC. Nikdy nesmíte umožnit přístup k webovému serveru za pomoci veřejné IP adresy. Webový server na PLC má sloužit výhradně k účelům na lokální síti. Pro přístup z internetu použijte Mervis SCADA.

Ve vlastnostech každé stránky HMI šablony můžete nastavit skupinu uživatelů, kteří mají k této stránce přístup. Každý uživatel může patřit do jedné, více, nebo všech skupin a to samostatně nastavitelných pro čtení a zápis.

Dvojklikem v levém panelu otevřete:

  • PLC (lokální webserver)
  • Terminál (externí webserver).

Na spodním panelu PLC najděte a klikněte na Uživatelská práva pro HMI.

Zde se vám zobrazí seznam uživatelů, výchozí hesla změňte. Máte zde také možnost zvlášť nastavit pro uživatele skupinu pro čtení a pro zápis. V posledních dvou sloupcích nastavujete, který uživatel je administrátorský a který je výchozí. Pokud je výchozí uživatel bez hesla, HMI se zobrazí bez požadavku na heslo. Pokud použijete toto nastavení, doporučujeme neudělit pro tohoto uživatele práva k zápisu.

Pokud na volné ploše pod uživateli kliknete pravým tlačítkem, rozbalí se vám nabídka, kde máte možnost přidat dalšího uživatele. Ostatní možnosti slouží pro změnu uživatele a jsou k dispozici po kliknutí pravým tlačítkem na některého z uživatelů.

Když na spodním panelu v záložce PLC kliknete na Definici skupiny, otevře se vám nastavení skupin. Zde můžete přidat, nebo upravovat skupiny stejným způsobem jako uživatele. Máte zde i sloupec pro volbu výchozí skupiny, která se automaticky přidělí novému uživateli.

Všechny změny je nutné potvrdit, aby se uložily. Podvrdíte stiskem OK na červené liště.

Zde vidíte příklad konfigurace uživatelů.

Ve vlastnostech každé stránky HMI můžete nastavit skupinu, která má k této stránce přístup.

Pro nahrání klikněte na Nahrát sestavu, otevře se dialog pro nahrávání. Ujistěte se, že u PLC/terminálu je Web zaškrtnut k nahrání. U externího webového serveru se ujistěte, že do tohoto PLC nahráváte pouze tento externí web. server, nikoli lokální.