Sequencer
From LNLEpicsWiki
In the following we describe how to install the Seqencer as a Soft Module of EPICS.
Make a directory for Sequencer:
$ cd /opt/epics $ mkdir sequencer
Download the newest release from the website http://epics.web.psi.ch/software/sequencer/
$ cd /opt/epics/sequencer $ wget http://epics.web.psi.ch/software/sequencer/download/seq-2.0.12.tar.gz
Uncompress the archive:
$ cd /opt/epics/sequencer $ tar -zxvf seq-2.0.12.tar.gz
A sub-directory called sncseq-2.0.12 appeared in /opt/epics/sequencer. General installation instructions are available on the website http://epics.web.psi.ch/software/sequencer/
Edit into the <seqencer_top>/configure/RELEASE file:
$ vi /opt/epics/sequencer/sncseq-2.0.12/configure/RELEASE comment out the definition line for EPICS_BASE and insert instead: EPICS_BASE=/opt/epics/base-3.14.10
Make the sequencer:
$ cd /opt/epics/sequencer/sncseq-2.0.12 $ make
It should proceed without any error messages.
To make the Sequencer available to your application do the following changes in the <application_top> directory.
Edit into the file <application_top>/configure/RELEASE:
$ vi <application_top>/configure/RELEASE Insert after "#SNCSEQ=$(EPICS_BASE)/../modules/soft/seq" the following line to define the location of the Sequencer: SNCSEQ=/opt/epics/sequencer/sncseq-2.0.12
You might have written your sequencer program called <sequencer_file_name>.stt containing a sequencer program called <sequencer_program_name>, so it starts like
$ cat <sequencer_file_name>.stt program <sequencer_program_name> ...
First of all make a dbd file in the directory <application_top>/<application_name>App/src with the following content (it is just one line):
$ vi <application_top>/<application_name>App/src/<sequencer_dbd_file_name>.dbd registrar(<sequencer_program_name>Registrar)
Now, edit into the application Makefile and insert the lines below:
$ vi <application_top>/<application_name>App/src/Makefile Insert after "# PSupply.dbd will be made up from these files:" the following line: <application_name>_DBD += <sequencer_dbd_file_name>.dbd Insert after "#PSupply_LIBS += xxx" the following two lines: <application_name>_LIBS += seq pv <application_name>_SRCS += <sequencer_file_name>.stt
Make your application:
$ cd <application_top> $ make
Before starting up your IOC edit the startup script st.cmd and make the sequencer program run:
$ vi <application_top>/iocBoot/iocPSupplyIOC/st.cmd Insert after "## Start any sequence programs" the line below: seq <sequencer_program_name>, "<optional macro substitution>"
Start up your IOC with an embedded sequencer program:
$ cd application_top>/iocBoot/iocPSupplyIOC $ ../../bin/linux-x86/PSupply st.cmd
Some useful commands from http://www.slac.stanford.edu/comp/unix/package/epics/sequencer/manual/Manual.pdf page no.30 give information about your running sequencer program, like
epics> seqShow epics> seqShow <sequencer_program_name> ...
