Files
ISTTOK/epics/iocs/dsPICtemperature/ISTTOKApp/src/IsttokSequenceExecution.stt
2019-11-26 11:20:06 +00:00

85 lines
1.8 KiB
Plaintext

/*======================================================================
*
* Project : ISTTOK slow Control
*
* Description : ISTTOK sequence State Machine
*
*
* Author : Bernardo Carvalho (IPFN-IST)
*
* Copyright (c) : (IPFN-IST)
* Created 25-Feb-2013
*
* SVN keywords
* $Date: 2013-03-05 21:09:02 +0000 (Tue, 05 Mar 2013) $
* $Revision: 4553 $
* $URL: http://metis.ipfn.ist.utl.pt:8888/svn/cdaq/ISTTOK/Software/EPICS/ISTTOKcontrol/branches/quintal/ISTTOKApp/src/IsttokSequenceExecution.stt $
*
-======================================================================*/
program IsttokSequenceExecution
/* ISTTOK Array of Operating State PV - MBBI records */
short IsttokOPSTATE[1];
assign IsttokOPSTATE to {
"ISTTOK:central:OPSTATE"
};
monitor IsttokOPSTATE;
short POS_Stopped;
short POS_Starting;
short POS_Process;
short POS_Clean;
short POS_WaitShot;
short POS_Stopping;
/* ISTTOK Operation Request */
short IsttokOPREQ[1];
assign IsttokOPREQ to {
"ISTTOK:central:OPREQ"
};
monitor IsttokOPREQ;
/* "45FPSC-0001-POS:AUTHORISATION" */
/* Constants */
short ON;
short OFF;
short START;
short STOP;
short NO_ALARM;
short MINOR;
short MAJOR;
short INVALID;
/* Trace message record limited to 40 characters */
string msg;
assign msg to "ISTTOK:central:TraceMessage.VAL";
monitor msg;
/*
int i;
long j;
*/
/****************************************************************/
/* ISTTOK sequence State Set */
/****************************************************************/
ss ss1 {
state init {
when (delay(10)) {
printf("sncExample: Startup delay over\n");
} state low
}
state low {
when (delay(10)) {
printf("sncExample: Changing to high\n");
} state high
}
state high {
when (delay(10)) {
printf("sncExample: Changing to low\n");
} state low
}
}