BOY Training Xihui Chen, Kay Kasemir, David Purcell

Slides:



Advertisements
Similar presentations
BASIC SKILLS AND TOOLS USING ACCESS
Advertisements

Xihui Chen, Kay Kasemir April, 2013 IHEP
Control System Studio (CSS)
Chapter 3 Creating a Business Letter with a Letterhead and Table
Microsoft Office XP Microsoft Excel
Using Macros and Visual Basic for Applications (VBA) with Excel
ORNL is managed by UT-Battelle for the US Department of Energy Control System Studio: First Steps Kay Kasemir ORNL/SNS June 2014.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Xihui Chen ORNL/SNS April, 2013 Getting Started with CSS.
CSS Training -BOY Xihui Chen, Kay Kasemir Spring 2012 EPICS Meeting.
Microsoft Word 2010 Lesson 1: Introduction to Word.
ORNL is managed by UT-Battelle for the US Department of Energy Control System Studio: BOY Details Kay Kasemir ORNL/SNS A lot of material.
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.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
CS320n –Visual Programming LabVIEW Foundations. Visual ProgrammingLabVIEW Foundations2 What We Will Do Today Hand back and review the midterm Look at.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Introduction To Form Builder
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio Training - Alarm System Use.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS April 2013 Control System Studio Training - Alarm System Use.
8 Copyright © 2004, Oracle. All rights reserved. Creating LOVs and Editors.
Chapter 4 Dreamweaver: Part II The Web Warrior Guide to Web Design Technologies.
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
Control System Studio (CSS)‏ Kunal Shroff EPICS Training Meeting 07/10/2010.
Scan System Kay Kasemir, Xihui Chen Jan Managed by UT-Battelle for the U.S. Department of Energy Automated Experiment Control “Scan” should be.
Advanced Excel for Finance Professionals A self study material from South Asian Management Technologies Foundation.
© Ms. Masihi.  The Dreamweaver Welcome Screen first opens when you start Dreamweaver.  This screen gives you quick access to previously opened files,
Key Applications Module Lesson 19 — PowerPoint Essentials
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Ph.D. ORNL/SNS July 2011 at Control System Studio - CSS - Overview.
Managed by UT-Battelle for the Department of Energy Kay Kasemir, Ph.D. ORNL/SNS July 2011 at Control System Studio - CSS - Overview.
Chapter 2 Creating a Research Paper with References and Sources Microsoft Word 2013.
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.
Advanced Level Course. Site Extras Site Extras consist of four categories: Stationeries Site Trash Designs Components.
IE 411/511: Visual Programming for Industrial Applications
Writing Widgets & Custom Script API for BOY Xihui Chen
Website Development with Dreamweaver
XP Dreamweaver 8.0 Tutorial 3 1 Adding Text and Formatting Text with CSS Styles.
ORNL is managed by UT-Battelle for the US Department of Energy Control System Studio: BOY Kay Kasemir ORNL/SNS A lot of material from.
Session 1 SESSION 1 Working with Dreamweaver 8.0.
Domain 3 Understanding the Adobe Dreamweaver CS5 Interface.
© Paradigm Publishing Inc. MICROSOFT WINDOWS XP MAINTAINING FILES AND CUSTOMIZING WINDOWS Section 2.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Oct EPICS Meeting, PAL, Korea Control System Studio Training.
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
T U T O R I A L  2009 Pearson Education, Inc. All rights reserved. 1 3 Welcome Application Introduction to Visual Programming.
Prachi Chitnis.  The CSS feel  SDS – Synoptic Display Studio  ADL Converter  PV table, Probe…
ACTIVINSPIRE TRAINING Tips and tools for creating Flipcharts on ActivInspire.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS Jan Control System Studio, CSS Overview.
Basic Editing Lesson 2.
WaveMaker Visual AJAX Studio 4.0 Training Basics: Building Your First Application Designer Basics.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS With slides from Xihui Chen May 2014 Control System Studio Training.
Managed by UT-Battelle for the Department of Energy CSS Update Matthias Clausen, Helge Rickens, Jan Hatje and DESY Delphy Armstrong, Xihui Chen,
WebOPI -Bring BOY OPI to the Web and Mobile Xihui Chen, Kay Kasemir Spring 2012 EPICS Meeting.
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.
Tutorial 3 Adding and Formatting Text with CSS Styles.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS 2011, October at CEA Saclay, France Control System Studio.
Not Yet Another EPICS Display Manager!? Kay Kasemir, Xihui Chen Kobe EPICS Meeting October.
Managed by UT-Battelle for the Department of Energy Kay Kasemir ORNL/SNS April 2013 Control System Studio, CSS Overview.
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.
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.
Positioning Objects with CSS and Tables
Intoduction to Andriod studio Environment With a hello world program.
IE 411/511: Visual Programming for Industrial Applications Lecture Notes #2 Introduction to the Visual Basic Express 2010 Integrated Development Environment.
XP New Perspectives on Macromedia Dreamweaver MX 2004 Tutorial 5 1 Adding Shared Site Elements.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Adobe ® Photoshop ® CS6 Chapter 1 Editing a Photo.
BOY, A Modern Graphical Operator Interface Editor and Runtime Xihui Chen, Kay Kasemir RAD Control Group.
WaveMaker Visual AJAX Studio 4.0 Training Styling your application.
Working in the Forms Developer Environment
Chapter 2 – Introduction to the Visual Studio .NET IDE
Chapter 2 Creating a Research Paper with References and Sources
Display Builder Update
Presentation transcript:

