diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db index 9518345..918b8ec 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKmachineControl.db @@ -310,9 +310,9 @@ record(bo, "$(P)$(R)GasIS-Valves" ) { # field(DESC," 2 válvulas pneumáticas de corte do sistema de injecção de H/D/Ne/He no TOK, 24V out = deixa passar") # record(bo, "$(P)$(R)GISValvesOnOff" ) { field( OUT, "$(P)$(R)SEEED4RELAY:17:REGISTER.B0 PP" ) - field( ZNAM, "OFF" ) - field( ONAM, "ON" ) - field(VAL,"0") + field( ZNAM, "OFF" ) + field( ONAM, "ON" ) + field(VAL,"0") } diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db index d0e4dd1..7ee84dc 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db @@ -246,6 +246,7 @@ record(mbbo, "$(P)$(R)CLEANINGSTATE") { field(FRVL, "4") field(FVVL, "5") field(SXVL, "6") + field(SVVL, "7") field(ZRST, "NonCleaning") field(ONST, "Cleaning1") field(TWST, "Cleaning2") @@ -253,6 +254,7 @@ record(mbbo, "$(P)$(R)CLEANINGSTATE") { field(FRST, "Cleaning4") field(FVST, "Cleaning5") field(SXST, "Cleaning6") + field(SVST, "Manual") field(VAL, "0") } diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt index e306914..49e6b1e 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt @@ -52,6 +52,8 @@ short CLNST_Cleaning2 = 2; short CLNST_Cleaning3 = 3; short CLNST_Cleaning4 = 4; short CLNST_Cleaning5 = 5; +short CLNST_Cleaning6 = 6; +short CLNST_Manual = 7; short WSHTST_NonShoting = 0; short WSHTST_WaitTrg = 1; @@ -128,9 +130,9 @@ short CLEANINGSTATE; assign CLEANINGSTATE to "ISTTOK:central:CLEANINGSTATE"; monitor CLEANINGSTATE; -short CLEANINGMANMODE; -assign CLEANINGMANMODE to "ISTTOK:central:CLEANINGMANMODE"; -monitor CLEANINGMANMODE; +short CLEANING_AUTOMODE; +assign CLEANING_AUTOMODE to "ISTTOK:central:CLEANINGMANMODE"; +monitor CLEANING_AUTOMODE; short WSHOTINGSTATE; assign WSHOTINGSTATE to "ISTTOK:central:WSHOTINGSTATE"; @@ -529,7 +531,7 @@ ss PulseSequence { pvPut(IsttokOPSTATE); } when ((IsttokProcReq==STOP) && (CLEANINGSTATE == CLNST_NonCleaning)) { - strcpy(msg, "State to Idle From Clean"); + strcpy(msg, "State from Clean to Idle"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); } state Idle @@ -948,9 +950,19 @@ ss CleaningSequence{ pvPut(CLEANINGSTATE); errlogSevPrintf(NO_ALARM, "%s\n",msg); + strcpy(msg, "Entry Cleanning State Mach"); + pvPut(msg); + errlogSevPrintf(NO_ALARM, "%s\n",msg); } - when(delay(1.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when(delay(1.0) && CLEANING_AUTOMODE == 0 && IsttokOPSTATE == POS_Clean){ + strcpy(msg, "Entry on Manual Cleaning..."); + + CLEANINGSTATE = CLNST_Manual; + pvPut(CLEANINGSTATE); + } state CleaningManual + + when(delay(1.0) && CLEANING_AUTOMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Initiating Auto Cleaning..."); pvPut(msg); strcpy(msg, "GIS Valves OPEN"); @@ -965,6 +977,10 @@ ss CleaningSequence{ pvPut(CLEANINGSTATE); } state Cleaning1 } + state CleaningManual { + when (IsttokProcReq==STOP) { + } state NonCleaning + } state Cleaning1 { when (delay(1.0) && IsttokProcReq==STOP) { // Reversing Cleaning @@ -977,14 +993,14 @@ ss CleaningSequence{ pvPut(IsttokGasIS_Valves); } state NonCleaning - when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean ) { + when (delay(2.0) && CLEANING_AUTOMODE == 1 && IsttokOPSTATE == POS_Clean ) { strcpy(msg, "Filament ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokVVessel_Filament = PCF_RELAY_ON; pvPut(IsttokVVessel_Filament); - CLEANINGSTATE = CLNST_Cleaning2; - pvPut(CLEANINGSTATE); + CLEANINGSTATE = CLNST_Cleaning2; + pvPut(CLEANINGSTATE); } state Cleaning2 } state Cleaning2 { @@ -998,7 +1014,7 @@ ss CleaningSequence{ CLEANINGSTATE = CLNST_Cleaning1; pvPut(CLEANINGSTATE); } state Cleaning1 - when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean) { + when (delay(2.0) && CLEANING_AUTOMODE == 1 && IsttokOPSTATE == POS_Clean) { strcpy(msg, "Primary-CT ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); @@ -1018,7 +1034,7 @@ ss CleaningSequence{ CLEANINGSTATE = CLNST_Cleaning2; pvPut(CLEANINGSTATE); } state Cleaning2 - when(delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when(delay(2.0) && CLEANING_AUTOMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Toroidal-BK CLOSE"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); @@ -1039,7 +1055,7 @@ ss CleaningSequence{ CLEANINGSTATE = CLNST_Cleaning3; pvPut(CLEANINGSTATE); } state Cleaning3 - when (delay(2.0) && CLEANINGMANMODE == 1 && IsttokOPSTATE == POS_Clean){ + when (delay(2.0) && CLEANING_AUTOMODE == 1 && IsttokOPSTATE == POS_Clean){ strcpy(msg, "Toroidal-CT ON"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); diff --git a/epics/iocs/ISTTOKrpi/bin/linux-arm/ISTTOKrpi b/epics/iocs/ISTTOKrpi/bin/linux-arm/ISTTOKrpi index 78da428..ba5af3e 100755 Binary files a/epics/iocs/ISTTOKrpi/bin/linux-arm/ISTTOKrpi and b/epics/iocs/ISTTOKrpi/bin/linux-arm/ISTTOKrpi differ diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/envPaths b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/envPaths index 13171b5..1f6e65e 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/envPaths +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/envPaths @@ -7,4 +7,4 @@ epicsEnvSet("ASYN","/home/pi/Apps/epics7/support/asyn") epicsEnvSet("STREAM","/home/pi/Apps/epics7/support/StreamDevice") epicsEnvSet("AUTOSAVE","/home/pi/Apps/epics7/support/autosave") epicsEnvSet("DRVASYNI2C","/home/pi/Apps/epics7/support/drvAsynI2C") -epicsEnvSet("SNCSEQ","/home/pi/Apps/epics7/support/seq-2-2") +epicsEnvSet("SNCSEQ","/home/pi/Apps/epics7/support/seq-2.2.9") diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/save/iocISTTOKrpi.sav b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/save/iocISTTOKrpi.sav index da711ab..af51db7 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/save/iocISTTOKrpi.sav +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/save/iocISTTOKrpi.sav @@ -1,10 +1,10 @@ -# autosave R5.3 Automatically generated - DO NOT MODIFY - 220214-164146 +# autosave R5.3 Automatically generated - DO NOT MODIFY - 220216-181851 ISTTOK:central:PULSE-NUMBER.VAL 49468 ISTTOK:central:LogMessage.VAL ISTTOK:central:LASTOPSTATE.VAL 2 ISTTOK:central:OPREQ.VAL 1 ISTTOK:central:PROCESS-MODE.VAL 0 -ISTTOK:central:CLEANINGMANMODE.VAL 1 +ISTTOK:central:CLEANINGMANMODE.VAL 0 ISTTOK:central:Emergency-UserButton.VAL 0 ISTTOK:central:TMPump1-ManualValve.VAL 1 ISTTOK:central:Shot-TorPSCurrent 32 diff --git a/epics/iocs/RELEASE.local b/epics/iocs/RELEASE.local index 3bb333b..be97547 100644 --- a/epics/iocs/RELEASE.local +++ b/epics/iocs/RELEASE.local @@ -15,7 +15,8 @@ AUTOSAVE = $(SUPPORT)/autosave #in configure/RELEASE #STREAM_WORKAROUND = 1 DRVASYNI2C =$(SUPPORT)/drvAsynI2C -SNCSEQ=$(SUPPORT)/seq-2-2 +SNCSEQ=$(SUPPORT)/seq-2.2.9 +#SNCSEQ=$(SUPPORT)/seq-2-2 # # SEQ is required for testIPServer #SNCSEQ=$(SUPPORT)/seq-2-2-5