System usage: Difference between revisions
No edit summary |
|||
(37 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
Just going to write a bunch of stuff here for now and sort it into something more digestible later on... | Just going to write a bunch of stuff here for now and sort it into something more digestible later on... | ||
=Starting the acquisition= | How To Guide to Starting the DigiOS DAQ [[HowToStartDAQ]] | ||
How To Guide to Run the DigiOS DAQ [[HowToRunDAQ]] | |||
=the Control Computer & starting a new experiment= | |||
This is the iMac located in the data room | |||
heliosdigios | |||
''traditional name of the device'' | |||
Directory structure | |||
[[File:Directory.png|800px|frameless]] | |||
From the home directory | |||
~$cd digios | |||
I assume you are in the master branch. If not, please look at [["How to" for analysis code#How to clean up the working directory and prepare for a new experiment? | How to clean up the working directory and prepare for a new experiment? ]] | |||
I also suppose you are going to run a [["How to" for analysis code#How to Setup for a new experiment? | new experiment]]. | |||
digios$./SetUpNewExp | |||
If not, you will see that you are in the branch for the current experiment. | |||
After following the instruction in the SetUpNewExp, please go to the working directory to start the online analysis | |||
digios$cd analysis/working | |||
If some data already taken. You can start online analysis by | |||
working$Process_RUN <runNum> | |||
The bash script will download the data from the DAQ, merge the data, build-event (also call sorting), do mapping (using GeneralSort), and run Monitors.C | |||
=Starting the EDM-based acquisition= | |||
The acquisition computer is located at '''digios1.onenet''' and we are using the logon name and password of '''dgs''' | The acquisition computer is located at '''digios1.onenet''' and we are using the logon name and password of '''dgs''' | ||
ssh -X [email protected] | ssh -X [email protected] | ||
Note that on logon it | Note that on logon it may say '''dgs@helios1''', ignore - in the future this should be modified to match '''digios1'''. | ||
The working directory of the acquisition gui is | The working directory of the acquisition gui is | ||
/global/devel/systems/helios | <s>/global/devel/systems/helios[/edm/screens or scripts] (with some additional scripts in /global/devel/systems/edm/). </s> | ||
~/digios/daq/edm/scripts/ | |||
Notes that the system path includes the ~/digios/daq/edm/scripts | |||
To bring up the gui | To bring up the gui | ||
heliosCommander | heliosCommander | ||
using '''_editable''' if you know what you are doing. | using '''_editable''' if you know what you are doing. Also, there is a link to the '''heliosCommander''' executable in the dgs home directory at the moment ('''NEED TO MAKE THIS EASY AND UNIVERSAL'''). | ||
This will bring up the '''edm 1-12-3 (on helios1)''' window as well as the '''RunControl''' gui. If it does not see '''Known Issues'' below. | This will bring up the '''edm 1-12-3 (on helios1) ''' window, as well as the ''' RunControl ''' gui. If it does not, see '''Known Issues''' below. | ||
This script will also set environment variables such as | This script will also set environment variables such as | ||
export EDMOBJECTS=/global/devel/extensions/dgs1/src/edm/setup | export EDMOBJECTS=/global/devel/extensions/dgs1/src/edm/setup | ||
Line 25: | Line 62: | ||
export EDMDATAFILES=$EDMDATAFILES:/global/devel/systems/helios/edm/screens | export EDMDATAFILES=$EDMDATAFILES:/global/devel/systems/helios/edm/screens | ||
export EDMSCRIPTS=/global/devel/systems/helios/edm/scripts | export EDMSCRIPTS=/global/devel/systems/helios/edm/scripts | ||
Note that the '''EDMSCRIPTS''' location is where most of the scripts called through the gui run from. | Note that the '''EDMSCRIPTS''' location is where most of the scripts called through the gui run from and '''EDMDATAFILES''' holds the various gui screen files. | ||
On '''RunControl''' gui select ''' | On '''RunControl''' gui select '''Terminals->IOC#''', where # is the IOC number, to make sure IOC# has booted up. This calls a script called [[terminals]] with option #+2. For example to start IOC1 | ||
terminals 3 | terminals 3 | ||
On '''RunControl''' gui select ''' | On '''RunControl''' gui select '''Terminals->Soft IOC''' to boot Soft IOC. This calls a script called [[terminals]] with option 1. | ||
terminals 1 | terminals 1 | ||
'''SoftIOC''' will then boot, ending with ''epics> gretClustGT.sav: 929 of 929 PV's connected''. The soft IOC calls a script ('''NEED INFO HERE'''). | '''SoftIOC''' will then boot, ending with ''epics> gretClustGT.sav: 929 of 929 PV's connected''. The soft IOC calls a script ('''NEED INFO HERE'''). | ||
On '''RunControl''' gui select ''' | On '''RunControl''' gui select '''Terminals->Trigger IOC''' to boot Trigger IOC. | ||
On '''RunControl''' gui select '''Scripts->Trigger Lock'''. This calls a script called [XXX]. To check that things are locked, open '''Triggers->Trig Summary''' from the '''RunControl''' gui to see lock status. (Need nice figure of properly set Trigger locks). | |||
On '''RunControl''' gui select '''->Digitizer Setup'''. This calls a script called [[dig_setup]]. This script holds a lot of the ''meat'' for setting up the digitizers and getting the system running. A list of the parameters and their meanings can be found at [[File:Dig reg map with vba.xls]] but be aware that this file is subject to change. The most up to date version can be found on the internal svn site (NEED LINK TO SVN HERE). | |||
If all scripts are set properly should be able to start acquisition at this point. | |||
=Data Taking= | |||
To collect data you must start data collection from an ioc through the command ('''NEED MORE INFO HERE''') | |||
gtReceiver# <server_ip> <filename> <maxfilesize> <GEBID> | |||
0 1 2 3 4 | |||
e.g: gtReceiver4 ioc1 data_run_001.gtd 2000000000 14 | |||
Note: ''ioc1'' should point to a specific ip address in the '''/etc/hosts''' file. | |||
'''GEBID=14 is DGS data''' | |||
'''GEBID=15 is DGSTRIG data''' | |||
'''GEBID=16 is DFMA data''' | |||
<maxfilesize> specifies the max file size in bytes. If a file | |||
runs over the limit a new file will be openend with a new | |||
counter number at the end. A value of 2000000000 or less | |||
ensures the files are less than 2GB and can be read by | |||
all operating systems. | |||
NOTE: use 'ctrl-c' to stop this receiver program (it will then clean and close properly) | |||
where the # refers to the version number of the '''Receiver''' software. At present we are using '''#=4.''' The '''<server>''' location in found in ''/etc/hosts'' file, the '''<filename>''' is the ''.gtd'' extension, and '''<maxfilesize>''' is typically set to 2e9 to make sure files are smaller than 2GB each. | |||
This software can be obtained at [[https://wiki.anl.gov/gsdaq/Receivers/GEBMerge/GEBsort gtReceiver svn location]]. There is a checked out version of this located at '''~/Receiver/''' and the executable has been put in '''~/bin_Linux_i386/'''. | |||
A start script can be used to start the '''gtReceiver''' ('''SHOULD BE MADE INTO A BUTTON'''), such as this one taken from '''dgs1''' on 6/22/15. | |||
#!/bin/bash -l | |||
export TERM=vt100 | |||
echo " terminals" | |||
# Now spawn receiver windows for IOC1-11. | |||
xterm -T ioc1 -geometry 110x24+0+0 -sb -sl 1000 -e "gtReceiver4" "ioc1" "run_$1.gtd01" "2000000000" "14" & | |||
xterm -T ioc2 -geometry 110x24+0+370 -sb -sl 1000 -e "gtReceiver4" "ioc2" "run_$1.gtd02" "2000000000" "14" & | |||
xterm -T ioc3 -geometry 110x24+0+740 -sb -sl 1000 -e "gtReceiver4" "ioc3" "run_$1.gtd03" "2000000000" "14" & | |||
xterm -T ioc4 -geometry 110x24+400+0 -sb -sl 1000 -e "gtReceiver4" "ioc4" "run_$1.gtd04" "2000000000" "14" & | |||
xterm -T ioc5 -geometry 110x24+400+370 -sb -sl 1000 -e "gtReceiver4" "ioc5" "run_$1.gtd05" "2000000000" "14" & | |||
caput Online_CS_SaveData Save | |||
caput GLBL:DIG:disc_width 15 # this is to just for safety | |||
#sleep 2 | |||
caput Online_CS_StartStop Start | |||
wait 10 | |||
echo All Done - Terminal Window is Free to use. | |||
With '''gtReceiver4''' version each digitizer with get its own file to write to, each having the same ''run number'' but with and extra '''_###''' as well. | |||
=Known Issues= | =Known Issues= | ||
A number of PV's on the '''Global Parameters''' window do not show values and cannot be modified. This may have to do with firmware / edm window non-compatibilities, i.e. versions are different. | |||
If error ''Fonts did not load'', or something along these lines, then type following to fix | If error ''Fonts did not load'', or something along these lines, then type following to fix | ||
xset fp+ /usr/share/X11/fonts/100dpi | xset fp+ /usr/share/X11/fonts/100dpi |
Latest revision as of 19:17, January 21, 2021
Details Pertaining to the Usage of the System
Just going to write a bunch of stuff here for now and sort it into something more digestible later on...
How To Guide to Starting the DigiOS DAQ HowToStartDAQ
How To Guide to Run the DigiOS DAQ HowToRunDAQ
the Control Computer & starting a new experiment
This is the iMac located in the data room
heliosdigios traditional name of the device
Directory structure
From the home directory
~$cd digios
I assume you are in the master branch. If not, please look at How to clean up the working directory and prepare for a new experiment?
I also suppose you are going to run a new experiment.
digios$./SetUpNewExp
If not, you will see that you are in the branch for the current experiment.
After following the instruction in the SetUpNewExp, please go to the working directory to start the online analysis
digios$cd analysis/working
If some data already taken. You can start online analysis by
working$Process_RUN <runNum>
The bash script will download the data from the DAQ, merge the data, build-event (also call sorting), do mapping (using GeneralSort), and run Monitors.C
Starting the EDM-based acquisition
The acquisition computer is located at digios1.onenet and we are using the logon name and password of dgs
ssh -X [email protected]
Note that on logon it may say dgs@helios1, ignore - in the future this should be modified to match digios1.
The working directory of the acquisition gui is
/global/devel/systems/helios[/edm/screens or scripts] (with some additional scripts in /global/devel/systems/edm/).~/digios/daq/edm/scripts/
Notes that the system path includes the ~/digios/daq/edm/scripts
To bring up the gui
heliosCommander
using _editable if you know what you are doing. Also, there is a link to the heliosCommander executable in the dgs home directory at the moment (NEED TO MAKE THIS EASY AND UNIVERSAL).
This will bring up the edm 1-12-3 (on helios1) window, as well as the RunControl gui. If it does not, see Known Issues below. This script will also set environment variables such as
export EDMOBJECTS=/global/devel/extensions/dgs1/src/edm/setup export EDMHELPFILES=/global/devel/extensions/dgs1/src/edm/helpFiles export EDMBASE=/global/devel/extensions/dgs1/src/edm export EDM=/global/devel/extensions/dgs1/src/edm/edmMain/O.linux-x86/edm export EDMPVOBJECTS=/global/devel/extensions/dgs1/src/edm/setup export EDMFILES=/global/devel/extensions/dgs1/src/edm/setup export EDMDATAFILES=$EDMDATAFILES:/global/devel/systems/helios/edm/screens export EDMSCRIPTS=/global/devel/systems/helios/edm/scripts
Note that the EDMSCRIPTS location is where most of the scripts called through the gui run from and EDMDATAFILES holds the various gui screen files.
On RunControl gui select Terminals->IOC#, where # is the IOC number, to make sure IOC# has booted up. This calls a script called terminals with option #+2. For example to start IOC1
terminals 3
On RunControl gui select Terminals->Soft IOC to boot Soft IOC. This calls a script called terminals with option 1.
terminals 1
SoftIOC will then boot, ending with epics> gretClustGT.sav: 929 of 929 PV's connected. The soft IOC calls a script (NEED INFO HERE).
On RunControl gui select Terminals->Trigger IOC to boot Trigger IOC.
On RunControl gui select Scripts->Trigger Lock. This calls a script called [XXX]. To check that things are locked, open Triggers->Trig Summary from the RunControl gui to see lock status. (Need nice figure of properly set Trigger locks).
On RunControl gui select ->Digitizer Setup. This calls a script called dig_setup. This script holds a lot of the meat for setting up the digitizers and getting the system running. A list of the parameters and their meanings can be found at File:Dig reg map with vba.xls but be aware that this file is subject to change. The most up to date version can be found on the internal svn site (NEED LINK TO SVN HERE).
If all scripts are set properly should be able to start acquisition at this point.
Data Taking
To collect data you must start data collection from an ioc through the command (NEED MORE INFO HERE)
gtReceiver# <server_ip> <filename> <maxfilesize> <GEBID> 0 1 2 3 4
e.g: gtReceiver4 ioc1 data_run_001.gtd 2000000000 14
Note: ioc1 should point to a specific ip address in the /etc/hosts file.
GEBID=14 is DGS data
GEBID=15 is DGSTRIG data
GEBID=16 is DFMA data
<maxfilesize> specifies the max file size in bytes. If a file runs over the limit a new file will be openend with a new counter number at the end. A value of 2000000000 or less ensures the files are less than 2GB and can be read by all operating systems.
NOTE: use 'ctrl-c' to stop this receiver program (it will then clean and close properly)
where the # refers to the version number of the Receiver software. At present we are using #=4. The <server> location in found in /etc/hosts file, the <filename> is the .gtd extension, and <maxfilesize> is typically set to 2e9 to make sure files are smaller than 2GB each.
This software can be obtained at [gtReceiver svn location]. There is a checked out version of this located at ~/Receiver/ and the executable has been put in ~/bin_Linux_i386/.
A start script can be used to start the gtReceiver (SHOULD BE MADE INTO A BUTTON), such as this one taken from dgs1 on 6/22/15.
#!/bin/bash -l export TERM=vt100 echo " terminals" # Now spawn receiver windows for IOC1-11. xterm -T ioc1 -geometry 110x24+0+0 -sb -sl 1000 -e "gtReceiver4" "ioc1" "run_$1.gtd01" "2000000000" "14" & xterm -T ioc2 -geometry 110x24+0+370 -sb -sl 1000 -e "gtReceiver4" "ioc2" "run_$1.gtd02" "2000000000" "14" & xterm -T ioc3 -geometry 110x24+0+740 -sb -sl 1000 -e "gtReceiver4" "ioc3" "run_$1.gtd03" "2000000000" "14" & xterm -T ioc4 -geometry 110x24+400+0 -sb -sl 1000 -e "gtReceiver4" "ioc4" "run_$1.gtd04" "2000000000" "14" & xterm -T ioc5 -geometry 110x24+400+370 -sb -sl 1000 -e "gtReceiver4" "ioc5" "run_$1.gtd05" "2000000000" "14" & caput Online_CS_SaveData Save caput GLBL:DIG:disc_width 15 # this is to just for safety #sleep 2 caput Online_CS_StartStop Start wait 10 echo All Done - Terminal Window is Free to use.
With gtReceiver4 version each digitizer with get its own file to write to, each having the same run number but with and extra _### as well.
Known Issues
A number of PV's on the Global Parameters window do not show values and cannot be modified. This may have to do with firmware / edm window non-compatibilities, i.e. versions are different.
If error Fonts did not load, or something along these lines, then type following to fix
xset fp+ /usr/share/X11/fonts/100dpi