BOY Training Xihui Chen, Kay Kasemir, David Purcell

2Managed by UT-Battelle for the U.S. Department of Energy What is BOY? BOY (Best OPI, Yet) – An Operator Interface (OPI) development and runtime environment – OPI is the GUI for displaying and controlling control system data OPI Editor Runtime

3Managed by UT-Battelle for the U.S. Department of Energy Relationship between CSS and BOY CSS – Infrastructure for hosting control system tools (the house) – RCP product BOY – One of the tools integrated in CSS (furniture in the house) – Plugins

4Managed by UT-Battelle for the U.S. Department of Energy Examples-Virtual Linac

5Managed by UT-Battelle for the U.S. Department of Energy Examples-SNS SNS top-level displays created by operators Tim Southern, Nick Luciano

6Managed by UT-Battelle for the U.S. Department of Energy Examples-ITER

7Managed by UT-Battelle for the U.S. Department of Energy BOY OPI Examples-ITER

8Managed by UT-Battelle for the U.S. Department of Energy BOY OPI Examples-ITER

9Managed by UT-Battelle for the U.S. Department of Energy Let’s Start! Open OPI Editor Perspective: – Menu CSS, Display, OPI Editor Perspective

10Managed by UT-Battelle for the U.S. Department of Energy Exercise: Edit First OPI 1.Right click CSS Project in navigator: New, OPI File, call it “first.opi” – Or Menu File, New, BOY, OPI File 2.Drag widget Knob from palette to editor 3. Input sim://noise as the PV name in Properties view 4.Click the “Run” button (or Ctrl+G) to execute! sim://noise is a simulated PV inside CSS (See CSS help->CSS Core->Process Variables ), so you don’t need to run an IOC to try this example. In reality, you can replace it with a real EPICS PV

11Managed by UT-Battelle for the U.S. Department of Energy Exercise: Run First OPI What you will get PV value as text and via knob position PV severity reflected in border color PV name and value shown in tool-tip PV’s display limits set the knob’s default range Indicate ‘disconnected’ state via a pink border Widget will be grayed-out if read-only Main Point: Simple Things are Simple

