WinCC Flexible Runtime használata PC-n

HMI eszközként nem csak operátor panelt használhatunk, hanem PC-t is.
Egy WinCC Flexible project futtatására a WinCC Flexible RT szoftvert kell használnunk.
Amennyiben ez telepítve van, meg is találjuk a start menüben. Ha azonban el akarjuk indítani, kapunk egy üzenetet:



Ami arról panaszkodik, hogy nem adtuk meg a runtime programnak a projectet, amit futtatnia kellene.
Ezt kétféleképpen is megadhatjuk:
  1. Paraméterként (ekkor a HmiRTm.exe-t kell megfelelően paraméterezni
  2. A HmiRTm.ini file-ban
A Runtime-nak ugyanis nincs kezelői felülete, hogy indítás után file menüből vagy egyéb módon interaktívan közöljük vele mit akarunk. A fenti ablak meg is kérdezi, hogy kívánjuk-e most megadni a konfigurációs file-t (ami lényegében maga a futtatandó HMI project) vagy nem. Nem válasz esetén kilép. Ha Igennel válaszolunk, kapunk egy standard windows file open panelt, amiből ki is derül, hogy .fwx file-t kellene neki mutatni.
Igen ám, csakhogy a WinCC Flexible .hmi file-okat hoz létre...

Hogyan használhatjuk tehát a WinCC Flexible Runtime-ot?
Azt gondolom mindenki tudja, hogy a WinCC Flexible ES programban, tehát a szerkesztőben van egy Start Runtime System ikon:
Ha ezt megnyomjuk, akkor a Flexible lényegében "elindítja" a projectünket, ha fut a PLC szimulátor, vagy kapcsolatban van a PC a PLC-vel, amit beállítottunk a Connections-nál, működik is. Tesztelésre tökéletes ez a megoldás, de a kész projectet nyilván nem futtathatjuk ezen a módon, hisz legtöbb esetben az ES nincs is rajta azon a PC-n, amit tulajdonképpen HMI-nek akarunk használni, azon csak az RT van (Runtime).
A fentiekből világos, hogy a HMI PC-nkre el kell juttatni a projectet, méghozzá .fwx formátumban, mert az RT ilyet vár.
Erre alapvetően két lehetőségünk van:
  1. Adathordozó segítségével a HMI PC-re másoljuk
  2. Kommunikációs kapcsolat. Legyen az ethernet hálózat, RS232 soros, MPI, USB vagy profibusz kapcsolat
Az .fwx file létrehozása
Az első esetben létre kell hozni az fwx file-t. WinCC Flexible-ben válasszuk ki a Transfer funkciót ikonnal vagy a Project / Transfer / Transfer menüből.
A Mode mezőben állítsunk be File-t, a Target folderben pedig azt a meghajtót és könyvtárat, ahova menteni akarjuk az fwx file-t.



Nyomjuk meg a Transfer gombot. A projectet elkezdi lefordítani (compile). Ha ez sikerült hiba nélkül, akkor létrejön a project nevével azonos, lefordított fwx file a Target folderben megadott helyen.
Ha a fordítás hibával leállt, a file nem jön létre! A fordítás üzeneteit megtekinthetjük ha kiválasztjuk a View menü Output pontját, vagy Shift-Ctrl-O kombinációt nyomunk:


Ha nincs error, a file létrejön, akkor is, ha warningok száma nem nulla.
Ezt az fwx file-t már tudjuk használni. Ezt kell a HMI PC-nkre át transzportálni. Az fwx file társítva van a HmiRTm.exe programhoz, ezért ha valamilyen file managerben explorerben stb rákattintunk, elindul a runtime és betölti a projectünket majd futtatni kezdi.
Az FWX file-ra mutató parancsikont (shortcut) berakhatjuk a windows indítópultba, így a gép indításakor automatikusan elindul a runtime és a project. A parancsikont kirakhatjuk az asztalra, stb.
Ha ezt a módszert használjuk, és módosítani kell a projectet (ami különösen a beüzemelést követő időkben gyakori) akkor mindig le kell állítani a runtime-ot, át kell másolnunk az fwx file-t a futtató PC-re, felülírva a régit, majd újra kell indítani a runtime-ot.

A Runtime Loader
Az említett második módszer ennél sokkal gyorsabb és nem utolsó sorban kényelmesebb.Egy újabb szoftverre lesz szükség, a WinCC Flexible Runtime Loader-re.
A Runtime Loader, nem más, mint egy keretprogram, ami kezeli az fwx file áttöltését és a Flexible RT indítását.

Nem kell megijjedni, ha a runtime telepítve van, akkor ez a program rendelkezésre áll. Indítsuk el (a start menüben megtaláljuk).
Egy nagyon egyszerű felületet kapunk néhány gombbal. Ha első alkalommal indítjuk, valószínűleg figyelmeztetni fog, hogy a Settings használatával be kell állítani használat előtt.


Tegyük azt.
A Settings megnyomása után a Connections (kapcsolatok) szekcióban egyszerre kétfajta kapcsolat állítható be:



Ez a kapcsolat arra vonatkozik, hogy hogyan tudjuk a HMI PC-nkre továbbítani a runtime projectet, tehát lényegében az fwx file-t.
Ha csak egy kapcsolatot szeretnénk, akkor az egyik Activate elől ki kell venni a pipát.
A Configuration file és Configuration backup file mezőkben állíthatjuk be hova kerüljön az fwx file, vagyis a lefordított project, amit a Connection-nál megadott kapcsolaton keresztül majd letöltünk rá.
A backup-ban megadott fwx-et akkor fogja indítani, ha a másikat nem tudja valami miatt elindítani.
A Languages-ben a loader nyelvét állíthatjuk be. Itt azok közül a nyelvek közül lehet választani, amiket bejelöltünk a Flexible RT telepítésekor.
(A Remote control beállítás funkciójáról később esik szó)

OK gomb megnyomása után visszatér a négy gombos loader felület. A runtime-ot a Start gombbal indíthatjuk, de első alkalommal ez még nem megy, előbb át kell tölteni a projectet.
Ehhez nyomjuk meg a Transfer gombot. Egy üzenetet kapunk, hogy várja a csatlakozást:



A csatlakozást a Connections-ben megadott irányból várja.
Ha a Flexible ES nem a HMI PC-nken fut, hanem egy másik gépen, akkor a megadott kapcsolaton keresztül áttölthetjük a projectet.
Tegyük fel, hogy a HMI PC és a szerkesztő, amin a WinCC Flexible ES fut két külön gép amiket ethernet hálózat kapcsol össze és TCP/IP-t használunk.
Feltétel, hogy a két gép tudjon egymással kommunikálni a TCP/IP-n keresztül.
A WinCC Flexible ES gépen válasszuk a Transfer-t. Mode mezőben állítsuk be az Ethernet-et, a Computer name or IP address mezőben adjuk meg a HMI PC-nk IP címét, majd nyomjuk meg a Transfer gombot.



Ha minden jól megy, a WinCC Flexible ES lefordítja a projectet és amennyiben az hibátlanul lefordult (0 errors) akkor felveszi a kapcsolatot a másik géppel, áttölti az fwx file-t, majd a másik gépen elindul a runtime és betölti a projectet.
Ha a HMI PC-n leállítjuk a runtime-ot, ismét felbukkan a Loader, ahonnan Start gombbal indítható a project, vagy a Transfer gombbal egy újabb áttöltés.

Itt jön a jelentősége a Loader Stettings ablakában található Remote control opciónak.
Ha ez nincs bekapcsolva, akkor az adott kapcsolaton keresztül csak akkor tölthető fel újabb project, ha a loader transfer állapotban azt várja. Tehát emberi beavatkozás kell, valakinek le kell állítania a runtime-ot és megnyomnia a Transfer gombot a loaderben.
Ha be van kapcsolva, akkor nem szükséges a HMI PC-n semmilyen emberi beavatkozás. Amikor a loader érzékeli, hogy valaki projectet akar feltölteni rá, leállítja a futó runtime-ot, letölti a file-t, majd az új projectet el is indítja. Ez mindegyik kapcsolatra igaz, nem csak az ethernet kapcsolatra. Hiszen, mint említettem a projectet soros porton vagy MPI/DP hálózaton keresztül is áttölthetjük.
Természetesen akkor az IP cím helyett a soros port számát vagy az MPI/DP címet kell megadni az ES Transfer ablakában.

Ha a Runtime loadert használjuk, akkor nem az fwx file-ra mutató linket vagy az fwx-et paraméterként tartalmazó HmiRTm.exe-t indító parancsot kell az indítópultra helyezni, hanem a Runtime Loadert.
A loader a gép indítása után elindul, vár a settings-nél, Wait-ban megadott másodpercig, majd indítja a projectet. A loader használatával nem kell file-okat másolgatnunk, és így a file-ok nevével sem kell törődni. Bármi is a project neve, ha áttöltöttük, azt a loader futtatni fogja.

Megjegyzések:
Ha ethernet kapcsolatot használunk, ne feledkezzünk meg a tűzfalról (ha van). Az ugyanis blokkolhatja heveny áttöltési próbálkozásainkat!
A Remote control kényelmes ugyan, de jár bizonyos biztonsági kockázattal, hiszen a project áttöltése semmilyen autentikációt nem igényel, elég ismerni a HMI PC IP címét hozzá. Ezért vicces kedvű kollégák, vagy más illetéktelenek esetleg rátölthetnek dolgokat, pl. egyetlen, "Mexívtad" feliratú screent tartalmazó projectet, stb.

Ha nem akarjuk, hogy a kezelők internetezzenek vagy játaszanak a HMI PC-n
Bár a pina.hu komoly látványosságokat tartalmaz, a céges berendezések automatizálása szempontjából nem bír jelentőséggel. Ezért a cég érdeke valószínűleg a runtime-hoz kötődik jobban.
Az unatkozó találékony emberekkel meg ugye sok baj tud lenni.
Egy szó mint száz, a runtime-ot futtató PC-n kicsit meg lehet nehezíteni azt, hogy a kezelő személyzet a runtime-on kívül mást is elindítson vagy használjon a gépen. Erre a szerkesztőben egy egyszerű módszer kínálkozik.
Ha bekapcsoljuk a Device settings Ful-screen mode (teljes képernyős futtatás) és Lock task switching (a programváltás megakadályozása) opciókat, akkor:



A betöltődő project teljes képernyőt el fogja foglalni és nem ablakban lesz látható. Így nem lesznek vezérlő elemek amivel a runtime-ot háttérbe helyezhetik, továbbá másik futó programra vagy az asztalra sem tud rákattintani. A teljes képernyős futtatáshoz érdemes olyan felbontást beállítani, ami megfelel a HMI PC beállításainak, hogy a project képernyői kitöltsék a teljes képernyőt, de annál nagyobbak se legyenek.
A Lock task switching hatástalanítja az Alt-tab Ctrl-Alt-Del, Shift-Ctrl-ESC, Ctrl-ESC és Windows gombokat. Tehát mindazt, amelyikkel át lehetne váltani más programra, vagy elő lehetne csalogatni a tálcát.
Ezekkel az intézkedésekkel a felhasználót a runtime program használatára korlátozhatjuk. További intézkedésként érdemes kikapcsolni a windows automatikus futtatás funkcióját is, amit a következőképpen tehetünk meg egyszerűen XP vagy Windows 2000 rendszerben:

Amennyiben adminisztrátori (rendszergazda) joggal vagyunk bejelentkezve, válasszuk a Start menüből a futtatás pontot és gépeljük be hogy gpedit.msc
A megjelenő ablakban nyissuk ki a Számítógép konfigurációja / Felügyeleti sablonok / Rendszer elemet.



A jobb oldalon keressük meg az Automatikus lejátszás kikapcsolása elemet, majd kattintsunk rá duplán.



Állítsuk Engedélyezve módra, az Automatikus lejátszás kikapcsolása a következőn: mező pedig legyen Minden meghajtón beállítású.
Így egy CD behelyezésével vagy USB pendrive csatlakoztatásával sem tudja megkerülni a tiltást.
Javasolható még, hogy a runtime-ot futtató felhasználó ne rendszergazda, hanem korlátozott jogú legyen.

Ezekkel az intézkedésekkel persze nem zárható ki teljesen az illetéktelen behatolás, de általában elegendőek.

Kapcsolódó írások:
WinCC Flexible - PC runtime
WinCC Flexible tippek


Szirty