Download presentation
Presentation is loading. Please wait.
Published byLinda Cain Modified over 9 years ago
1
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com UEIPAC HMI
2
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Overview The UEIPAC is an embedded Linux based system without any graphical interface. It is very good at network connectivity which makes it possible to create remote graphical user interfaces (also known as HMI Human-Machine-Interface).
3
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Client-Server Server typically runs on UEIPAC. Example: server acquires data and publishes it for remote display(s) One or more client can connect to a server A HMI client written in C# can display data acquired on UEIPAC in a chart A client can subscribe to variable updates The client gets notified only when variable value change exceeds a given deadband
4
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com LibSharedData The shared data protocol is implemented in a shared library Linux: libshareddata.so Windows: UeiSharedData.dll Both server and client(s) use the same shared library to communicate.
5
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com UEIPAC Application #1 server Application #1 server LibSharedData UEIPAC Application client Application client LibSharedData Application #2 client Application #2 client PC #2 Application client Application client LibSharedData PC #1 Web browser LibSharedData
6
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com LibSharedData 1/2 Implements a simple message based protocol (set/get variable) using JSON or binary data representation Local processes communicate over UNIX sockets Remote processes communicate over TCP/IP sockets Web browser communicate using Web Sockets
7
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com LibSharedData 2/2 Variables are simply designated using a unique name Variable type can be a scalar or array of : Int32 Int16 Int8 Double Float
8
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Protocol 1/3 Client or server sends a request to libshareddata put_value = put_value_json = get_value get_value_json subscribe_value Etc..
9
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Protocol 2/3 Libshareddata implements a C API that hides the protocol away Bindings are available for C#, VB.NET, LabVIEW and Python
10
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Protocol 3/3 Web browsers can directly connect to remote processes using web sockets and a little bit of javascript programming. Data can be displayed using standard HTML controls or more advanced HTML5 ones
11
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com UEIPAC server example Create Server: UeiSharedDataCreate("tcp://192.168.100.2:2345", &handle); Acquire voltages: DqAdv207Read(hd, devn, clsize, cl, NULL, fdata); Publish voltages: UeiSharedDataPut(handle, “voltages", UeiSharedDataTypeDbl, clsize, fdata);
12
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com Share Data Client Shared Data client is an application that provides a quick way to test a server.
13
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com C# client Create a client object UeiSharedDataClient client = new UeiSharedDataClient(); Open communication with server client.Open("tcp://192.168.100.2:2345"); Get shared variable value double[] voltages = client.GetDouble(“voltages", 16);
14
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com C# client
15
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com LabVIEW client Call VIs to open communication with server and read “voltages” variable values
16
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com LabVIEW client
17
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com HTML5 client Web sockets are part of HTML5. Supported in the following browsers: Google Chrome (fastest javascript engine) Firefox Safari for MacOS and iOS Android web browser Internet Explorer 10
18
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com HTML5 client There are many HTML5 UI library out there. Most are business oriented, but are usable for industrial applications Jquery UI library provides a very easy way to manipulate UI elements of a web page UEIPAC comes with a default web page to view shared data: http://192.168.100.2:2345/shareddata.html
19
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com HTML5 client
20
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com SVG lab (still experimental) A set of HTML5 UI controls for web based scientific and industrial applications Uses SVG (Scalable Vector Graphics) for drawing Use javascript for programming. Chart Slider Maybe more...
21
© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.