12Managed by UT-Battelle for the U.S. Department of Energy Exercise: Extend First OPI to Use EPICS PV Set Knob’s PV Name property to css:setpoint Add an XY Graph widget Set PV Name to css:tank Run

13Managed by UT-Battelle for the U.S. Department of Energy OPI Editor Perspective Your All-in-One workbench for OPI editing Navigator Editor Palette Properties Outline Console Toolbar

14Managed by UT-Battelle for the U.S. Department of Energy Demo: Customize OPI Editor Perspective Every part in the workbench can be dragged around, detached, minimized, maximized or closed. Recover the default perspective by resetting it. A Customized Perspective

15Managed by UT-Battelle for the U.S. Department of Energy OPI Editor What You See Is What You Get (WYSIWYG) Comprehensive editing functions on toolbar and context menu – Copy/Paste/Delete – Drag & Drop – Undo/Redo – Alignment & Distributing – Snap to G (Grid/Geometry/Guide) – Zoom In/Out – Copy/Paste Properties – Changing Orders – … As easy as editing PowerPoint

16Managed by UT-Battelle for the U.S. Department of Energy Properties View Widgets are configured by setting Properties in the Properties view Common Properties: – Name – Background/Foreground color – Border – Font – Position Widgets that read/write PVs: – Basic: PV Name – Border: Alarm Sensitive – Behavior: Limits from PV – Display: Background/Foreground color alarm sensitive

17Managed by UT-Battelle for the U.S. Department of Energy Outline Tree View Outline – Click on widgets on the tree will select widgets in editor – Change widgets order by drag & drop Overview Outline – An overview of the whole OPI Click here to switch to overview outline Click here to switch to tree view outline

18Managed by UT-Battelle for the U.S. Department of Energy Exercise: OPI Editing Skills Create a new OPI editor.opi Add three rectangle widgets to editor Select widgets and move them around – Select all widgets using Ctrl+A Arrange widgets

19Managed by UT-Battelle for the U.S. Department of Energy Demo : OPI Editing Skills Moving widgets with key board – Press “.” dot key several times until the cursor switches to the direction you want – Use arrow keys on key board to move it one pixel a time Duplicate widgets by dragging widgets with holding Ctrl key ( alt key for Mac). – Or use Ctrl+C and Ctrl+V to copy and paste

20Managed by UT-Battelle for the U.S. Department of Energy Demo : OPI Editing Skills Group widgets – Select multiple widgets – Select “Create Group” from context menu Lock/Unlock Children Set Group border Ungroup widgets – Select group widget – Select “Remove Group” from context menu

21Managed by UT-Battelle for the U.S. Department of Energy Demo : OPI Editing Skills Edit common properties for multiple widgets – Select multiple widgets – Properties sheet will automatically update to show the common properties – Edit properties as usual Copy/Paste Properties

22Managed by UT-Battelle for the U.S. Department of Energy Demo: OPI Editing Skills Add widgets by dragging text to editor

23Managed by UT-Battelle for the U.S. Department of Energy Exercise: Context Help In OPI editor, press “F1” to open the Help View (or from menu Window->Show View->Help) – Right click the view tab header and select “Detached” to detach it. Help content will automatically update along with the selected widget Help view can be detached

24Managed by UT-Battelle for the U.S. Department of Energy Exercise: send PV name to other CSS tools Right click a PV widget, select Process Variable->Probe

25Managed by UT-Battelle for the U.S. Department of Energy Actions Every widget can have actions Click on widget to execute the action Actions will also appear on widget’s context menu during runtime Can also be executed from script – widget.executeAction(index);

26Managed by UT-Battelle for the U.S. Department of Energy Exercise: Open OPI Action Create a new OPI named action.opi Add an Action Button widget Click on Actions property Add an Open OPI action, set File Path to first.opi Run

27Managed by UT-Battelle for the U.S. Department of Energy Exercise: OPI navigation Similar to hyperlinks in a Web Browser Open in new tab by Ctrl+click Open in new Window by Shift+click Or use context menu Zoom in/out Go Back/Forward

