Ovládací panel Habr založený na HMI od Advantech


Video: Administrátorská konzole Habr. Umožňuje regulovat karmu, hodnocení a zakázat uživatele.

TL; DR: V tomto článku se pokusím vytvořit komiksovou ústřednu Habr pomocí vývojového prostředí průmyslového rozhraní Webaccess/HMI Designer a terminálu WebOP.

Rozhraní člověk-stroj (HMI) je soubor systémů pro interakci člověka s řízenými stroji. Obvykle se tento termín používá pro průmyslové systémy, které mají operátora a ovládací panel.

WebOP — autonomní průmyslový terminál pro vytváření rozhraní člověk-stroj. Používá se k vytváření výrobních ovládacích panelů, monitorovacích systémů, velínů, ovladačů inteligentních domů atd. Podporuje přímé připojení k průmyslovému zařízení a může pracovat jako součást systému SCADA.

Terminál WebOP - hardware

Ovládací panel Habr založený na HMI od AdvantechTerminál WebOP je nízkoenergetický počítač na bázi procesoru ARM, v jediném pouzdře s monitorem a dotykovou obrazovkou, určený ke spouštění programu s grafickým rozhraním vytvořeným v HMI Designer. V závislosti na modelu mají terminály na desce různá průmyslová rozhraní: RS-232/422/485, sběrnice CAN pro připojení k automobilovým systémům, port USB Host pro připojení dalších periferií, port USB Client pro připojení terminálu k počítači, audio vstup a audio výstup, čtečka karet MicroSD pro energeticky nezávislou paměť a přenos nastavení.

Zařízení jsou umístěna jako rozpočtová náhrada za all-in-one PC pro úkoly, které nevyžadují výkonné procesory a zdroje plnohodnotného stolního počítače. WebOP může fungovat jako samostatný terminál pro ovládání a vstup/výstup dat, spárovaný s jinými WebOP nebo jako součást SCADA systému.

Ovládací panel Habr založený na HMI od Advantech
Terminál WebOP lze připojit přímo k průmyslovým zařízením

Pasivní chlazení a krytí IP66

Kvůli nízkému odvodu tepla jsou některé modely WebOP navrženy zcela bez aktivního chlazení vzduchem. To umožňuje montáž zařízení v oblastech citlivých na hladinu hluku a snižuje množství prachu pronikajícího do krytu.

Přední panel je vyroben bez mezer a spojů, má stupeň krytí IP66 a umožňuje přímý průnik vody pod tlakem.

Ovládací panel Habr založený na HMI od Advantech
Zadní panel terminálu WOP-3100T

Energeticky nezávislá paměť

Aby nedošlo ke ztrátě dat, má WebOP 128Kb energeticky nezávislé paměti, se kterou lze pracovat stejně jako s RAM. Může ukládat odečty měřidel a další kritická data. V případě výpadku napájení se data uloží a po restartu se obnoví.

Vzdálená aktualizace

Program běžící na terminálu lze aktualizovat vzdáleně přes síť Ethernet nebo přes sériové rozhraní RS-232/485. To zjednodušuje údržbu, protože odpadá nutnost chodit na všechny terminály kvůli aktualizaci softwaru.

Modely WebOP

Ovládací panel Habr založený na HMI od Advantech
Řada 2000T - cenově nejdostupnější zařízení postavená na bázi operačního systému reálného času HMI RTOS. Sérii zastupuje WebOP-2040T/2070T/2080T/2100Ts úhlopříčkami obrazovky 4,3 palce, 7 palců, 8 palců a 10.1 palců.

Ovládací panel Habr založený na HMI od Advantech
Řada 3000T — pokročilejší modely založené na operačním systému Windows CE. Liší se od řady 2000T velkým počtem hardwarových rozhraní a mají na desce rozhraní CAN. Zařízení pracují v rozšířeném teplotním rozsahu (-20~60°C) a mají antistatickou ochranu (vzduch: 15KV/kontakt: 8KV). Řada plně splňuje požadavky normy IEC-61000, což umožňuje použití zařízení ve výrobě polovodičů, kde je problémem statický výboj. Sérii zastupuje WebOP-3070T/3100T/3120Ts úhlopříčkami obrazovky 7 palců, 10.1 palců a 12.1 palců.

Vývojové prostředí WebAccess/HMI Designer

