© 2010 UEI, Inc. All Rights Reserved www.UEIDAQ.com UEIPAC HMI.

Slides:



Advertisements
Similar presentations
© 2010 UEI, Inc. All Rights Reserved UEISIM Desktop.
Advertisements

Britain Southwick Nicole Anguiano March 29, 2014
The Client-Server Model for the Web 1. A Web Client (usually in the form of a web browser) makes an HTTP request to a specific web server. 2. The Web Server.
Copyright © 2012 Certification Partners, LLC -- All Rights Reserved Lesson 4: Web Browsing.
Web Visualization Technology Horner APG Ver 1.0.
CS490T Advanced Tablet Platform Applications Network Programming Evolution.
An 8051 Based Web Server Project by Mason Kidd Advised by Dr. Schertz.
CSCI 4550/8556 Computer Networks Comer, Chapter 3: Network Programming and Applications.
Multiple Tiers in Action
Guide To UNIX Using Linux Third Edition
Proxy Cache Leonid Romanovsky Olga Fomenko Winter 2003 Instructor: Konstantin Sinyuk.
Implementing Application Protocols. Overview An application protocol facilitates communication between applications. For example, an client uses.
Lecture 2: Technical Basics
Web Design Terms and Concepts Ms. Scales. Q. What is a Server? A. A server is a computer that stores information many people can access. It runs special.
Boris Tshibangu. What is a proxy server? A proxy server is a server (a computer system or an application) that acts as an intermediary for requests from.
Virtual Machine Management
Presented By: Andy Balderson – Product Manager Ethernet, Internet, Wireless or Fiber - Distribute your HMI Application Over IP Networks Farther ! The Web.
Client/Server Architectures
HTML 5 New Standardization of HTML. I NTRODUCTION HTML5 is The New HTML Standard, New Elements New Attributes Full CSS3 Support Video and Audio 2D/3D.
Computer Concepts 2014 Chapter 7 The Web and .
Lightning Talk Fred Rodriguez Aakash Juneja CPSC 473 March 16, 2012.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 24 – Web Servers (PWS, IIS, Apache, Jigsaw) Outline 24.1Introduction 24.2Microsoft Personal.
NETWORK CENTRIC COMPUTING (With included EMBEDDED SYSTEMS)
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
1 Modular Software/ Component Software 2 Modular Software Code developed in modules. Modules can then be linked together to produce finished product/program.
Philly.NET Hands-on Labs JAVASCRIPT SERIES. July 9: JavaScript Syntax Visual Studio ◦Projects ◦Editors ◦Debugging ◦Script blocks ◦Minification and bundling.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
DATA COMMUNICATION DONE BY: ALVIN SAMPATH CARLVIN SAMPATH.
JavaScript, Fourth Edition Chapter 12 Updating Web Pages with AJAX.
CSCI 6962: Server-side Design and Programming Web Services.
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
Vassil Roussev 2 A socket is the basic remote communication abstraction provided by the OS to processes. controlled by operating system.
OWL Jan How Websites Work. “The Internet” vs. “The Web”?
Web Engineering we define Web Engineering as follows: 1) Web Engineering is the application of systematic and proven approaches (concepts, methods, techniques,
Tutorial 10 Programming with JavaScript
MediMizer User Group  Users want an iPad application  Users want a web application  IT wants a no-installation client  Can be used anywhere.
WEB PUSH Johannes Brodwall. Outline The low down Is it time? Implementation notes Firefox Chrome Safari Implementation bits.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Visualizing Technology© 2012 Pearson Education, Inc. Publishing as Prentice Hall1 PowerPoint Presentation To Accompany Chapter 6 System Software.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
Development Process Agile/XP Planning + Issue Tracking Google Code provided efficient + effective project management Bug and defect reports Project planning.
A remote control robot with webcam. Responsibilities User Interface Communicate with server Webcam Display Server Web Server Collaborators Work: Harkins.
Hands-on Teleoperation TARET Winter School Villach, February 5 –16, 2007 Darko Hercog.
Wijmo Troy Taylor. What is Wijmo? -Wijmo is a kit of over 40 UI widgets, optimized for client-side web development. -HTML5 -jQuery -CSS3 -SVG.
CS 158A1 1.4 Implementing Network Software Phenomenal success of the Internet: – Computer # connected doubled every year since 1981, now approaching 200.
X-WindowsP.K.K.Thambi The X Window System Module 5.
1 3 Computing System Fundamentals 3.4 Networked Computer Systems.
Web application architecture1 Based on Jim Conallen: Web Applications with UML.
Internet & World Wide Web How to Program, 5/e © by Pearson Education, Inc. All Rights Reserved.
Client/Server Socket Programming Project
1. LabVIEW and EPICS Workshop EPICS Collaboration Meeting Fall 2011.
JavaScript and Ajax (Internet Background) Week 1 Web site:
The Internet What is the Internet? The Internet is a lot of computers over the whole world connected together so that they can share information. It.
IN THIS LESSON WE WILL REVIEW THE STRUCTURE OF THE INTERNET AND HOW BROWSERS ASSEMBLE WEBSITES BASED ON INSTRUCTIONS THEY RECEIVE FROM SERVERS. Internet.
Database application development 1. Chapter 8 © 2013 Pearson Education, Inc. Publishing as Prentice Hall OBJECTIVES  Define terms  Explain three components.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
Current Status of Web Application for RIBF Accelerator
CSE541: Web Applications Special Thanks to M. Abdur Rahman.
Wednesday NI Vision Sessions
6/28/ A global mesh of interconnected networks (internetworks) meets these human communication needs. Some of these interconnected networks are.
Cloud Computing in Systems Programming Curriculum Gustavo Rodriguez-Rivera, Purdue University Enrique Kortright, IBM.
Introduction to Internet Programming (Web Based Application)
Tutorial 10 Programming with JavaScript
JavaScript and Ajax (Internet Background)
CNIT 131 Internet Basics & Beginning HTML
Web App vs Mobile App.
03 | Building a Backend with Socket.IO and Mongo
ADTEL WEBSITE
Presentation transcript:

© 2010 UEI, Inc. All Rights Reserved UEIPAC HMI

© 2010 UEI, Inc. All Rights Reserved 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).

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved 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.

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved Protocol 1/3 Client or server sends a request to libshareddata  put_value =  put_value_json =  get_value  get_value_json  subscribe_value  Etc..

