High Voltage System

The High Voltage System Program (HVS) has been crated to controlling and monitoring of the high voltage mainframes type of LeCroy-1458 over Ethernet network using TCP/IP protocol or telnet protocol in case if portserver and mainframe's serial interface are used. This program has GUI (Main Window) to control and setup high voltage mainframes parameters by the user and it runs server to accept and process external control requests.


Main Window HVS Server
Starting HVS program
Port Serever
HV Mainframe LeCroy-1458

  • hvframe, hvmainframe, mainframe - means high voltage mainframe LeCroy-1458
  • hvmodule, hvunit - means high voltage unit(module) installed in mainframe.
  • hvchannel, channel - means high voltage channel of module.
  • HVFrame - means java class representing properties of the mainframe
  • HVmodule - means java class representing properties of the module.
  • HVchannel - means java class representing properties of the channel.
  • Main Window

    Main Window shows Menu Bar,  Table , and Status Window.

    Menu bar includes next menu items :

    'File', 'Edit', 'View', 'Map', 'Tools' , 'Help'

    Start HVS program

    To run HVS program type './hvs' from current directory. If program starts first time or file HVFrameList.props with list of hvframe hostnames not found in user directory, the window 'HV Host List' is poped-up. You need to crate list of hvmainframes by hostname and listening port; (see 'Add/Remove_HVFrame_List' below).The initialization of mainframes is begin after that. In this time the following process are happened:

    After that the screen with menu, tables and status window pop-up.



    includes following items:

       Format stored file with voltage settings is follows:

    Example: Store demand voltage(DV) of mainframe with hostname host1:1090 with 2 modules in slots(0 and 1) with 12 channels each:

    host1:1090 S0 DV -15.0 -14.0 -45.0 -10.0 -10.0 -10.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0
    host1:1090 S1 DV -10.0 -10.0 -40.0 -10.0 -10.0 -10.0 -1.0 -1.0 -1.0 -1.0 -1.0 -1.0


    includes following items:



    includes follows menu items:
       All this information displays in 'Status' window.




    includes menu items with configured map names to open window with
    status of hvchannels in coordinates of corresponded map

            This window shows table with HVON/HVOFF  status of all channels
    by coresponded icon and menu bar:

    'File', 'View', 'Help'

    The mouse double click on selected channel cells will pop-up window with all parameters for this channel and bring up to focus the table with this channel in HVS main window.

            The format of map file for calorimeter is follows:
            first string is list of hostnames of HV mainframes or hostname of the PortServer and port numbers where HV mainframe is connected:
    hostname1:port1 hostname2:port2 ...
    portserver1:port1 portserver1:port2 ...
            next strings represented rows(Y-coordinates)
            The channel address position in that strings represented
    x,y channels location
    X:22 ... ... ... ... ... ... 01
    # 34
    # 33
    # ...
    # 2
    # 1
            The channel address format is follows:
    #H#SS#CC - address of HVmainframe channel if no modules with subchannels,
    #H#SS#SB#CC - address of HVmainframe channel for modules with subchannels,
            #H - one digit number(1-9) of mainframe by its location in hostname string above (1 -is first );

            #SS - two digit slot number(0-15)
           #SB - submodule name in form "Sn", where 'S' is symbol "S", 'n' is submodule number(0-9);

            #CC - two digit channel number(0-11);

            For example: next string represents channels for hvframe with hostname1:port1 for module in slot 0 and for channels from 0 to 11:

    10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011

            Next string represents channels for hvframe with hostname1:port1 for module in slot 12 with submodule 0 and 1 and for channels from 0 to 3:

    112S000 112S001 112S002 112S003 112S100 112S101 112S102 112S103


    includes following items:

    'Help' shows this file.


    Table displays values of all properties of selected module for all channels.

    Columns of table are values of properties(parameters).
    Rows of table are channels of module. Modules are presented as horizontal tabbed panel(tabs on top side), with printed number of slot in tab title. To select module, move cursor on tab with given slot number and press left mouse button. Mainframes are presented also as vertical tabbed panel (tabs from left side), with printed hostname:port of mainframe in tab title. To select mainframe, move mouse cursor on tab with given hostname and press left mouse button. Values displayed in blue color can be edited.
    To select cell for editing once click left mouse button, while cursor placed on cell.

    To edit selected cell, once click left mouse button, delete old value and enter new value. If make double-click after cell selection, old value will be marked and new value can be entered.

    From left side of table buttons 'ON' and 'OFF' are placed to switch power on/off selected hvmainframe.


    Add/Remove HVFrame List

    Enter in left window 'hostname:port:protocol' of the first hvmainframe and press 'Add' button. The 'hostname' is hostname of HVmainframe if it directly connected to the ethernet and it uses TCP/IP protocol. The 'port' is port number. The 'protocol' is 'tcp' if TCP/IP protocol is used and it is 'telnet' if telnet protocol is used. The 'hostname:portnumber:protocol' appears in up window. Enter next hostname:portnumber:protocol of next hvmainframe and so on.
    If need remove some hostname from list, select string with hostname for removing

    and press 'Remove' button. This hostname disappears from list. To exit from this window press 'Close' button.
    NOTE: If new hostname added to the hosname list, hvframe with this hostname is connected and its initialization is started.


    HVS Server

    External requests.

    Commands Format

    One command at a time is strongly recommended for Ethernet controlled mainframes when one host is controlling multiple mainframes. To communicate with hvmainframes the program 'hvcli'(source hvclient.c)
    is used.
    This program get as parameters the hostname, portnumber and message for sending
    to given host. There is possibility to use two protocols to communicate with HV mainframes.
    One of them is TCP/IP protocol that is used when HV mainframe connected directly to ethernet.
    Another one is 'telnet' protocol that is used when HV mainframe connected to the PortServer using serial line connection.
    The format of command messages is identical for the both protocols.

    There are two way to communicate with HV mainframe:
    First: if 'HVS' program does not runs,
    then the direct communication to frame is used:
    For example, next command send command message "SYSINFO" (get system information) directly to the hvmainframe with hostname 'hallahv1' on port 1090:
    Second: if 'HVS' uses connection to this hvmainframe, the 'hvlient' should be started with another parameters :
    in this case hostname - name of the host where HVS is running, For example, next command send command message "SYSINFO" for mainframe with hostname=hv01:1090 (get system information) to the server on the computer, where HVS is running: Message may contains any enabled command-message for mainframe. Responses from mainframe printed to standard output and may be redirected to the file.

    Map Commands Format

    The server running in HVS supports another format of command messages to

    process messages with channel addressing in map coordinates (map protocol).
    To get name list of currently defined maps the next command is used :
    The output from this command is string for every map with map values, separeted by space:
    If string begins with 'C' symbol than next string with map values is presented.

    To get host list of currently defined HV frames the next command is used :
    The output from this command is string for every frame in form: hostname:portnumber

    The message is null terminated string with ASCII characters( after -m parameter in command line). The format of this command message is follows:

  • <mapname> - name of the map when configured with 'Map Configurator'
  • <command> - command word to the HVS server, one of the follows :
  • <property> - at this time only next properties are supported:
  • DV - demand voltage;
    CE - channel enable;
    MV - measured voltage;
    MC - measured current;
    ST - channel status;
  • <channel(s)_address> - address of one or more channels in x,y coordinates of calorimeter in next format:  (x1 and y1 are integer numbers from 1 to 22 for x and from 1 to 32 for y)
  • x1,y2 - one channel with coordinates x=x1 and y=y1;
    x1:xn,y1 - channels with coordinates x=x1,x2,..,xn and y=y1;
    x1,y1:yn - channels with coordinates x=x1 and y=y1,y2,..,yn;
    x1:xn,y1:ym -channels with coordinates x=x1,x2,..,xn and y=y1,y2,..,ym .
  • <value> - digital number. For CE property it is '1' (enable channel) or '0' (disable channel);

  • For DV property it is digital number represented voltage set up or down (examples: 150,200,10..) or digital number ended with character '%' (example: 10%, 15%, 1% ...) represented percents to change of current voltage set value  up or down.


    There are few conditions when HVS program generate alarm signals.
    The program monitors following events:

    Alarm signal is beepping sound (~every 2 sec) and flashing in red
    tabs for hvframe, where one of noted above conditions was detected.
    Also, window with button flashing in white/red and text "Alarm Silence"
    is arised. The pressing on this button is disabled only voice alarm,
    but does not cleared alarm itself(except HVOFF alarm, that is cleared).

    If hvchannel trip is detected then corresponded module tab and cell
    with channel's name is flashing in red.
    This state is cleared by cycling channel Enable/Disable check box
    (select channel enable, wait about 1-2 second then select channel disable).

    Next conditions of HVframe states are extracted from configuration words
    (replaying by command "CONFIG"):

    If the status one of these conditions(except Key switch position) is "bad"
    then the program starts alarm signal and the label with corresponded "bad"
    status(below ON/OFF buttons) is changed to the red color.

    Panic OFF alarm is arised when INTERLOCK input of the HVframe will be
    activated or Panic OFF button will be pressed. The color of "Panic OFF"
    (above ON/OFF buttons) is changed to the red.
    This alarm can be cleared only manualy from front panel of HVframe
    by pressing OFF switch when INTERLOCK input will be disactivated
    (closed to ground).

    The alarm on lost network connection starts if no responce from hvframe
    during period 40-60 seconds, but if connection will be restored, the alarm state
    is cleared. As usualy, connection to the HVframe is restored in 1-2 minutes
    and alarm is cleared automaticaly.
    If no connection during long time period (more then 5 min) one should
    makes reset of the HVframe and waiting at least 3-5 min
    to restore connection to the HVframe.
    If no connection after HVframe reset, probably there are HVframe or network problems.

    If power of the HVframes will be ON , and somehow it is changed to the
    power OFF state not from GUI, in this case alarm will be started.
    To clear this alarm state, one need just to press flashing black/red button "Alarm Silence" for alarmed HVframe.


    Digi Port Server

    (short description from Digi PortServer User's Guide).

    The Digi PortServer intelligen terminal server gives ypu ability to connect up to 16 RS-232
    asychronous serial devisces to an Ethernet network.
    The telnet command is used to log into a remote system using the telnet protocol.
    The syntax is 'telnet hostname port#'. The 'hostname' is PortServers name on the net.
    The 'port#' is tcp port number that is port number where HV mainframe is connected plus 2000.
    To reference the HV mainframe on port #4, use the value 2004.


    1458 LeCroy HV mainframe

    (short description from 1454/1458 HV Mainframe User's Guide).

    Mainframe consists from 16 slots for high voltage modules, and has various interfaces for communication:serial RS-232, ARCNET, ETHERNET. To communicate with mainframe TCP/IP protocol is used in HVS program. For using telnet, type 'telnet hvhostname',

    on password prompt enter: 'lrs1450' (by default). The commands can be entered directly from terminal.
    List of generally used commands are:
    SYSINFO - returns the mainframe system information.
    LL  - returns the logical unit list in terms of slot-submodule, one for each logical unit in the order of logical unit number.
    LD -  load values for single property(for a number channels of logical unit)
    HVON/HVOFF  - switches the high voltage on and off.
    IMOFF - immediate turn off HV generation.
    RC   - recall command returns the values for a given property for a channel or all channels in a module.
    SRC  - super recall command returns the values for each property given  as an argument for all channels and all modules.
    PROP  - returns a list of the properties supported by specified logical unit

    Command Messages.

    The format of  command messages for modifies values as follow:

     <command> <channel(s)> <property(s)> <value(s)>

    Slots, Modules/Submodules, Logical Units, and Channels.

    The 1450 system contains multiple slots which may or may not contain modules.

    A module may span more than one slot but is addressed only by a single slot number. Modules always contain one or more submodules. The term logical unit is used to refer to submodules and modules with only one submodule. Logical units generally have multiple channels. All channels of a logical unit share identical properties and the values for these properties may not be channel independent

    Logical Unit Specification:


    Mainframe with 2 modules in slots 1 and 3 with the module in slot 1 containing one submoduleS1, S3S0,S3S1,S3S2,S3S3 with corresponding logical unit number specifications L0,L1,L2,L3,L4,L5, respectively.
    Channel Specification String:
    S1  All channels in module in slot 1
    S1.3  Channel 3 of slot 1
    S4S2.1  Channel 1 of submodule 2 in slot 4
    L0.3  Channel 3 of logical unit 0.
    L1  All channels of logical unit 1
    Module Properties.

    The following properties are considered 'golden' and a will probably appear in all HV modules. The attributes listed are examples only.

    CE - channel enable (label:Ch_En,units:, measured,range:0-1, format:%1s)
    DV - demand voltage (label:Target_V, units:V, range:-3000-0, format:%7.1f)
    HVL - hardware voltage limit(label:HV_LIM, units:V, measured, range:7,
    MC - measured current (label:Meas_uA, units:uA, measured, range:7 format%7.1f)
    MV - measured voltage (label:Meas_V, units:V, measured, range:7 format%7.1f)
    MCDZ- measured currnet dead zone (label:MC_Zone, units:uA, range:0-100,
    MVDZ - measured voltage dead zone (label:MV_Zone, units:V, range:0-100,
    RUP - rump Up rate (label:RUp_V/s, units:V/s, range:300, format:%7.1f)
    RDN - rump Down rate (label:RDn_V/s, units:V/s, range:300, format:%7.1f)
    ST - channel status (label:Status, measured, range:4, format:%4x)
    TC - trip current (label:Trip_uA, units:uA, range:1000 format:%7.1f)