28Managed by UT-Battelle for the U.S. Department of Energy Macro Embedded in string based properties, such as PV Name, Tooltip Replaced by its value at runtime Format: $(macro_name) or $ {macro_name} All properties can be accessed via macro: $(name), $(pv_name), $(height) In Editor In Runtime

29Managed by UT-Battelle for the U.S. Department of Energy Where to define Macros BOY Runtime Preferences Open OPI Actions – It includes open OPI from actions, open OPI from command line and open OPI from top OPIs button. Macros property of Display Macros property of container widgets – such as Grouping Container, Linking Container and Tabbed Container. Priority + -

30Managed by UT-Battelle for the U.S. Department of Energy Exercise: Macro Create macro.opi Add a label widget, set text to “ User is $(user)” Add a Knob widget, set PV Name to $(user):setpoint Save (Ctrl+S) Add an action button in action.opi Add an Open OPI action – File Path: macro.opi – Macros: user=css Run

31Managed by UT-Battelle for the U.S. Department of Energy Color & Font Name - make consistent look to your OPIs Predefined name for colors or fonts in text files Using predefined color and font name will help you Achieve consistent look Reuse some particular color or fonts Input once and change everywhere

32Managed by UT-Battelle for the U.S. Department of Energy Exercise: Use Color & Font Name Add a label widget to editor, set: – Background Color : Header_Background – Foreground Color: Header_Foreground – Font: Header1

33Managed by UT-Battelle for the U.S. Department of Energy BOY Advanced

34Managed by UT-Battelle for the U.S. Department of Energy Rules - Easily make widget properties dynamic Condition depended property value Directly output PV value to a property Allows multiple rules on a widget

35Managed by UT-Battelle for the U.S. Department of Energy Exercise: Rules Create a new OPI rules.opi Add a Knob with PV Name loc://test Add a Label – Text: “Heater is on” – Foreground color: Red Click on Rules property and add a rule as below

36Managed by UT-Battelle for the U.S. Department of Energy For more complex logic that Rules cannot achieved Support both JavaScript and Python(Jython) Script Triggered by PV value change or execute from actions Can do “anything” – access widgets and PVs – attach data to widget – call Java code – Call your custom Java library Option: Embedding script text in OPI or using a separate script file Scripts - Intelligentize your OPI

37Managed by UT-Battelle for the U.S. Department of Energy Demo: Scripts Access Widget Access PV Call Java code

38Managed by UT-Battelle for the U.S. Department of Energy PyDev for python script editing Syntax highlight, code auto-completion, error check See BOY Help->Script->Python Script for installation instruction

39Managed by UT-Battelle for the U.S. Department of Energy How powerful a script can be? Submit a table scan and monitor scan progress. General GUI applications /BOY Examples/Miscellaneous/CalculatorExample/Calculator.opi/BOY Examples/Miscellaneous/Timer.opi

40Managed by UT-Battelle for the U.S. Department of Energy Exercise: Script Add a label widget with name myLabel Create a new python script myScript.py Add a button to widget and add “ Execute Python Script ” in Actions property as the dialog on right Run

41Managed by UT-Battelle for the U.S. Department of Energy Widgets Support various type of data – Double, Integer, String, Enum, Boolean, Waveform… Allow plugging in customized widgets to BOY

42Managed by UT-Battelle for the U.S. Department of Energy Exercise: Enum widgets Add Controls/Choice button – PV Name: css:sensor – Items From PV: Yes Add Controls/Combo Box – PV Name: css:sensor – Items From PV: Yes Add Monitors/LED – PV Name: css:sensor – Off Color: green – On Color: red record(bi, "$(user):sensor") { field(DESC, "Sensor Simulation") field(ZNAM, "OK") field(ONAM, "Broken") field(OSV, "MAJOR") field(PINI, "YES") field(FLNK, "$(user):tank") } Similar for bo, mbbi, mbbo records

