# Presentation: 154912

## HBD HV Control

**System Development**

- Manuel Proissl
- HBD Meeting 09/18/2007

## OUTLINE

- Current PHENIX HV Control Setup
- Run7 HBD HV GUI
- Features of new HV Control for Run8
- General Software Design
- T/S >> C/S Architecture
- UML :: Use-Case-Diagram
- Interface Overview / Functions (Bertan)
- Java vs. Perl TK
- Development Outline & Status

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## PHENIX HV CONTROL SETUP

- EPICS Database  HV Server *(**** HV2002**TM**)*

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## PHENIX HV CONTROL SETUP

- EPICS Database  HV Server
*	**(**** HV2002**TM**)*
- HV Server (central machine)
- List of hardware items, HV channel definitions – maintaining automatically
- Main interaction program: hvclient
- LeCroy 1471 Channel Properties:
- Measured (Peak) Current
- Measured / Demand Voltage
- Ramp Rate Up / Down
- Trip (Peak) Current
- Channel Enable / Ramp Trip Enable
- Channel Status
- Measured Voltage / Current  Dead Zone
- High Voltage Limit

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## Run7 HBD HV GUI

- Too much traffic: Checking / Modifying Channel by Channel
- [instead of group transmissions]
- Terminal / Server System [slow]
- Various claims from Shift Crew
- Need of standard GUI
*HV Control went through many changes throughout Run7*

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## Run7 HBD HV GUI

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## FEATURES OF Run8 HV CONTROL

- Reduced Traffic :: One-Time Transmissions
- Bertan Tests On-The-Fly
- Access to IR  Disconnect / Rearrange Jumpers on new Divider
- 	 Start Bertan Test Program  Select Test Sequence  Review Immediate Test results (incl. recommendations)
- HV Status Verification System
- Automated LogBook V2.0 Reporting & Expert Alert System
- New user-friendly Interface
- Standard GUI for SA1
- C/S Architecture, Stable & Extendable (3 layers), ...

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## GENERAL SOFTWARE DESIGN

- Current HV Control Setup: Terminal (Client) / Server
- Upgrade to Client / Server Architecture
- Introducing a 3-layer system
- Final System Extendable [guaranteed by UML design]
- User-friendly, easy-navigation Interface

**Java GUI**

**Perl / SSH Client**

**C**

- via shell

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## T/S >> C/S Architecture

- Terminal / Server
- Client / Server

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## General UML :: Use-Case-Diagram

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## Interface Overview / Functions

- Running the HV Control GUI:

**Splash**

**Login Window**

- Important Notice: Windows here do not represent the final design. Only for function demonstration!

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## Interface Overview / Functions

- Running the HV Control GUI:
**SHIFT MODE**

**Standard HV Control :: SA1**

- Important Notice: Window does not represent the final design.
- Only for function demonstration!

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## Interface Overview / Functions

- Running the
- HV Control GUI:
**EXPERT MODE**

**HV Control :: Expert**

**Window does not represent the final design. Only for function demonstration!**

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## JAVA vs. PERL TK

- Object-Oriented
- Code & Data merged into indivisible object
- More power and flexibility of object
- 	[class, instance, inheritance, polymorphism]
- Intelligent information request; messages
- 	>> object’s interface
- Speed: Sufficient
- Memory: Large but Affordable
- Interface: Very Good

**Java**

**Perl TK**

- Procedural-Oriented
- Code & Data kept separately
- Functions sequentially
- 	[change in code affects what follows]
- Code reusable
- Speed: Good
- Memory: Small
- Interface: Basic

**Structure ::**

**Performance ::**

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## JAVA vs. PERL TK

- Error Analysis: Easy
- Problems, errors, malfunctions easy to detect/track + control
- Protection: Safe
- Prevents dead loops, memory leaks
- Source code secure [compiler]
- GUI :: incl.
- SSH networking: very good

**Java**

**Perl TK**

- Error Analysis: Difficult
- Protection: Bad
- memory leaks >> no functions available
- Source code not safe [not designed to]
- GUI :: TK package
- SSH networking: 3rd party
-                                          libraries

**Robust ::**

**Function ::**

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## DEVELOPMENT OUTLINE

- Software Requirement Analysis (UML :: Use-Case Diagram)
- Software Design (Functions, Structure)
- Development Plan (Use of Technologies, Documentation, Timeline)
- Programming (incl. test of sections)
- Server Scripts [verify handshake]
- SA1 version [client]
- Expert version [client]
- Protection System, Login, Splash
- Crash Tests
- System goes online.

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## DEVELOPMENT STATUS

**√**  Software Requirement Analysis (UML :: Use-Case Diagram)
- √  Software Design (Functions, Structure)
- √  Development Plan (Use of Technologies, Documentation, Timeline)
- Programming (incl. test of sections)
- √  Server Scripts [verify handshake]
- SA1 version [client]  *-- in progress --*
- Expert version [client]  *-- in progress --*
- Protection System, Login, Splash
- Crash Tests
- System goes online.

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007

## SUMMARY

- Introducing C/S Architecture
- Users profit from 3 layer system (GUI | shell)
- User-friendly Java Interface
- Standard SA1 GUI  |  Expert version
- Development Status: Shift / Expert Version in progress
- One-Time 1471 Channel Checks
- New Features incl. Bertan Tests On-The-Fly
- 	 Any Upgrading Function Requests??

- HBD HV Control System – Development                                                   Manuel Proissl                                                                                           Page  of 18

- Upgrades For Run8 | PHENIX, BNL                                                                                                                                          HBD Meeting :: September 18th, 2007