WebOPI -Bring BOY OPI to the Web and Mobile Xihui Chen, Kay Kasemir Spring 2012 EPICS Meeting.

Slides:



Advertisements
Similar presentations
Xihui Chen, Kay Kasemir April, 2013 IHEP
Advertisements

Introducing mobile made simple.. What is groov? A solution for mobile monitoring and control… A solution for mobile monitoring and control… …made easy.
Client side performance in Web based Banking applications Divakar Prabhu Infosys Limited (NASDAQ: INFY)
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS April, 2013 Getting Started with CSS.
Web Server Programming
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS A lot of material from Nadine Utzel, ITER and BOY online help.
CISC 474 Spring 2008 Page 1 2/11/08 Introduction Syllabus Anatomy of a Web Request Questions Some Possible Projects Assignment Photos.
MC365 Application Servers: Tomcat. Today We Will: Discuss what application servers are Introduce Tomcat Download and install Tomcat Break up into teams.
Multiple Tiers in Action
Introduction to Web Based Application. Web-based application TCP/IP (HTTP) protocol Using WWW technology & software Distributed environment.
MWD1001 – Website Production Web Browsers Week 11.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
Julien Thibault / Phil Brewster / Kristina Doing-Harris
A closer look Dynamic Webpages Jessica Meyerson March 1, 2011.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS 2012, April at SLAC Eclipse Products, Features, Plugins,
WEB DESIGN SOME FOUNDATIONS. SO WHAT IS THIS INTERNET.
Client/Server Architectures
Server Side Scripting Norman White. Where do we do processing? Client side – Javascript (embed code in html) – Java applets (send java program to run.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS April 2013 Control System Studio Training - Workspaces, Shared.
RIA Introduce Comparison among several technology.
WebOPI -Build & Setup Xihui Chen April, 2013.
Control System Studio (CSS)‏ Kunal Shroff EPICS Training Meeting 07/10/2010.
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
Scan System Kay Kasemir, Xihui Chen Jan Managed by UT-Battelle for the U.S. Department of Energy Automated Experiment Control “Scan” should be.
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
WaveMaker Visual AJAX Studio 4.0 Training Troubleshooting.
Mobile App Support Jacob Poirier Geri Hengesbach Andrea Menke Erin Rossell.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
User Side Factors. Download Speed Download speed from a user’s side, is how long it takes a webpage to load, once requested. The measurement for time.
Software Requirements Specification (SRS)
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio Training - Web OPI.
Chapter 17 - Deploying Java Applications on the Web1 Chapter 17 Deploying Java Applications on the Web.
Writing Widgets & Custom Script API for BOY Xihui Chen
Chapter 34 Java Technology for Active Web Documents methods used to provide continuous Web updates to browser – Server push – Active documents.
Control System Studio (CSS) Overview Kay Kasemir, July 2009.
BOY Training Xihui Chen, Kay Kasemir, David Purcell
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS With slides from Xihui Chen May 2014 Control System Studio Training.
UPLOAD / DOWNLOAD april  HTML5 is just the next iteration of HTML  Previous version was technically HTML 4.01, which incorporated XHTML 1.0.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS April Control System Studio Training - Development.
Chapter 4 Applets Cop Why Applets? WWW makes huge information available to anyone with web browser. Web server send web pages and images to your.
Session 1 Chapter 1 - Introduction to Web Development ITI 133: HTML5 Desktop and Mobile Level I
Ajax for Dynamic Web Development Gregory McChesney.
Not Yet Another EPICS Display Manager!? Kay Kasemir, Xihui Chen Kobe EPICS Meeting October.
 AJAX – Asynchronous JavaScript and XML  Ajax is used to develop fast dynamic web applications  Allows web pages to be updated asynchronously by transferring.
Things that we offer Controls Software Team Web-based tools development Xihui Chen, Katia Danilova, Kay Kasemir, Dave Purcell.
Web 2.0: Concepts and Applications 11 The Web Becomes 2.0.
ORNL is managed by UT-Battelle for the US Department of Energy CSS: OPI Views Kay Kasemir, Jan
Intro Web Applications Andrew Benson – ScottyLabs – CrashCourse F14.
Browser Compatibility Testing, using different browsers Conditional Statements.
PHP and AJAX. Servers and Clients For many years we tried to move as much as possible to the server. Weak clients, poor bandwidth, browser compatibility..
CSS Synoptic Display Comments Kay Kasemir, July 2009.
IN THIS LESSON WE WILL REVIEW THE STRUCTURE OF THE INTERNET AND HOW BROWSERS ASSEMBLE WEBSITES BASED ON INSTRUCTIONS THEY RECEIVE FROM SERVERS. Internet.
Introduction to ASP.NET development. Background ASP released in 1996 ASP supported for a minimum 10 years from Windows 8 release ASP.Net 1.0 released.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
BOY, A Modern Graphical Operator Interface Editor and Runtime Xihui Chen, Kay Kasemir RAD Control Group.
Web Programming Language
Tonga Institute of Higher Education IT 141: Information Systems
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
AJAX.
Web App vs Mobile App.
DWR: Direct Web Remoting
Tonga Institute of Higher Education IT 141: Information Systems
ISC440: Web Programming 2 AJAX
Secure Web Programming
Tonga Institute of Higher Education IT 141: Information Systems
Chengyu Sun California State University, Los Angeles
ITI 163: Web, Mobile, and Social Media Design Introduction
Presentation transcript:

WebOPI -Bring BOY OPI to the Web and Mobile Xihui Chen, Kay Kasemir Spring 2012 EPICS Meeting

2Managed by UT-Battelle for the U.S. Department of Energy We already have good control system displays in control room

3Managed by UT-Battelle for the U.S. Department of Energy Still, Users want Web Access to Ctrl. Sys. From Anywhere On any device – and any web browser

4Managed by UT-Battelle for the U.S. Department of Energy WebOPI makes it to reality BOY OPI goes to Web Browser and Mobile

5Managed by UT-Battelle for the U.S. Department of Energy SNS control room screens in Web Browser

6Managed by UT-Battelle for the U.S. Department of Energy Mobile devices – iPhone, iPod, iPad – Andriod Phone (Opera 9+ or Firefox 2+ browser is required) – Maybe more… No Flash No Java Applets No browser add-on/plugin Compatible With… Safari 3+ Firefox 2+ IE 6+ Chrome 3+ Opera 9+

7Managed by UT-Battelle for the U.S. Department of Energy Highly Compatible with BOY 98% BOY OPI functions are supported in WebOPI All widgets, except Data Browser widget (technically possible) Actions, Macros, Color & Font Macro Rules, JavaScript and Python Script Not supported (minor things) o No advance graphics o No clip (fill level property of Ellipse, Polygon) o No ramp on Gauge, Meter and Knob o No dash line o No 3D effect o No tooltip o No Console o No File Dialog o No Workspace

8Managed by UT-Battelle for the U.S. Department of Energy Can anyone tell the difference? Arc is filled in different way No fill level on Ellipse and Polygon No ramp and 3D effect (gradient)

9Managed by UT-Battelle for the U.S. Department of Energy No special requirement on OPI file Existing BOY OPI can be reused on WebOPI without any modification Well, one requirement: – Don’t rely on the unsupported functions as listed before

10Managed by UT-Battelle for the U.S. Department of Energy Technologies behind Built on Eclipse RAP (Rich Ajax Platform) – Bring Eclipse RCP to Web – Single Sourcing between RCP and RAP applications – JavaScript and HTML5 on client Supported by all mainstream web browsers – Standard servlet technology Server runs on any JEE servlet container, such as Tomcat, Jetty, Glassfish, JBoss and WebSphere Single sourcing on most of BOY code

11Managed by UT-Battelle for the U.S. Department of Energy Introduction to RAP Bring Eclipse RCP applications to web browser Single Sourcing between RCP and RAP applications

12Managed by UT-Battelle for the U.S. Department of Energy WebOPI is Multi-User – Server side needs to manage the life cycle of each client PV connect/disconnect Widget activate/deactivate No workspace The major differences CSS BOY WebOPI

13Managed by UT-Battelle for the U.S. Department of Energy Server and Clients share the load Major on server side, including – PV connection, read/write – Script executing – Clients life cycle management Client side – GUI rendering Control System Channel Access HTTP

14Managed by UT-Battelle for the U.S. Department of Energy Server and Clients share the load Pros – Low hardware requirement for client devices – No firewall issue – Simple security management Cons – Heavy loaded OPI could slow down the server – Limit to number of clients

15Managed by UT-Battelle for the U.S. Department of Energy How does WebOPI get updates? Traditional Webpages make updates by – Refreshing the page periodically Slow, waste traffic – Adobe Flash, Java Applet Doesn’t work on iPhone, iPod, iPad… – Web browser add-on Specific to certain web browsers. Won’t work on all your devices. WebOPI uses AJAX and long polling approach – XMLHttpRequest long polling A long-standing request that is answered only in case of server-side updates

16Managed by UT-Battelle for the U.S. Department of Energy Performance Benchmark test – An OPI with 1000 text update widgets updated at 10Hz Server: Linux, 4 core, 2.66GHz, 4GB Memory – 18% CPU usage – <200M memory usage Only one Client: Chrome on Windows, 4 Core, 2.66G, 4GB Memory – 20% CPU usage – 50M memory usage – 300 kB/s Network – 100Mbps Local Area Network

17Managed by UT-Battelle for the U.S. Department of Energy Take the best use of it Don’t deploy heavy loaded OPI – Eg. Hundreds of widgets updated at fast rate Split them to small OPIs if possible Close the webpage when it is not needed anymore

18Managed by UT-Battelle for the U.S. Department of Energy Support all JEE servlet container – Tomcat, Jetty, Glassfish, JBoss and WebSphere Copy webopi.war to the predefined location specified by servlet container Configure css_rap.ini Copy opi files to opi_repository You are ready to see your opi on web! Deployment is simple org.csstudio.opibuilder/opi_repository=C:/path/BOY Examples/ org.csstudio.opibuilder/startup_opi=main.opi org.csstudio.opibuilder/mobile_startup_opi=mobile.opi org.csstudio.opibuilder/color_file=color.def org.csstudio.opibuilder/font_file=font.def

19Managed by UT-Battelle for the U.S. Department of Energy Thank you! WebOPI homepage: –