43Managed by UT-Battelle for the U.S. Department of Energy Demo: Linking Container and Macro Create a new OPI: embedded.opi Add a label widget with text PV Name: $(pv) Add an XY Graph widget – PV Name: $(pv) Save

44Managed by UT-Battelle for the U.S. Department of Energy Demo: Linking Container and Macro (cont’d) Create a new OPI: linkingContainer.opi – Add an Others/Linking Container widget Macros: pv=sim://noise OPI File: embedded.opi – Duplicate extra two linking container widget – Set Macros to pv=sim://sine and pv=sim://ramp repectively – Run

45Managed by UT-Battelle for the U.S. Department of Energy Exercise: XY Graph Widget Open first.opi in editor Select XY Graph widget and set: Trace Count: 2 Primary X Axis (0) – Time Format: Auto Trace 1 – Y PV: css:setpoint – Point style: Point By default: – It only updates on value change – New value is appended in a buffer

46Managed by UT-Battelle for the U.S. Department of Energy Exercise: XY Graph Widget Cont. Update trace periodically even there is no value change – Select XY Graph widget – Set properties: Trigger PV: sim://ramp(0,1,1,1) Trace 0 and Trace 1: – Update Mode: Trigger

47Managed by UT-Battelle for the U.S. Department of Energy Exercise: XY Graph Widget Plot Waveform – Add Monitors/XY Graph widget Trace Count: 2 Trace 0 – Buffer Size: 200 – Concatenate Data: no – Y PV: css:sineWave Trace 1 – Buffer Size: 200 – Concatenate Data: no – Y PV: css:cosWave – Try toolbar buttons to zoom in/out

48Managed by UT-Battelle for the U.S. Department of Energy Widget – Intensity Graph Display image-like data Can be used for video display Generate Profile data Supports Region of Interest (ROI) Zoom In/Out

49Managed by UT-Battelle for the U.S. Department of Energy Exercise: Intensity Graph Widget Add Monitors/Intensity Graph widget PV Name: css:imageWaveform Data Height: 200 Data Width: 200 Maximum: 100 Minimum: 100 Some properties can be changed at Runtime: – Right click widget, select Configure Runtime Properties… – Set Color Map to Gray Scale

50Managed by UT-Battelle for the U.S. Department of Energy Golden rules Simple things are simple 1.Add widget 2.Enter PV Name 3.Run Use Rules or Scripts only if very necessary – Too many rules or scripts may hurt maintainability

51Managed by UT-Battelle for the U.S. Department of Energy Learn by yourself Install BOY Examples – Menu CSS, Display, Install OPI Examples – Double click BOY Examples/main.opi (or right click it and select Open With > OPI Runtime). Read The Friendly Manual

52Managed by UT-Battelle for the U.S. Department of Energy WebOPI BOY OPI in Chrome and iPod Touch

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

54Managed 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+

55Managed by UT-Battelle for the U.S. Department of Energy 3 steps to setup Step 1. Copy webopi.war to Tomcat webapps/ Step 2. Configure css_rap.ini Step 3. Copy opi files to opi_repository 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

56Managed by UT-Battelle for the U.S. Department of Energy Try it yourself Desktop: – Mobile: –

57Managed by UT-Battelle for the U.S. Department of Energy Summary BOY is a set of plugins built on Eclipse CSS integration Modern Graphical Editor Simple things are simple Dynamic via rules or scripts (JavaScript or Python script) Modern web browser style Runtime (Tab, CTRL, SHIFT click) Comprehensive types of widgets and extensible Sitewide deployment friendly (macro, color, font, schema, http) BOY OPI is instantly visible on web via WebOPI

58Managed by UT-Battelle for the U.S. Department of Energy Thank you! BOY Home Page – – Or Google “CSS BOY”