customizing edna view with - iom.invensys.comiom.invensys.com/en/usergrouppresentations... ·...
TRANSCRIPT
Customizing eDNA View with .NET
Illinois Emergency Management Agency Josh Niederer Jason Fields
2015 Software User Conference. Schneider Electric confidential.
IEMA Background
●Headquarters in Springfield, IL ● IEMA’s Bureau of Nuclear Facility Safety is responsible for conducting
real-time environmental and radiological monitoring of seven nuclear power plant sites in Illinois. ●Radiological Task Force – Illinois Plan for Radiological Accidents ●Radiological Emergency Assessment Center (REAC) ●On-call Reactor Specialist, Health Physics Specialist, and REAC Manager ●Nuclear Power Plant Resident Inspectors ● 24/7 Communications Center
2015 Software User Conference. Schneider Electric confidential.
IEMA’s Remote Monitoring System
●What is it? ● an advanced, integrated,
computer-based system that continually monitors all 7 nuclear power plants in Illinois.
●Who runs it? ● IEMA’s
Bureau of Nuclear Facility Safety (BNFS)
●What do they Monitor? ●Plant Operations, Radiation, and
Gaseous Effluents
Byron Station
Zion Station (closed 1998)
Dresden Station
Braidwood Station
Clinton Station
LaSalle Station
Quad Cities Station
2015 Software User Conference. Schneider Electric confidential.
IEMA’s Remote Monitoring System
RDL – Reactor Data Link ~1,000 key operational parameters every minute from each unit
GDN – Gamma Detection Network Monitors radiation levels surrounding the plant as well as meteorological data.
●GEMS – Gaseous Effluent Monitoring System
Continuous sampling from each stack to detect and identify radioactive materials
2015 Software User Conference. Schneider Electric confidential.
IEMA’s Remote Monitoring System
What else does it do? ●Graphical displays and analysis ●Remote control ●Provide notification of unusual
occurrences to on-call IEMA personnel
2015 Software User Conference. Schneider Electric confidential.
IEMA’s Remote Monitoring System
●Current RMS ●Developed over a 25+ year period ●Utilizes many outdated languages and hardware
● InStep Software Selected for Modernization ●Evolve the current RMS ●Build real-time data acquisition and analysis platform ●Enhance existing capabilities ●Use current technologies
2015 Software User Conference. Schneider Electric confidential.
So Why eDNA? Legacy system was on VMS hardware and was built with FORTRAN code
2015 Software User Conference. Schneider Electric confidential.
IEMA’s System Overview
●Data Collectors at Each Nuclear Plant ●Custom Real-time Services for RDL, GEMS, and GDN ● 120-day History
●Redundant Central Historians ●Complete History
●Redundant Web Servers ●CHaD ●Custom RMS Management Database
2015 Software User Conference. Schneider Electric confidential.
Architecture ●Central Historian
●Redundancy ● 2 eDNA Web Servers
●Site Data collectors ●Two per plant and one at
Springfield ●Data bridge to central historians ●Each collector with GDN,
GEMS, and RDL
2015 Software User Conference. Schneider Electric confidential.
View Design Guiding Principles ●Ease of Use
User experience approximating standard Windows application ●Ease of Design
●Minimize effort for designers (reuse data elements, minimize code generation)
●Consistency of Design ●Design Template ●Standards and Conventions
2015 Software User Conference. Schneider Electric confidential.
View Design Guiding Principles ●Knowledge Transfer from VMS System
●Setpoints ●Backup points ●Notification rules
●Ease of Administration ●Centralized management
● AppServ/Web deployment ● Common functions/procedures in .dll rather than repetitive code ● Source control via Team Foundation Server
2015 Software User Conference. Schneider Electric confidential.
Original Template Solution
●Single View file with pre-configured controls ●Make copies of desired controls ●Modify data point assignments ●Customize controls’ event code for CHaD class
●Share Code with Global Declarations (Declare.bas) ●Difficulties with version control and distribution
2015 Software User Conference. Schneider Electric confidential.
Template vs. Custom .NET DLL (Benefits)
●Only the unique template RTV is needed
●All Code defined in one place. ●Full power of .NET ●Standard Programming language ●Easier for non-software developer
View Developers ●Code changes tracked in source
control.
2015 Software User Conference. Schneider Electric confidential.
IEMAView Concept
● IEMA Decision to Use Custom DLL Approach ●Custom Requirements ●Flexibility ●Enhanced User Experience ●Standard Programming Languages ●Source Control ●Unlimited Potential
●Customization – View’s Power Under the Hood
2015 Software User Conference. Schneider Electric confidential.
IEMAView Overview
●VB.NET Class Library Project ●Built with Visual Studio ●Uses eDNA API (EzDNAApiNet and EzDNAServApi) ● Includes some basic custom controls (IEMAControls)
2015 Software User Conference. Schneider Electric confidential.
IEMAView: How It Works
●Passes copy of “TheView” object for external control ●Provides Wrappers for View objects
●EdnaView ●EdnaControl
●Other Classes for eDNA API Interaction ●DataPoint ●Chad
●Processing Triggers ●Dropdown Changes (Modify EdnaControl CHaD Paths) ●PumpData (API Calls to get DataPoint values)
2015 Software User Conference. Schneider Electric confidential.
Implementing IEMAView ●Declare Object Variables
Declare Objects
2015 Software User Conference. Schneider Electric confidential.
Implementing IEMAView ● Instantiate and Set Object Variables
Instantiate Objects
First Library Call
2015 Software User Conference. Schneider Electric confidential.
Implementing IEMAView ●Controls – Initialize and MouseDown Code
Add each control to collection
Bring up right-click context menu
2015 Software User Conference. Schneider Electric confidential.
Implementing IEMAView ●Controls – PumpData Code
… Code block to check IEMAView variables until all controls are registered and call initial setup subs (database calls for setpoints, formats, etc. and build list of services to check redundancy)…
Refreshes control value/format each PumpData interval
… Code to call IEMAView’s setRedundancyStatus() to update View’s redundancy indicator at a defined interval…
2015 Software User Conference. Schneider Electric confidential.
RMS Management Database ● Custom MS SQL Database ● Used to enhance the features of IEMAView
● Backup Points ● Additional Setpoints ● Reference Material/Sub-view File Paths ● Custom Feature Audit Logs ● Point Management (Planned Addition)
● Catalog Reviews ● View Point-Usage Index
2015 Software User Conference. Schneider Electric confidential.
Deploying IEMAView
● Initial MSI Installation Package ● Initial copy of IEMAView DLL ● InStep DLLs not included in standard install (userctrl.dll, logout.dll, etc.) ●SQL Client for Database Calls
●Current Update Strategy ●Batch file on network share ●Copy latest version ●Register Assemblies (RegAsm.exe)
●"c:\windows\microsoft.net\framework\v4.0.30319\regasm" /codebase /tlb "c:\program files (x86)\edna\iemaview.dll" ●"c:\windows\microsoft.net\framework\v4.0.30319\regasm" /codebase /tlb "c:\program files (x86)\edna\iemacontrols.dll"
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Right-Click Context Menu ●Provides a more intuitive Windows-like user experience ●Allows easier interaction with data elements on the View ●Reduces need to memorize hot keys or
keyboard/mouse combinations
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Right-Click Context Menu ●A Right-Click context menu option has been added to eDNA View.
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Quick Trending
●Any point on a View screen can be right-clicked and added to a trend list via the “Add to List” menu item.
●Once the points are selected the user can launch Trend 4.0 by using the “Trend Points” option and all points will be displayed on a trend.
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Quick Trending
●Quick Trending Demo
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Override
●The ability to override a point displayed in a view has been added. ●Consists of three services: Site RTS, Override RTS, CALC Override. ●When a point is overridden, a value is written to the site’s Override RTS
and the CALC service determines which value to display based on the statuses in the Value RTS and the official RTS.
●This allows manual setting of known bad data.
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: Override
●Demo of the ability to override a point displayed in a view.
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: GEMS Control
●Remote Control ●OPC Features in Custom Real-time Service ● InStep DLL Authentication and Point Value Handling (userctrl.dll) ● IEMAView DLL Formatting and Dialog Boxes for Data Entry
●Context-Specific Access Control ●GEMS Control Point Context Menu Items ● ‘Request Control’ Item Inactive for Unauthorized Users ●Different Format for Usable Controls ●Warning for Unexpected Control Option
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: GEMS Control
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: GEMS Control
2015 Software User Conference. Schneider Electric confidential.
IEMAView Features: GEMS Control
2015 Software User Conference. Schneider Electric confidential.
Custom Setpoint Profiles
●eDNA Provides for High and Low Warning and Alarm Setpoints ● IEMA Monitoring Needs Vary Depending on the Situation
●Emergency Conditions ●Typical Performance Range ●Early Warning
● IEMAView Allows Multiple Setpoint “Profiles” to be Applied in View ●Profile Defined for Each View ●Also Used to Control Numeric Formatting
2015 Software User Conference. Schneider Electric confidential.
Custom Setpoints Example
Reactor Vessel Pressure (IEMA.CP1.C34DA011)
●Emergency Conditions ●Typical Performance
Range ●Early Warning
Setpoint Value Interlock/Trip
1250 psig Reactor Pressure Design Pressure
1165 – 1190 psig Safety Setpoints
1127 psig ARI Logic for High Reactor Pressure
1113 - 1123 psig Relief Setpoints 1065 psig Reactor Steam Dome Pressure High Reactor SCRAM 1020 psig Normal 100 % Power Steam Pressure
849 psig Main Steam Lines and Drains Group 1 Isolation if Mode Switch is in “RUN”
472 psig LPCI and Low Pressure Core Spray Permissive to OPEN Injection Valves 145 psig Low Pressure Core Spray Discharge Values Open 125 psig RHR Discharge Values Open 104 psig RHR SDC Cut-In Permissive Pressure / Isolation - High
RHR / SD Cooling Group 3 Isolation 60 psig
RCIC Steam Supply Pressure – Low
RCIC Group Isolations 5, 6, 7
2015 Software User Conference. Schneider Electric confidential.
Backup Points
●Feature present in IEMA’s legacy program but not native to eDNA View ● IEMAView allows designation of a backup point in the RMS
Management database ●Evaluates status of primary point ●Displays backup point’s data if primary point’s status is unreliable ●Current configuration is system-wide for a given point
2015 Software User Conference. Schneider Electric confidential.
Development Process Lessons Learned
●Debugging challenges ●Most Error Messages Point to the PumpData Event (generic) ●Visual Studio Debugger Unavailable from View ●Forced to Use MsgBox() or Write Debug Info to Files
●Tracing issues back to native View ●Design test cases to isolate issue from custom code ●Potential for more bugs due to non-typical use of View functions
●Dependence on eDNA Web ●Found and Fixed a Bug in Web that Caused Slow CHaD Calls ●Built and Compared Versions Using API vs. Web Service CHaD Calls
2015 Software User Conference. Schneider Electric confidential.
Contact Information
Jason Fields / Nuclear Evaluation Section Head Bureau of Nuclear Facility Safety
Illinois Emergency Management Agency 217-524-8961
Josh Niederer / Nuclear Safety Information Systems Specialist II Bureau of Information Technology
Illinois Emergency Management Agency 217-785-9898
[email protected] www.ready.illinois.gov
2015 Software User Conference. Schneider Electric confidential. ©2014 Schneider Electric. All Rights Reserved. All trademarks are owned by Schneider Electric Industries SAS or its affiliated companies or their respective owners.