From 172d345d5aed72a486c0f56b4bef5bd5317670bf Mon Sep 17 00:00:00 2001 From: Bernardo Carvalho Date: Tue, 10 Dec 2019 21:22:39 +0000 Subject: [PATCH] changed Stopping States --- .../ISTTOKrpiApp/Db/ISTTOKmachineControl.db | 17 +- .../ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db | 30 +- .../ISTTOKrpiApp/src/IsttokSeqExec.stt | 369 +++++++++++------- .../ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt | 185 ++++----- 4 files changed, 360 insertions(+), 241 deletions(-) diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db index fac672b..b329f89 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db @@ -135,9 +135,10 @@ record(fanout, "$(P)$(R)PCF8574:57:REGISTER:READ:FNOUT"){ } record(bi , "$(P)$(R)TMPump2-Emergency") { field(DESC," TMP2 – Falha ") - field( INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B0 NPP NMS") - field( ZNAM, "ON" ) - field( ONAM, "OFF" ) + field(INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B0 NPP NMS") + field(ZNAM, "ON" ) + field(ONAM, "OFF" ) + field(ZSV,"MAJOR") } record(bi , "$(P)$(R)TMPump2-Acceleration") { @@ -414,11 +415,11 @@ record(bo, "$(P)$(R)CapBank-Discharge" ) { field(VAL,"1") } -record(bo,"$(P)$(R)Primary-PressureCondition"){ - field(ZNAM, "OFF" ) - field(ONAM, "ON" ) - field(VAL,"0") -} +#record(bo,"$(P)$(R)Primary-PressureCondition"){ +# field(ZNAM, "OFF" ) +# field(ONAM, "ON" ) +# field(VAL,"0") +#} record(ai,"$(P)$(R)TMPump2-Speed"){ # field(DESC," ADC Pump speed 0-10V ") diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db index 9cc8eef..08d983b 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db @@ -64,12 +64,12 @@ record(calc, "$(P)$(R)STARTCALCSTATE") { field(INPA,"$(P)$(R)STARTINGSTATE.VAL PP NMS") } -#record(calc, "$(P)$(R)STOPCALCSTATE") { -# field(DESC, "Stop Calculated State") -# field(CALC,"2^A") -# field(SCAN,"1 second") -# field(INPA,"$(P)$(R)STOPPINGSTATE.VAL PP NMS") -#} +record(calc, "$(P)$(R)STOPCALCSTATE") { + field(DESC, "Stop Calculated State") + field(CALC,"2^A") + field(SCAN,"1 second") + field(INPA,"$(P)$(R)STOPPINGSTATE.VAL PP NMS") +} record(calc, "$(P)$(R)CLEANCALCSTATE") { field(DESC, "Clean Automatic Calculated State") @@ -226,7 +226,7 @@ record(mbbi, "$(P)$(R)WSHOTINGSTATE") { field(NIVL, "9") field(TEVL, "10") field(ELVL, "11") - field(TLVL, "12") + field(TVVL, "12") field(TTVL, "13") field(ZRST, "NonShooting") field(ONST, "ShotWTrig") @@ -245,3 +245,19 @@ record(mbbi, "$(P)$(R)WSHOTINGSTATE") { field(VAL, "0") } +record(mbbi, "$(P)$(R)STOPPINGSTATE") { + field(DESC, "Stopping State Sequence") + field(ZRVL, "0") + field(ONVL, "1") + field(TWVL, "2") + field(THVL, "3") + field(FRVL, "4") + field(FVVL, "5") + field(ZRST, "NonStopped") + field(ONST, "Stopping1") + field(TWST, "Stopping2") + field(THST, "Stopping3") + field(FRST, "Stopping4") + field(FVST, "Stopping5") + field(VAL, "0") +} diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt index 5bdb0a5..50bded3 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt @@ -53,6 +53,13 @@ short WSHTST_Shoting11 = 11; short WSHTST_Shoting12 = 12; short WSHTST_ShotEnd = 13; +short STPST_NonStopping = 0; +short STPST_Stopping1 = 1; +short STPST_Stopping2 = 2; +short STPST_Stopping3 = 3; +//short STPST_Stopping4 = 4; +//short STPST_Stopping5 = 5; + short POS_Stopped =0; short POS_Starting=1; short POS_Process =2; @@ -71,7 +78,8 @@ short NO_ALARM=0; short MINOR=1; short MAJOR=2; short INVALID=3; - + +/* PV variables */ short IsttokOPSTATE; assign IsttokOPSTATE to "ISTTOK:central:OPSTATE"; monitor IsttokOPSTATE; @@ -92,20 +100,24 @@ short IsttokProcReq; assign IsttokProcReq to "ISTTOK:central:PROCESS-REQ"; monitor IsttokProcReq; -short IsttokSTARTINGSTATE; -assign IsttokSTARTINGSTATE to "ISTTOK:central:STARTINGSTATE"; -monitor IsttokSTARTINGSTATE; +short STARTINGSTATE; +assign STARTINGSTATE to "ISTTOK:central:STARTINGSTATE"; +//monitor STARTINGSTATE; -short IsttokCLEANINGSTATE; -assign IsttokCLEANINGSTATE to "ISTTOK:central:CLEANINGSTATE"; +short CLEANINGSTATE; +assign CLEANINGSTATE to "ISTTOK:central:CLEANINGSTATE"; -short IsttokCLEANINGMANMODE; -assign IsttokCLEANINGMANMODE to "ISTTOK:central:CLEANINGMANMODE"; -monitor IsttokCLEANINGMANMODE; +short CLEANINGMANMODE; +assign CLEANINGMANMODE to "ISTTOK:central:CLEANINGMANMODE"; +//monitor CLEANINGMANMODE; -short IsttokWSHOTINGSTATE; -assign IsttokWSHOTINGSTATE to "ISTTOK:central:WSHOTINGSTATE"; +short WSHOTINGSTATE; +assign WSHOTINGSTATE to "ISTTOK:central:WSHOTINGSTATE"; +short IsttokSTOPPINGSTATE; +assign IsttokSTOPPINGSTATE to "ISTTOK:central:STOPPINGSTATE"; +//monitor IsttokSTOPPINGSTATE; + short IsttokRPump1_Motor; assign IsttokRPump1_Motor to "ISTTOK:central:RPump1-Motor"; @@ -369,14 +381,14 @@ ss PulseSequence { IsttokOPSTATE = POS_Stopping; pvPut(IsttokOPSTATE); } state Stopping - when ((IsttokSTARTINGSTATE == STRST_Starting5) ) { + when ((STARTINGSTATE == STRST_Starting5) ) { strcpy(msg, "State to Process"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); strcpy(msg, "Toroidal Shot Disable"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokShotShot_TorPSDisable = 1; + IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; pvPut(IsttokShotShot_TorPSDisable); /* Pulse state change to Process*/ IsttokOPSTATE = POS_Process; @@ -396,7 +408,14 @@ ss PulseSequence { entry{ IsttokLastOPSTATE = POS_Process; pvPut(IsttokLastOPSTATE); + IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; + pvPut(IsttokShotShot_TorPSDisable); } + when ( (pvStatus(IsttokRPump1_Pressure) != pvStatOK) || (pvStatus(IsttokRPump1_Pressure) != pvStatOK)) { + /* Pulse state change to Stopping */ + IsttokOPSTATE = POS_Stopping; + pvPut(IsttokOPSTATE); + } state Stopping when ((IsttokOPREQ==STOP) || (IsttokTMPump1_ManualValve == OFF)) { /*Just to be sure */ IsttokProcReq = STOP; @@ -405,13 +424,13 @@ ss PulseSequence { strcpy(msg, "State to Stopping"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - pvPut(msg); - errlogSevPrintf(NO_ALARM, "%s\n",msg); - strcpy(msg, "Toroidal Shot Disable"); - pvPut(msg); - errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokShotShot_TorPSDisable = PCF_RELAY_ON; - pvPut(IsttokShotShot_TorPSDisable); + // pvPut(msg); + // errlogSevPrintf(NO_ALARM, "%s\n",msg); + // strcpy(msg, "Toroidal Shot Disable"); + // pvPut(msg); + // errlogSevPrintf(NO_ALARM, "%s\n",msg); + //IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; + //pvPut(IsttokShotShot_TorPSDisable); /* Pulse state change to Stopping */ IsttokOPSTATE = POS_Stopping; pvPut(IsttokOPSTATE); @@ -420,11 +439,11 @@ ss PulseSequence { strcpy(msg, "State to Clean"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - strcpy(msg, "Toroidal Shot Disable"); - pvPut(msg); - errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokShotShot_TorPSDisable = PCF_RELAY_ON; - pvPut(IsttokShotShot_TorPSDisable); + // strcpy(msg, "Toroidal Shot Disable"); + // pvPut(msg); + // errlogSevPrintf(NO_ALARM, "%s\n",msg); + //IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; + //pvPut(IsttokShotShot_TorPSDisable); /* Pulse state change to Clean */ IsttokOPSTATE = POS_Clean; pvPut(IsttokOPSTATE); @@ -436,7 +455,7 @@ ss PulseSequence { strcpy(msg, "Toroidal Shot Enable"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; + IsttokShotShot_TorPSDisable = PCF_RELAY_ON; pvPut(IsttokShotShot_TorPSDisable); /* Pulse state change to WaitShot */ IsttokOPSTATE = POS_WaitShot; @@ -446,11 +465,11 @@ ss PulseSequence { strcpy(msg, "Emergency from Process"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - strcpy(msg, "Toroidal Shot Disable"); - pvPut(msg); - errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokShotShot_TorPSDisable = PCF_RELAY_ON; - pvPut(IsttokShotShot_TorPSDisable); +// strcpy(msg, "Toroidal Shot Disable"); +// pvPut(msg); +// errlogSevPrintf(NO_ALARM, "%s\n",msg); + //IsttokShotShot_TorPSDisable = PCF_RELAY_OFF; + //pvPut(IsttokShotShot_TorPSDisable); /* Pulse state change to Emergency*/ IsttokOPSTATE = POS_Process; pvPut(IsttokOPSTATE); @@ -503,7 +522,7 @@ ss PulseSequence { } /* State Stopping */ state Stopping { - entry{ +/* entry{ IsttokRPump1_Motor = PCF_RELAY_ON; pvPut(IsttokRPump1_Motor); strcpy(msg, "Rotary Pumps 1/2 OFF"); @@ -514,15 +533,9 @@ ss PulseSequence { //IsttokLastOPSTATE = POS_Process; //pvPut(IsttokLastOPSTATE); } +*/ // } state Stopping - when (delay(5)) { - IsttokRPump1_Valve = PCF_RELAY_ON; - pvPut(IsttokRPump1_Valve); - strcpy(msg, "Rotary Valves 1/2 CLOSE"); - pvPut(msg); - errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokRPump2_Valve = PCF_RELAY_ON; - pvPut(IsttokRPump2_Valve); + when (IsttokSTOPPINGSTATE == STPST_Stopping3) { //IsttokSTOPPINGSTATE = STPST_Stopping1; //pvPut(IsttokSTOPPINGSTATE); IsttokOPSTATE = POS_Stopped; @@ -607,11 +620,12 @@ ss PulseSequence { } } +/* Starting State Set */ ss StartingSequence { state NonStarting { entry { - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_NonStarting; + pvPut(STARTINGSTATE); } when (IsttokOPSTATE == POS_Starting) { strcpy(msg, "Rotary Pump1 ON"); @@ -624,8 +638,8 @@ ss StartingSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokRPump2_Motor = PCF_RELAY_OFF; pvPut(IsttokRPump2_Motor); - IsttokSTARTINGSTATE = STRST_Starting1; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_Starting1; + pvPut(STARTINGSTATE); } state Starting1 } state Starting1 { @@ -633,8 +647,8 @@ ss StartingSequence { strcpy(msg, "Starting1 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + // IsttokSTARTINGSTATE = STRST_NonStarting; + // pvPut(IsttokSTARTINGSTATE); } state NonStarting when (delay(5.0)) { strcpy(msg, "Rotary Valve1 OPEN"); @@ -647,8 +661,8 @@ ss StartingSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokRPump2_Valve = PCF_RELAY_OFF; pvPut(IsttokRPump2_Valve); - IsttokSTARTINGSTATE = STRST_Starting2; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_Starting2; + pvPut(STARTINGSTATE); } state Starting2 } state Starting2 { @@ -656,15 +670,15 @@ ss StartingSequence { strcpy(msg, "Starting2 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_NonStarting; + pvPut(STARTINGSTATE); } state NonStarting when (IsttokTMPump1_ManualValve == ON) { strcpy(msg, "Manual Valve Checked"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_Starting3; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_Starting3; + pvPut(STARTINGSTATE); } state Starting3 } state Starting3 { @@ -672,14 +686,14 @@ ss StartingSequence { strcpy(msg, "Starting3 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_NonStarting; + pvPut(STARTINGSTATE); } state NonStarting when ( (pvStatus(IsttokRPump1_Pressure) == pvStatOK) && (pvStatus(IsttokRPump1_Pressure) == pvStatOK)) { /* TODO unfold when when (((IsttokRPump1_Pressure < IsttokRPump1_PressureLowLimit) && (IsttokRPump2_Pressure < IsttokRPump2_PressureLowLimit)) ) { */ - printf("Primary1 Pressure=%f\n",IsttokRPump1_Pressure); - printf("Primary2 Pressure=%f\n",IsttokRPump2_Pressure); + //printf("Primary1 Pressure=%f\n",IsttokRPump1_Pressure); + //printf("Primary2 Pressure=%f\n",IsttokRPump2_Pressure); // if(IsttokRPump1_Pressure < IsttokRPump1_PressureLowLimit){ strcpy(msg, "TMP1 MotorOn ON" ); @@ -692,7 +706,7 @@ ss StartingSequence { strcpy(msg, "TMP2 MotorOnOff ON" ); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokTMPump2_Motor = ON; + IsttokTMPump2_Motor = PCF_RELAY_ON; pvPut(IsttokTMPump2_Motor); // } @@ -705,8 +719,8 @@ ss StartingSequence { sprintf(msg, "TMPNO = [1:%s]", tmp1_stat); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_Starting4; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_Starting4; + pvPut(STARTINGSTATE); } state Starting4 } state Starting4 { @@ -714,8 +728,8 @@ ss StartingSequence { strcpy(msg, "Starting4 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + //IsttokSTARTINGSTATE = STRST_NonStarting; + //pvPut(IsttokSTARTINGSTATE); } state NonStarting when (IsttokTMPump1_NormalOperation == PCF_INPUT_ON) { // (IsttokPrimary_PressureCondition == 0) || // if(IsttokTMPump1_NormalOperation == PCF_INPUT_ON){ @@ -723,8 +737,8 @@ ss StartingSequence { pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); // } - IsttokSTARTINGSTATE = STRST_Starting5; - pvPut(IsttokSTARTINGSTATE); + STARTINGSTATE = STRST_Starting5; + pvPut(STARTINGSTATE); } state Starting5 } state Starting5 { @@ -732,8 +746,8 @@ ss StartingSequence { strcpy(msg, "State to Process"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokSTARTINGSTATE = STRST_NonStarting; - pvPut(IsttokSTARTINGSTATE); + //IsttokSTARTINGSTATE = STRST_NonStarting; + //pvPut(IsttokSTARTINGSTATE); } state NonStarting } } @@ -766,13 +780,13 @@ ss CleaningSequence{ IsttokShotClean_TorContactor = PCF_RELAY_OFF; pvPut(IsttokShotClean_TorContactor); - IsttokCLEANINGSTATE = CLNST_NonCleaning; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_NonCleaning; + pvPut(CLEANINGSTATE); errlogSevPrintf(NO_ALARM, "%s\n",msg); } - when(delay(1.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when(delay(1.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Initiating Auto Cleaning..."); pvPut(msg); strcpy(msg, "GIS Valves OPEN"); @@ -780,8 +794,8 @@ ss CleaningSequence{ errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotGasIS_Valves = PCF_RELAY_ON; pvPut(IsttokShotGasIS_Valves); - IsttokCLEANINGSTATE = CLNST_Cleaning1; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning1; + pvPut(CLEANINGSTATE); } state Cleaning1 } state Cleaning1 { @@ -793,14 +807,14 @@ ss CleaningSequence{ IsttokShotGasIS_Valves = PCF_RELAY_OFF; pvPut(IsttokShotGasIS_Valves); } state NonCleaning - when (delay(2.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean ) { + when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean ) { strcpy(msg, "Filament ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotVVessel_Filament = PCF_RELAY_ON; pvPut(IsttokShotVVessel_Filament); - IsttokCLEANINGSTATE = CLNST_Cleaning2; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning2; + pvPut(CLEANINGSTATE); } state Cleaning2 } state Cleaning2{ @@ -811,17 +825,17 @@ ss CleaningSequence{ errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotVVessel_Filament = PCF_RELAY_OFF; pvPut(IsttokShotVVessel_Filament); - IsttokCLEANINGSTATE = CLNST_Cleaning1; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning1; + pvPut(CLEANINGSTATE); } state Cleaning1 - when (delay(2.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean) { + when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean) { strcpy(msg, "Primary-CT ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_PrimContactor = PCF_RELAY_ON; pvPut(IsttokShotClean_PrimContactor); - IsttokCLEANINGSTATE = CLNST_Cleaning3; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning3; + pvPut(CLEANINGSTATE); } state Cleaning3 } state Cleaning3{ @@ -831,17 +845,17 @@ ss CleaningSequence{ errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_PrimContactor = PCF_RELAY_OFF; pvPut(IsttokShotClean_PrimContactor); - IsttokCLEANINGSTATE = CLNST_Cleaning2; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning2; + pvPut(CLEANINGSTATE); } state Cleaning2 - when(delay(2.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when(delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Toroidal-BK CLOSE"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_TorPneuBreaker = PCF_RELAY_ON; pvPut(IsttokShotClean_TorPneuBreaker); - IsttokCLEANINGSTATE = CLNST_Cleaning4; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning4; + pvPut(CLEANINGSTATE); } state Cleaning4 } @@ -852,17 +866,17 @@ ss CleaningSequence{ errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_TorPneuBreaker = PCF_RELAY_OFF; pvPut(IsttokShotClean_TorPneuBreaker); - IsttokCLEANINGSTATE = CLNST_Cleaning3; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning3; + pvPut(CLEANINGSTATE); } state Cleaning3 - when (delay(2.0) && IsttokCLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Toroidal-CT ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_TorContactor = PCF_RELAY_ON; pvPut(IsttokShotClean_TorContactor); - IsttokCLEANINGSTATE = CLNST_Cleaning5; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning5; + pvPut(CLEANINGSTATE); } state Cleaning5 } @@ -873,8 +887,8 @@ ss CleaningSequence{ errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotClean_TorContactor = PCF_RELAY_OFF; pvPut(IsttokShotClean_TorContactor); - IsttokCLEANINGSTATE = CLNST_Cleaning4; - pvPut(IsttokCLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning4; + pvPut(CLEANINGSTATE); } state Cleaning4 } } @@ -882,8 +896,8 @@ ss CleaningSequence{ ss ShotSequence { state NonShoting { entry { - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); strcpy(IsttokShotCountdownScan, "Passive"); pvPut(IsttokShotCountdownScan); } @@ -895,8 +909,8 @@ ss ShotSequence { pvPut(IsttokShotCountdown); strcpy(IsttokShotCountdownScan, "1 second"); pvPut(IsttokShotCountdownScan); - IsttokWSHOTINGSTATE = WSHTST_WaitTrg; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_WaitTrg; + pvPut(WSHOTINGSTATE); } state ShotWaitTrg } state ShotWaitTrg { @@ -908,8 +922,8 @@ ss ShotSequence { pvPut(IsttokShotCountdownScan); IsttokProcReq = STOP; pvPut(IsttokProcReq); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); IsttokOPSTATE = POS_Process; pvPut(IsttokOPSTATE); } state NonShoting @@ -918,8 +932,8 @@ ss ShotSequence { pvPut(msg); IsttokShotCountdown = -70; pvPut(IsttokShotCountdown); - IsttokWSHOTINGSTATE = WSHTST_Shoting2; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting2; + pvPut(WSHOTINGSTATE); } state Shoting2 } state Shoting2 { @@ -944,8 +958,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotLab_WarningLight = PCF_RELAY_ON; pvPut(IsttokShotLab_WarningLight); - IsttokWSHOTINGSTATE = WSHTST_Shoting3; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting3; + pvPut(WSHOTINGSTATE); } state Shoting3 } state Shoting3 { @@ -960,8 +974,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotGasIS_Valves = PCF_RELAY_ON; pvPut(IsttokShotGasIS_Valves); - IsttokWSHOTINGSTATE = WSHTST_Shoting4; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting4; + pvPut(WSHOTINGSTATE); } state Shoting4 } state Shoting4 { @@ -969,12 +983,12 @@ ss ShotSequence { strcpy(msg, "Shoting4 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); } state NonShoting when (IsttokShotCountdown == -59) { - IsttokWSHOTINGSTATE = WSHTST_Shoting5; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting5; + pvPut(WSHOTINGSTATE); } state Shoting5 } state Shoting5 { @@ -982,8 +996,8 @@ ss ShotSequence { strcpy(msg, "Shoting5 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); } state NonShoting when (IsttokShotCountdown == -46) { strcpy(msg, "CAPBANK Charge ON" ); @@ -991,8 +1005,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotCapBank_Charge = PCF_RELAY_ON; pvPut(IsttokShotCapBank_Charge); - IsttokWSHOTINGSTATE = WSHTST_Shoting6; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting6; + pvPut(WSHOTINGSTATE); } state Shoting6 } state Shoting6 { @@ -1002,8 +1016,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n", msg); IsttokShotCapBank_Charge = PCF_RELAY_OFF; pvPut(IsttokShotCapBank_Charge); - IsttokWSHOTINGSTATE = WSHTST_Shoting7; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting7; + pvPut(WSHOTINGSTATE); } state Shoting7 } state Shoting7 { @@ -1018,8 +1032,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokShotVVessel_Filament = PCF_RELAY_ON; pvPut(IsttokShotVVessel_Filament); - IsttokWSHOTINGSTATE = WSHTST_Shoting8; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting8; + pvPut(WSHOTINGSTATE); } state Shoting8 } state Shoting8 { @@ -1028,8 +1042,8 @@ ss ShotSequence { strcpy(msg, "Shoting8 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); } state NonShoting */ when (IsttokShotCountdown == -4) { @@ -1039,8 +1053,8 @@ ss ShotSequence { // PS Trigger Pulse IsttokShotShot_TorPSTrigger = ON; pvPut(IsttokShotShot_TorPSTrigger); - IsttokWSHOTINGSTATE = WSHTST_Shoting9; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting9; + pvPut(WSHOTINGSTATE); } state Shoting9 } state Shoting9 { @@ -1048,8 +1062,8 @@ ss ShotSequence { strcpy(msg, "Ready for SHOT" ); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n", msg); - IsttokWSHOTINGSTATE = WSHTST_Shoting10; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting10; + pvPut(WSHOTINGSTATE); } state Shoting10 } state Shoting10 { @@ -1059,8 +1073,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n", msg); IsttokShotCapBank_Discharge = PCF_RELAY_OFF; pvPut(IsttokShotCapBank_Discharge); - IsttokWSHOTINGSTATE = WSHTST_Shoting11; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting11; + pvPut(WSHOTINGSTATE); } state Shoting11 } state Shoting11 { @@ -1075,8 +1089,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n", msg); IsttokShotVVessel_Filament = 1; pvPut(IsttokShotVVessel_Filament); - IsttokWSHOTINGSTATE = WSHTST_Shoting12; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting12; + pvPut(WSHOTINGSTATE); } state Shoting12 } state Shoting12 { @@ -1086,8 +1100,8 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n", msg); IsttokShotLab_WarningLight = PCF_RELAY_OFF; pvPut(IsttokShotLab_WarningLight); - IsttokWSHOTINGSTATE = WSHTST_ShotEnd; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_ShotEnd; + pvPut(WSHOTINGSTATE); } state ShotEnd } state ShotEnd { @@ -1096,8 +1110,8 @@ ss ShotSequence { strcpy(msg, "Shoting13 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n", msg); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); } state NonShoting */ when (IsttokShotCountdown > 160) { @@ -1106,25 +1120,96 @@ ss ShotSequence { errlogSevPrintf(NO_ALARM, "%s\n", msg); // IsttokShotCountdown = 0; // pvPut(IsttokShotCountdown); - IsttokWSHOTINGSTATE = WSHTST_WaitTrg; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_WaitTrg; + pvPut(WSHOTINGSTATE); } state ShotWaitTrg } } + +/* Stopping State Set */ +ss StoppingSequence { + state NonStopping { + entry { + IsttokSTOPPINGSTATE = STPST_NonStopping; + pvPut(IsttokSTOPPINGSTATE); + } + when (IsttokOPSTATE == POS_Stopping) { + strcpy(msg, "Stopping Mode: Stopping1"); + pvPut(msg); + // errlogSevPrintf(NO_ALARM, "%s\n",msg); + + IsttokTMPump1_MotorOff = ON; + pvPut(IsttokTMPump1_MotorOff); + + IsttokTMPump2_Motor = PCF_RELAY_OFF; + pvPut(IsttokTMPump2_Motor); + IsttokSTOPPINGSTATE = STPST_Stopping1; + pvPut(IsttokSTOPPINGSTATE); + } state Stopping1 + } + state Stopping1 { + when (IsttokOPSTATE != POS_Stopping ) { + strcpy(msg, "Stopping Mode: NonStopping"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); + + //IsttokSTOPPINGSTATE = STPST_NonStopping; + //pvPut(IsttokSTOPPINGSTATE); + } state NonStopping + + when (delay(5.0) && IsttokTMPump1_ManualValve==OFF) { + strcpy(msg, "Manual Valve Closed Checked"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); + IsttokRPump1_Motor = PCF_RELAY_ON; + pvPut(IsttokRPump1_Motor); + strcpy(msg, "Rotary Pumps 1 & 2 OFF"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); + IsttokRPump2_Motor = PCF_RELAY_ON; + pvPut(IsttokRPump2_Motor); + IsttokSTOPPINGSTATE = STPST_Stopping2; + pvPut(IsttokSTOPPINGSTATE); + } state Stopping2 + } + state Stopping2 { + when (IsttokOPSTATE != POS_Stopping ) { + IsttokSTOPPINGSTATE = STPST_NonStopping; + pvPut(IsttokSTOPPINGSTATE); + } state NonStopping + when (delay(5)) { + IsttokRPump1_Valve = PCF_RELAY_ON; + pvPut(IsttokRPump1_Valve); + strcpy(msg, "Rotary Valves 1 & 2 CLOSE"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); + IsttokRPump2_Valve = PCF_RELAY_ON; + pvPut(IsttokRPump2_Valve); + IsttokSTOPPINGSTATE = STPST_Stopping3; + pvPut(IsttokSTOPPINGSTATE); + } state Stopping3 + } + state Stopping3 { + when (IsttokOPSTATE != POS_Stopping ) { + IsttokSTOPPINGSTATE = STPST_NonStopping; + pvPut(IsttokSTOPPINGSTATE); + } state NonStopping + } +} /* when (IsttokShotCountdown > 159) { strcpy(msg, "Toroidal Field Recovered" ); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n", msg); - IsttokWSHOTINGSTATE = WSHTST_Shoting12; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_Shoting12; + pvPut(WSHOTINGSTATE); } state Shoting12 state Shoting12 { when ((IsttokOPSTATE != POS_WaitShot ) && (IsttokShotCountdown == 160) ) { strcpy(msg, "Shoting12 Out"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n", msg); - IsttokWSHOTINGSTATE = WSHTST_NonShoting; - pvPut(IsttokWSHOTINGSTATE); + WSHOTINGSTATE = WSHTST_NonShoting; + pvPut(WSHOTINGSTATE); } state NonShoting when (IsttokShotCountdown >= 160) { strcpy(msg, "Terminated"); @@ -1136,5 +1221,21 @@ ss ShotSequence { // pvPut(IsttokShotCountdown); } state ShotWaitTrg } + + + + entry{ + IsttokRPump1_Motor = PCF_RELAY_ON; + pvPut(IsttokRPump1_Motor); + strcpy(msg, "Rotary Pumps 1/2 OFF"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); + IsttokRPump2_Motor = PCF_RELAY_ON; + pvPut(IsttokRPump2_Motor); + //IsttokLastOPSTATE = POS_Process; + //pvPut(IsttokLastOPSTATE); + } +// } state Stopping + */ diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt index 4d85345..bdf57ff 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/pvList.txt @@ -1,46 +1,11 @@ -ISTTOK:central:TMPump1-Power -ISTTOK:central:TMPump1-Emergency -ISTTOK:central:TMPump1-Acceleration -ISTTOK:central:TMPump1-NormalOperation -ISTTOK:central:TMPump2-Emergency -ISTTOK:central:TMPump2-Acceleration -ISTTOK:central:TTSystem-tzero -ISTTOK:central:Emergency-PhysButton -ISTTOK:central:OPREQ -ISTTOK:central:CLEANINGMANMODE -ISTTOK:central:FSTriggerStart -ISTTOK:central:PROCESS-MODE -ISTTOK:central:PROCESS-REQ -ISTTOK:central:AUTHORISATION -ISTTOK:central:TMPump1-ControllerOn -ISTTOK:central:TMPump1-ControllerOff -ISTTOK:central:TMPump1-MotorOn -ISTTOK:central:TMPump1-MotorOff -ISTTOK:central:TMPump2-Motor -ISTTOK:central:Buzzer -ISTTOK:central:Emergency-UserButton -ISTTOK:central:RPump1-Motor -ISTTOK:central:RPump1-Valve -ISTTOK:central:RPump2-Motor -ISTTOK:central:RPump2-Valve -ISTTOK:central:VVessel-Filament -ISTTOK:central:Lab-WarningLight -ISTTOK:central:Clean-TorContactor -ISTTOK:central:Clean-TorPneuBreaker -ISTTOK:central:Shot-TorPSDisable -ISTTOK:central:Shot-TorPSTrigger -ISTTOK:central:CapBank-Charge -ISTTOK:central:Clean-PrimContactor -ISTTOK:central:Clean-PrimPneuBreaker -ISTTOK:central:GasIS-Valves -ISTTOK:central:CapBank-Discharge -ISTTOK:central:Primary-PressureCondition -ISTTOK:central:TMPump1-ManualValve -xxx:SR_heartbeat -xxx:SR_i_am_alive -xxx:SR_deadIfZero +ISTTOK:central:PCF8574:56:REGISTER +ISTTOK:central:PCF8574:57:REGISTER +ISTTOK:central:PCF8574:60:REGISTER +ISTTOK:central:PCF8574:61:REGISTER +ISTTOK:central:PCF8591:72:CTRLREGISTER ISTTOK:central:OPCALCSTATE ISTTOK:central:STARTCALCSTATE +ISTTOK:central:STOPCALCSTATE ISTTOK:central:CLEANCALCSTATE ISTTOK:central:WSHOTCALCSTATE ISTTOK:central:COUNTDOWN @@ -52,61 +17,13 @@ ISTTOK:central:VVessel-Pressure ISTTOK:central:RPump1-Pressure ISTTOK:central:TMPump1-PressureAdmission ISTTOK:central:RPump2-Pressure +ISTTOK:central:Temperature_0 +ISTTOK:central:TMPump2-Speed +ISTTOK:central:TMPump2-Current ISTTOK:central:PCF8574:56:REGISTER:READ ISTTOK:central:PCF8574:57:REGISTER:READ ISTTOK:central:PCF8574:60:REGISTER:READ ISTTOK:central:PCF8574:61:REGISTER:READ -ISTTOK:central:PCF8591:72:ADC_CH1 -ISTTOK:central:PCF8591:72:ADC_CH2 -ISTTOK:central:P001:M -ISTTOK:central:P001:E -ISTTOK:central:P002:M -ISTTOK:central:P002:E -ISTTOK:central:P003:M -ISTTOK:central:P003:E -ISTTOK:central:P004:M -ISTTOK:central:P004:E -ISTTOK:central:LASTOPSTATE -xxx:SR_rebootStatus -xxx:SR_status -xxx:SR_0_Status -xxx:SR_1_Status -xxx:SR_2_Status -xxx:SR_3_Status -xxx:SR_4_Status -xxx:SR_5_Status -xxx:SR_6_Status -xxx:SR_7_Status -ISTTOK:central:TMPump1-ControllerOnInv -ISTTOK:central:TMPump1-ControllerOffInv -ISTTOK:central:TMPump1-MotorOnInv -ISTTOK:central:TMPump1-MotorOffInv -ISTTOK:central:BuzzerInv -ISTTOK:central:Shot-TorPSTriggerInv -ISTTOK:central:PCF8574:56:REGISTER:READ:FNOUT -ISTTOK:central:PCF8574:57:REGISTER:READ:FNOUT -ISTTOK:central:CurrentTime -ISTTOK:central:PULSE-NUMBER -xxx:SR_0_State -xxx:SR_1_State -xxx:SR_2_State -xxx:SR_3_State -xxx:SR_4_State -xxx:SR_5_State -xxx:SR_6_State -xxx:SR_7_State -ISTTOK:central:PCF8574:56:REGISTER -ISTTOK:central:PCF8574:57:REGISTER -ISTTOK:central:PCF8574:60:REGISTER -ISTTOK:central:PCF8574:61:REGISTER -ISTTOK:central:PCF8591:72:CTRLREGISTER -ISTTOK:central:OPSTATE -ISTTOK:central:STARTINGSTATE -ISTTOK:central:CLEANINGSTATE -ISTTOK:central:WSHOTINGSTATE -ISTTOK:central:Temperature_0 -ISTTOK:central:TMPump2-Speed -ISTTOK:central:TMPump2-Current ISTTOK:central:TraceMessage ISTTOK:central:RS485Debug xxx:SR_recentlyStr @@ -137,3 +54,87 @@ xxx:SR_6_Time xxx:SR_7_Name xxx:SR_7_StatusStr xxx:SR_7_Time +ISTTOK:central:PCF8591:72:ADC_CH1 +ISTTOK:central:PCF8591:72:ADC_CH2 +ISTTOK:central:P001:M +ISTTOK:central:P001:E +ISTTOK:central:P002:M +ISTTOK:central:P002:E +ISTTOK:central:P003:M +ISTTOK:central:P003:E +ISTTOK:central:P004:M +ISTTOK:central:P004:E +ISTTOK:central:TMPump1-Power +ISTTOK:central:TMPump1-Emergency +ISTTOK:central:TMPump1-Acceleration +ISTTOK:central:TMPump1-NormalOperation +ISTTOK:central:TMPump2-Emergency +ISTTOK:central:TMPump2-Acceleration +ISTTOK:central:TTSystem-tzero +ISTTOK:central:Emergency-PhysButton +ISTTOK:central:PCF8574:56:REGISTER:READ:FNOUT +ISTTOK:central:PCF8574:57:REGISTER:READ:FNOUT +ISTTOK:central:OPREQ +ISTTOK:central:CLEANINGMANMODE +ISTTOK:central:FSTriggerStart +ISTTOK:central:PROCESS-MODE +ISTTOK:central:PROCESS-REQ +ISTTOK:central:AUTHORISATION +ISTTOK:central:TMPump1-ControllerOn +ISTTOK:central:TMPump1-ControllerOff +ISTTOK:central:TMPump1-MotorOn +ISTTOK:central:TMPump1-MotorOff +ISTTOK:central:TMPump2-Motor +ISTTOK:central:Buzzer +ISTTOK:central:Emergency-UserButton +ISTTOK:central:RPump1-Motor +ISTTOK:central:RPump1-Valve +ISTTOK:central:RPump2-Motor +ISTTOK:central:RPump2-Valve +ISTTOK:central:VVessel-Filament +ISTTOK:central:Lab-WarningLight +ISTTOK:central:Clean-TorContactor +ISTTOK:central:Clean-TorPneuBreaker +ISTTOK:central:Shot-TorPSDisable +ISTTOK:central:Shot-TorPSTrigger +ISTTOK:central:CapBank-Charge +ISTTOK:central:Clean-PrimContactor +ISTTOK:central:Clean-PrimPneuBreaker +ISTTOK:central:GasIS-Valves +ISTTOK:central:CapBank-Discharge +ISTTOK:central:TMPump1-ManualValve +xxx:SR_heartbeat +xxx:SR_i_am_alive +xxx:SR_deadIfZero +ISTTOK:central:PULSE-NUMBER +xxx:SR_0_State +xxx:SR_1_State +xxx:SR_2_State +xxx:SR_3_State +xxx:SR_4_State +xxx:SR_5_State +xxx:SR_6_State +xxx:SR_7_State +ISTTOK:central:CurrentTime +ISTTOK:central:LASTOPSTATE +xxx:SR_rebootStatus +xxx:SR_status +xxx:SR_0_Status +xxx:SR_1_Status +xxx:SR_2_Status +xxx:SR_3_Status +xxx:SR_4_Status +xxx:SR_5_Status +xxx:SR_6_Status +xxx:SR_7_Status +ISTTOK:central:TMPump1-ControllerOnInv +ISTTOK:central:TMPump1-ControllerOffInv +ISTTOK:central:TMPump1-MotorOnInv +ISTTOK:central:TMPump1-MotorOffInv +ISTTOK:central:BuzzerInv +ISTTOK:central:Shot-TorPSTriggerInv +ISTTOK:central:OPSTATE +ISTTOK:central:STARTINGSTATE +ISTTOK:central:CLEANINGSTATE +ISTTOK:central:WSHOTINGSTATE +ISTTOK:central:STOPPINGSTATE