Presentation is loading. Please wait.

Presentation is loading. Please wait.

WinCC OA Ultra Thin Client

Similar presentations


Presentation on theme: "WinCC OA Ultra Thin Client"— Presentation transcript:

1 WinCC OA Ultra Thin Client

2 WinCC OA UltraThinClient, FWWG, December 2011
Overview Architecture Performance Testing Using the UltrathinClient out of the box GWT demo WinCC OA UltraThinClient, FWWG, December 2011

3 Ultra Thin Client Overview
For delivery in WinCC OA 3.11 Previewing in 3.10 Fully Web Based Uses HTTP + SVG + Javascript Requires SVG support… Converted directly from xml Panels with limitations! WinCC OA UltraThinClient, FWWG, December 2011

4 WinCC OA UltraThinClient, FWWG, December 2011
What’s SVG SVG: Scalable Vector Graphics Specification developed by W3C It is “A Markup Language for describing two-dimensional graphics applications and images and a set of related graphic script interfaces” Native support on most platforms IE8 and older require a plugin… But available on IE9 WinCC OA UltraThinClient, FWWG, December 2011

5 Ultra Thin Client Architecture
Basic building blocks: CtrlXmlToSvg.dll Converts XML based panels into SVG files UltraThinClientServer.ctl The http server Loads CtrlXmlToSVG and handles http calls data\http\libs\*.js files Object specific javascript code data\http\panels\*.svg The panels, in SVG format WinCC OA UltraThinClient, FWWG, December 2011

6 Ultra Thin Client Architecture
Event Manager Data Manager iii Initial process HTTP request (panel.xml) CtrlManager creates panel.svg Ctrl Manager sends panel.svg back to browser dpSet HTTP request (dp,value) CtrlManager does a PVSS dpSet(dp, value) dpConnect HTTP request (dp,clientId) CtrlManager does a dpConnect to the eventManager and adds clientId to list Sucessive HTTP requests (dp, clientid) CtrlManager eventually receives new value Browser receives value change Ctrl Manager UltraThinClientServer.ctl 2 b CtrlXmlToSVG.dll ii 3 iv 1 a i iii WinCC OA UltraThinClient, FWWG, December 2011

7 WinCC OA UltraThinClient, FWWG, December 2011
Limitations It is not a full fledged UI Manager! Basic communication with Server dpSet / dpConnect / dpToggle / dpExists / dpTypeName / dpGetDescription Limited number of Objects available TextEdit (no multiline) RadioCheckbox PushButton (Toggle not working) Basic Trend, Basic Alarm Limited actions per object Clicked, Command, Initialize No double click, mouse*, keyboard*, drag* … Global ScopeLib but no “#uses” No redirection when using dot notation “.”. Ex: MyText1.text Always required to use “getValue/setValue” Ex: getValue(“MyText1”, “text”) A number of misconversions and bugs Objects in reference panels Toggle, Crash on many popups… ETM is working on more objects getting translated. So you can still stick to develop in GEDI WinCC OA UltraThinClient, FWWG, December 2011

8 WinCC OA UltraThinClient, FWWG, December 2011
Positives It is a real Web Based solution Unlike WebPlugin It integrates quite well with the Gedi A few objects are already automatically converted CTRL Scripts are translated to javascript “Hackable” All SVG and javascript libraries could be customized. Scalable One unique dpConnect call on many connected clients! WinCC OA UltraThinClient, FWWG, December 2011

9 WinCC OA UltraThinClient, FWWG, December 2011
Testing Some tests where done to address performance CPU usage Loss of values server: dual core x86 Pentium 3158Mhz EV DM UIM TestControl.pnl CtrlM UltraThinClientServer.ctl VM…. Chrome PerfTest.xml VM1 VM2 VM3 ApiM PerfMetrics.dll WinCC OA UltraThinClient, FWWG, December 2011

10 WinCC OA UltraThinClient, FWWG, December 2011
Testing Test runs #clients : 1 – 100 #dpConnects/client : 1 – 99 #value changes : 1 – 25 (Hz) How does CPU Load change with increasing number of clients and dpConnects? How does CPU Load change with increasing frequency of changes on a dpConnect? Which losses of changes are observed? WinCC OA UltraThinClient, FWWG, December 2011

11 WinCC OA UltraThinClient, FWWG, December 2011
CPU load How does CPU Load change with increasing number of clients and dpConnects? WinCC OA UltraThinClient, FWWG, December 2011

12 WinCC OA UltraThinClient, FWWG, December 2011
CPU load How does CPU Load change with increasing frequency of changes on a dpConnect? WinCC OA UltraThinClient, FWWG, December 2011

13 WinCC OA UltraThinClient, FWWG, December 2011
Value Changes Which losses of dp value changes are observed? Note: The observed losses are mostly associated with the implementation. The idea is that response to the client will be delayed to avoid overwhelming the CPU on the client (ConnectMax parameter). On our server testing, this was kept to 200 ms. If two value changes occurred, for a given client within this time frame, then a value loss was observed. Underlying: A ‘connectWait’ interval is set to avoid excessive cpuUsage on the client Value changes within this interval are dropped – a noLoss mechanism is possible With low frequency, no value losts are observed, independently of the number of client connections WinCC OA UltraThinClient, FWWG, December 2011

14 WinCC OA UltraThinClient, FWWG, December 2011
Other uses Event Manager Data Manager Ctrl Manager UltraThinClientServer.ctl CtrlXmlToSVG.dll *.html *.js *.css HTTP requests. WinCC OA UltraThinClient, FWWG, December 2011

15 WinCC OA UltraThinClient, FWWG, December 2011
GWT plugin UltraThinClient Server is indeed an http server It’s not a formal Web Service, but it does the trick: you issue your query on an URL, you get a response. We could eventually use any web framework Using the javascript libraries made available by ETM Developing your own (i.e., GWT or others) Note: WebPlugin activity just started WinCC OA UltraThinClient, FWWG, December 2011

16 WinCC OA UltraThinClient, FWWG, December 2011
GWT example Note: WebPlugin activity just started WinCC OA UltraThinClient, FWWG, December 2011

17 WinCC OA UltraThinClient, FWWG, December 2011
Thank you for your attention. Questions? Note: WebPlugin activity just started WinCC OA UltraThinClient, FWWG, December 2011

18 Ultra Thin Client Architecture
Event Manager Data Manager iii Initial process HTTP request (panel.xml) CtrlManager creates panel.svg Ctrl Manager sends panel.svg back to browser dpSet HTTP request (dp,value) CtrlManager does a PVSS dpSet(dp, value) dpConnect HTTP request (dp,clientId) CtrlManager does a dpConnect to the eventManager and adds clientId to list Sucessive HTTP requests (dp, clientid) CtrlManager eventually receives new value Browser receives value change Ctrl Manager UltraThinClientServer.ctl 2 b CtrlXmlToSVG.dll ii iv 3 iii i a 1 WinCC OA UltraThinClient, FWWG, December 2011


Download ppt "WinCC OA Ultra Thin Client"

Similar presentations


Ads by Google