Terminál WebOP je po vybalení pouze nízkoenergetický počítač ARM, na kterém můžete provozovat jakýkoli software, ale smyslem tohoto řešení je proprietární vývojové prostředí průmyslového rozhraní WebAcess/HMI. Systém se skládá ze dvou komponent:

  • Návrhář HMI — prostředí pro vývoj rozhraní a programovací logiky. Běží pod Windows na počítači programátora. Finální program je zkompilován do jednoho souboru a přenesen do terminálu pro spuštění za běhu. Program je k dispozici v ruštině.
  • HMI Runtime — runtime pro spuštění zkompilovaného programu na konečném terminálu. Může fungovat nejen na terminálech WebOP, ale také na Advantech UNO, MIC a běžných stolních počítačích. Existují runtime verze pro Linux, Windows, Windows CE.

Ovládací panel Habr založený na HMI od Advantech

Ahoj světe - vytvoření projektu

Začněme vytvářet testovací rozhraní pro náš ovládací panel Habr. Program spustím na terminálu WebOP-3100T běžící WinCE. Nejprve vytvořte nový projekt v HMI Designer. Pro spuštění programu na WebOP je důležité vybrat správný model, od toho se bude odvíjet formát výsledného souboru. V tomto kroku můžete také vybrat architekturu desktopu, poté bude výsledný soubor zkompilován pro běhové prostředí X86.

Ovládací panel Habr založený na HMI od Advantech
Vytvoření nového projektu a výběr architektury

Výběr komunikačního protokolu, přes který se bude kompilovaný program načítat do WebOP. V tomto kroku můžete vybrat sériové rozhraní nebo zadat IP adresu terminálu.
Ovládací panel Habr založený na HMI od Advantech

Rozhraní pro vytváření projektů. Na levé straně je stromové schéma komponent budoucího programu. Nás zatím zajímá pouze položka Screens, jedná se přímo o obrazovky s prvky grafického rozhraní, které se zobrazí na terminálu.

Ovládací panel Habr založený na HMI od Advantech

Nejprve si vytvořte dvě obrazovky s textem „Hello World“ a možností mezi nimi přepínat pomocí tlačítek. K tomu přidáme novou obrazovku Screen #2 a na každou obrazovku přidáme textový prvek a dvě tlačítka pro přepínání mezi obrazovkami (Screen Buttons). Pojďme nakonfigurovat každé tlačítko pro přepnutí na další obrazovku.
Ovládací panel Habr založený na HMI od Advantech
Rozhraní pro nastavení tlačítka pro přepínání mezi obrazovkami

Program Hello World je připraven, nyní jej můžete zkompilovat a spustit. Ve fázi kompilace může dojít k chybám v případě nesprávně zadaných proměnných nebo adres. Jakákoli chyba je považována za závažnou, program bude zkompilován pouze v případě, že se nevyskytnou žádné chyby.
Prostředí poskytuje možnost simulovat terminál, abyste mohli lokálně ladit program na vašem počítači. Existují dva typy simulace:

  • Online simulace — budou použity všechny externí zdroje dat specifikované v programu. Mohou to být USO nebo zařízení připojená přes sériová rozhraní nebo Modbus TCP.
  • Offline simulace — simulace bez použití externích zařízení.

I když nemáme externí data, používáme offline simulaci poté, co jsme předtím zkompilovali program. Konečný program bude umístěn ve složce projektu s názvem Název_projektu_Název_programu.px3

Ovládací panel Habr založený na HMI od Advantech
Program běžící v simulaci lze ovládat kurzorem myši stejným způsobem, jako by to bylo na dotykové obrazovce terminálu WebOP. Vidíme, že vše funguje tak, jak má. Skvělý.
Pro stažení programu do fyzického terminálu stačí kliknout na tlačítko Stáhnout. Protože jsem ale nenakonfiguroval připojení terminálu k vývojovému prostředí, můžete soubor jednoduše přenést pomocí USB flash disku nebo paměťové karty MicroSD.
Ovládací panel Habr založený na HMI od Advantech
Rozhraní programu je intuitivní, nebudu procházet každý grafický blok. Vytváření pozadí, tvarů a textu bude jasné každému, kdo používal programy podobné Wordu. K vytvoření grafického rozhraní nejsou potřeba žádné znalosti programování, všechny prvky se přidávají přetažením myši do formuláře.

Práce s pamětí

Nyní, když víme, jak vytvářet grafické prvky, pojďme se naučit pracovat s dynamickým obsahem a skriptovacím jazykem. Vytvořme sloupcový graf zobrazující data z proměnné U $ 100. V nastavení grafu vyberte typ dat: 16bitové celé číslo a rozsah hodnot grafu: od 0 do 10.

Ovládací panel Habr založený na HMI od Advantech

Program podporuje psaní skriptů ve třech jazycích: VBScript, JavaScript a jeho vlastním jazyce. Použiji třetí možnost, protože přímo v editoru jsou na ni příklady v dokumentaci a automatická nápověda k syntaxi.

