You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

SVT Hybrid EPICS

Instructions to run on hpstracker in group C

The epics setup for HPS has been checked to run on the zed board but is developed mainly on the hps tracker machine in group C. 

The development is based from the standard epics_example at:

/home/tracker/pelle/epics/example

and is currently on SVN: 

svn://svn.freehep.org/hps/epics/trunk

NOTE: I should fix the SVN so that I can commit our SVT code separately from the IOC code which enables the transition between the arm and intel environments to be smooth. Right now I only checked out the interesting folders (src and db stuff) into the hpstracker and work on those ignoring the setup scripts that was originally checked in from the arm setup on the zed board. 

Instructions
Start IOC

Setup EPICS environment (part of the DAQ setup script):

$ cd /u1/software/software_new

$ source setup_env.csh

Go to the IOC base directory:

$ cd /home/tracker/pelle/epics/example/

Start the IOC

$ cd /home/tracker/pelle/epics/example/iocBoot/iocmyexampleApp

$./st.cmd

This should run the epics IOC and you should see output to the screen where it queries the socket for information. Depending on the debug level (see below) there might be lots of output here. If there is no control server running or it's not configured properly (see below) you should see it retrying to connect. 

Setting up the control server

Power the FEB

Start the control server and GUI

$ cd /u1/software/software_new

$ source setup_env.csh

./bin/frontEndTestGui &

If the IOC is running (if not start it) you should see that the IOC now gets information from the control server. 

NOTE: if you don't see a connection you might need to change the TCP/IP settings (see below).

Setting up for editing or running the SVT slow control GUIs

Setup MEDM environment (part of the DAQ setup script):

$ cd /u1/software/software_new

$ source setup_env.csh

Go to the SVT MEDM directory:

/home/tracker/pelle/epics/medm_hps

This directory is also in SVN at 

svn://svn.freehep.org/hps/epics/trunk/medm_hps

Start GUIs:
Temperature:
medm svtTempSensors.adl &
 
Power supply:
medm svtStatusPS_latest_onoff_control.adl &
Hybrid GUIs:
medm hps_svt_hybrid_LV_bot_1.adl &

For execution mode:  click "Execute" mode in the mddm X-window that pops up. 

Changing debug output

The debug level for the subProcess (essentially stuff in myexampleApp/src/dbSubExample.c) is controlled by "int mySubDebug". (0=least output)

This can be controlled from the IOC startup script /home/tracker/pelle/epics/example/iocBoot/iocmyexampleApp/st.cmd  by changing line:

var mySubDebug 0

The debug level for some of the low-level SVT code is controlled by "int client_util_debug" which is in myexampleApp/src/client_util_debug.c 
IOC development

Compiling source and DB

$ cd /home/tracker/pelle/epics/example/myexampleApp

$ make

Interesting files for development:
EPICS Db: /home/tracker/pelle/epics/example/myexampleApp/Db/
dbSVT.db: controls the polling from the control server
dbFebTemp.db: FEB temperature records
dbHybLV.db: hybrid low voltage records
dbHybT.db: hybrid temperature records


/home/tracker/pelle/epics/example/myexampleApp/src/
dbSubExample.c: contains backend code for parsing and delegating communication with the control server.
client_util.c: Utility functions to communicate with control server and parsing/creating of xml strings


 

  • No labels