© 2010 UEI, Inc. All Rights Reserved Protocol 2/3 Libshareddata implements a C API that hides the protocol away Bindings are available for C#, VB.NET, LabVIEW and Python

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved UEIPAC server example Create Server: UeiSharedDataCreate("tcp:// :2345", &handle); Acquire voltages: DqAdv207Read(hd, devn, clsize, cl, NULL, fdata); Publish voltages: UeiSharedDataPut(handle, “voltages", UeiSharedDataTypeDbl, clsize, fdata);

© 2010 UEI, Inc. All Rights Reserved Share Data Client Shared Data client is an application that provides a quick way to test a server.

© 2010 UEI, Inc. All Rights Reserved C# client Create a client object UeiSharedDataClient client = new UeiSharedDataClient(); Open communication with server client.Open("tcp:// :2345"); Get shared variable value double[] voltages = client.GetDouble(“voltages", 16);

© 2010 UEI, Inc. All Rights Reserved C# client

© 2010 UEI, Inc. All Rights Reserved LabVIEW client Call VIs to open communication with server and read “voltages” variable values

© 2010 UEI, Inc. All Rights Reserved LabVIEW client

© 2010 UEI, Inc. All Rights Reserved 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

© 2010 UEI, Inc. All Rights Reserved 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:

© 2010 UEI, Inc. All Rights Reserved HTML5 client

© 2010 UEI, Inc. All Rights Reserved 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...

© 2010 UEI, Inc. All Rights Reserved