Přidáme nové makro:

Ovládací panel Habr založený na HMI od Advantech

Pojďme napsat nějaký jednoduchý kód pro postupnou změnu dat v proměnné, kterou lze sledovat v grafu. K proměnné přidáme 10 a vynulujeme ji, když je větší než 100.

$U100=$U100+10
IF $U100>100
$U100=0
ENDIF

Chcete-li skript spouštět ve smyčce, nastavte jej v nastavení Obecného nastavení jako Hlavní makro s intervalem provádění 250 ms.

Ovládací panel Habr založený na HMI od Advantech
Pojďme zkompilovat a spustit program v simulátoru:

Ovládací panel Habr založený na HMI od Advantech

V této fázi jsme se naučili manipulovat s daty v paměti a zobrazovat je vizuálně. To již stačí k vytvoření jednoduchého monitorovacího systému, který přijímá data z externích zařízení (senzory, ovladače) a zaznamenává je do paměti. V HMI Designer jsou k dispozici různé bloky zobrazení dat: ve formě kruhových číselníků se šipkami, různých tabulek a grafů. Pomocí skriptů JavaScript můžete stahovat data z externích zdrojů přes HTTP.

Ovládací panel Habr

S využitím získaných dovedností vyrobíme komiksové rozhraní pro administrátorskou konzoli Habr.

Ovládací panel Habr založený na HMI od Advantech

Naše dálkové ovládání by mělo umět:

  • Přepnout uživatelské profily
  • Ukládejte karmu a data hodnocení
  • Změňte hodnoty karmy a hodnocení pomocí posuvníků
  • Když kliknete na tlačítko „zakázat“, profil by měl být označen jako zakázaný, avatar by se měl změnit na přeškrtnutý

Každý profil zobrazíme na samostatné stránce, takže pro každý profil vytvoříme stránku. Karmu a hodnocení uložíme do lokálních proměnných v paměti, které budou inicializovány pomocí Setup Macro při spuštění programu.

Ovládací panel Habr založený na HMI od Advantech
Obrázek je klikací

Úprava karmy a hodnocení

Pro úpravu karmy použijeme posuvník (Slide Switch). Jako adresu záznamu určíme proměnnou inicializovanou v Setup Macro. Omezme rozsah hodnot posuvníku od 0 do 1500. Nyní, když se posuvník pohne, budou se do paměti zapisovat nová data. V tomto případě bude počáteční stav posuvníku odpovídat hodnotám proměnné v paměti.

Ovládací panel Habr založený na HMI od Advantech
Pro zobrazení číselných hodnot karmy a hodnocení použijeme prvek Numeric display. Princip jeho činnosti je podobný schématu z ukázkového programu „Hello World“, adresu proměnné jednoduše uvedeme v Monitor Address.

Tlačítko zákazu

Tlačítko „ban“ je implementováno pomocí prvku Toggle Switch. Princip ukládání dat je podobný jako ve výše uvedených příkladech. V nastavení si můžete vybrat různý text, barvu nebo obrázek v závislosti na stavu tlačítka.

Ovládací panel Habr založený na HMI od Advantech
Po stisknutí tlačítka by měl být avatar přeškrtnut červeně. To lze snadno implementovat pomocí bloku Picture Display. Umožňuje nastavit více obrázků spojených se stavem tlačítka Toggle Switch. K tomu je bloku přidělena stejná adresa jako bloku s tlačítkem a počtem stavů. Obdobně je nastaven obrázek se jmenovkami pod avatarem.

Ovládací panel Habr založený na HMI od Advantech

Závěr

Celkově se mi produkt líbil. Dříve jsem měl zkušenosti s používáním tabletu Android pro podobné úkoly, ale vývoj rozhraní pro něj je mnohem obtížnější a rozhraní API prohlížeče neumožňují plný přístup k periferiím. Jeden terminál WebOP může nahradit kombinaci Android tabletu, počítače a ovladače.

HMI Designer je i přes svůj archaický design poměrně pokročilý. Bez speciálních programátorských dovedností můžete rychle načrtnout pracovní rozhraní. Článek nepojednává o všech grafických blocích, kterých je hodně: animované trubky, válce, grafy, přepínače. Podporuje mnoho populárních průmyslových kontrolérů ihned po vybalení a obsahuje databázové konektory.

reference

WebAccess/HMI Designer a vývojové prostředí Runtime lze stáhnout zde

Zdroje projektu ústředny Habr

Zdroj: www.habr.com

Přidat komentář