diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db index 236e9d0..d3d5b56 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db @@ -1,7 +1,7 @@ # # Project : ISTTOK slow Control # -# File : $Id: ISTTOKcontrol.db 4709 2013-05-03 13:44:29Z bernardo $ +# File : # Description : Records for ISTTOK Control # ## @@ -10,10 +10,6 @@ # Copyright (c) : (IPFN-IST) # Created 3-Mar-2013 # -# SVN keywords -# $Date: 2013-05-03 14:44:29 +0100 (Fri, 03 May 2013) $ -# $Revision: 4709 $ -# $URL: http://metis.ipfn.ist.utl.pt/svn/cdaq/ISTTOK/Software/EPICS/ISTTOKcontrol/trunk/ISTTOKApp/Db/ISTTOKcontrol.db $ ## record(mbbi, "$(P)$(R)OPSTATE") { @@ -34,6 +30,24 @@ record(mbbi, "$(P)$(R)OPSTATE") { field(SXST, "Emergency") field(VAL, "0") } +record(mbbo, "$(P)$(R)LASTOPSTATE") { + field(DESC, "Pulse Sequence Last Saved State") + field(ZRVL, "0") + field(ONVL, "1") + field(TWVL, "2") + field(THVL, "3") + field(FRVL, "4") + field(FVVL, "5") + field(SXVL, "6") + field(ZRST, "Stopped") + field(ONST, "Starting") + field(TWST, "Process") + field(THST, "Clean") + field(FRST, "WaitShot") + field(FVST, "Stopping") + field(SXST, "Emergency") +# field(VAL, "0") +} record(calc, "$(P)$(R)OPCALCSTATE") { field(DESC, "Pulse Calculated State") diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKvacuumPumps.db b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKvacuumPumps.db index aea82bc..10d7b87 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKvacuumPumps.db +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKvacuumPumps.db @@ -14,6 +14,7 @@ record(bo, "$(P)$(R)TMPump1-ControllerOn" ) { field(ONAM, "Pulse" ) field(HIGH, "2.5") field(FLNK, "$(P)$(R)TMPump1-ControllerOnInv" ) + field(VAL,"0") # field( FLNK, "$(P)$(R)TMPControllerOnInv" ) } @@ -33,6 +34,7 @@ record(bo, "$(P)$(R)TMPump1-ControllerOff" ) { field(HIGH, "2.5") #field( FLNK, "$(P)$(R)TMPControllerOffInv" ) field(FLNK, "$(P)$(R)TMPump1-ControllerOffInv" ) + field(VAL,"0") } record(calcout, "$(P)$(R)TMPump1-ControllerOffInv") { @@ -61,6 +63,7 @@ record(bo, "$(P)$(R)TMPump1-MotorOff") { field( ONAM, "Pulse") field( HIGH, "2.5") field( FLNK, "$(P)$(R)TMPump1-MotorOffInv") + field(VAL,"0") } record(calcout, "$(P)$(R)TMPump1-MotorOffInv") { @@ -112,7 +115,7 @@ record(bi , "$(P)$(R)TMPump1-NormalOperation" ) { #record(bi , "$(P)$(R)Turbo_NormalOperation" ) { field( INP, "$(P)$(R)PCF8574:56:REGISTER:READ.B7 NPP NMS") field( ZNAM, "ON" ) - field( ONAM, "OFF" ) + field(ONAM, "OFF" ) field(OSV,"MINOR") } @@ -128,6 +131,7 @@ record(bi , "$(P)$(R)TMPump1-NormalOperation" ) { record(fanout, "$(P)$(R)PCF8574:57:REGISTER:READ:FNOUT"){ field(LNK1, "$(P)$(R)TMPump2-Emergency") field(LNK2, "$(P)$(R)TMPump2-Acceleration") + field(LNK3, "$(P)$(R)TTSystem-tzero") } record(bi , "$(P)$(R)TMPump2-Emergency") { field(DESC," TMP2 – Falha ") @@ -143,11 +147,24 @@ record(bi , "$(P)$(R)TMPump2-Acceleration") { field( ZNAM, "ON" ) field( ONAM, "OFF" ) } +#################################### +# TIMING TRIGGER ON/OFF # +#################################### +record(bi , "$(P)$(R)TTSystem-tzero" ) { + field(DESC,"Trigger control 60s before shot") +# record(bi , "$(P)$(R)TimingTriggerSignal" ) { + field(INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B7") + field(SCAN, "1 second" ) + field(ZNAM, "OFF" ) + field(ONAM, "ON" ) +} ############################### ### TMP2 Controller Outputs ### ############################### -record(bo, "$(P)$(R)TMP2MotorOnOff" ) { +record(bo, "$(P)$(R)TMPump2-Motor" ) { + field(DESC," Motor On/Off ") +# record(bo, "$(P)$(R)TMP2MotorOnOff" ) { field( OUT, "$(P)$(R)PCF8574:57:REGISTER.B2 PP MS") field( ZNAM, "ON") field( ONAM, "OFF") @@ -157,10 +174,12 @@ record(bo, "$(P)$(R)TMP2MotorOnOff" ) { # BUZZER ON/OFF # ############################## record(bo, "$(P)$(R)Buzzer" ) { - field( ZNAM, "Off" ) - field( ONAM, "Pulse" ) - field( HIGH, "2.5") - field( FLNK, "$(P)$(R)BuzzerInv" ) + field(DESC," Lab Buzzer ") + field(ZNAM, "Off" ) + field(ONAM, "Pulse" ) + field(HIGH, "2.5") + field(FLNK, "$(P)$(R)BuzzerInv" ) + field(VAL,"0") } record(calcout, "$(P)$(R)BuzzerInv" ) { field( INPA, "$(P)$(R)Buzzer NPP MS" ) @@ -172,11 +191,11 @@ record(calcout, "$(P)$(R)BuzzerInv" ) { ############################## # EMERGENCY MODE # ############################## -record( bo, "$(P)$(R)EmergencyButton" ) { - field(DESC," Botao fisico que executa a soft Emergency ") - field( OUT, "$(P)$(R)PCF8574:57:REGISTER.B4 PP" ) - field( ZNAM, "On" ) - field( ONAM, "Off") +record(bo, "$(P)$(R)EmergencyButton" ) { + field(DESC,"Soft Emergency Button") + field(OUT, "$(P)$(R)PCF8574:57:REGISTER.B4 PP" ) + field(ZNAM, "On" ) + field(ONAM, "Off") } ############ @@ -185,15 +204,6 @@ record( bo, "$(P)$(R)EmergencyButton" ) { #$(P)$(R)PCF8574:57:REGISTER:READ.B5 #$(P)$(R)PCF8574:57:REGISTER:READ.B6 -#################################### -# TIMING TRIGGER ON/OFF # -#################################### -record(bi , "$(P)$(R)TimingTriggerSignal" ) { - field( INP, "$(P)$(R)PCF8574:57:REGISTER:READ.B7") - field( SCAN, "1 second" ) - field( ZNAM, "OFF" ) - field( ONAM, "ON" ) -} ############### ############### @@ -207,31 +217,34 @@ record(bi , "$(P)$(R)TimingTriggerSignal" ) { record( bo, "$(P)$(R)RPump1-Motor" ) { # field(DESC," Liga a alimentação da bomba rotatória 1 ") #record( bo, "$(P)$(R)RotatoryPump" ) { - field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B0 PP" ) - field( ZNAM, "On" ) - field( ONAM, "Off" ) + field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B0 PP" ) + field(ZNAM, "On" ) + field(ONAM, "Off" ) + field(VAL,"1") } ############################# # ROTARY1 VALVE # ############################# record( bo, "$(P)$(R)RPump1-Valve" ) { - field(DESC," Abre a valvula da bomba rotatoria 1 ") + field(DESC,"Abre a valvula da bomba rotatoria 1 ") # record( bo, "$(P)$(R)RotatoryValve" ) { field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B1 PP" ) field( ZNAM, "Open" ) field( ONAM, "Closed" ) + field(VAL,"1") } ############################# # ROTARY2 PUMP # ############################# record( bo, "$(P)$(R)RPump2-Motor" ) { - field(DESC," Liga a alimentacao da bomba rotatoria 2 ") + field(DESC,"Power On Rotatory Pump 2") #record( bo, "$(P)$(R)RotatoryPump2" ) { field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B2 PP" ) field( ZNAM, "On" ) field( ONAM, "Off" ) + field(VAL,"1") } ############################# @@ -240,20 +253,23 @@ record( bo, "$(P)$(R)RPump2-Motor" ) { record( bo, "$(P)$(R)RPump2-Valve" ) { field(DESC," Abre a valvula da bomba rotatoria 2 ") #record( bo, "$(P)$(R)RotatoryValve2" ) { - field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B3 PP" ) - field( ZNAM, "Open" ) - field( ONAM, "Closed" ) + field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B3 PP" ) + field(ZNAM, "Open" ) + field(ONAM, "Closed" ) + field(VAL,"1") } ################################ # FILAMENT ON/OFF # ################################ record(bo, "$(P)$(R)VVessel-Filament" ) { - field(DESC," Filamento dentro do TOK para pre ionizar a câmara") + field(DESC,"Vacuum Vessel Filament power") # record(bo, "$(P)$(R)FilamentOnOff" ) { field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B4 PP" ) field( ZNAM, "On" ) field( ONAM, "Off" ) + field(VAL,"1") + field(PINI,"YES") } ############################## @@ -262,9 +278,10 @@ record(bo, "$(P)$(R)VVessel-Filament" ) { record(bo, "$(P)$(R)Lab-WarningLight" ) { field(DESC," Luzes de sinalização, 220V ") # record(bo, "$(P)$(R)LightsOnOff" ) { - field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B5 PP" ) - field( ZNAM, "On" ) - field( ONAM, "Off" ) + field(OUT, "$(P)$(R)PCF8574:60:REGISTER.B5 PP" ) + field(ZNAM, "On" ) + field(ONAM, "Off" ) + field(VAL,"1") } ############ @@ -281,6 +298,7 @@ record(bo, "$(P)$(R)Clean-TorContactor" ) { field( OUT, "$(P)$(R)PCF8574:60:REGISTER.B7 PP" ) field( ZNAM, "On" ) field( ONAM, "Off" ) + field(VAL,"1") } ############### @@ -298,6 +316,7 @@ record(bo, "$(P)$(R)Clean-TorPneuBreaker" ) { field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B0 PP" ) field( ZNAM, "On" ) field( ONAM, "Off" ) + field(VAL,"1") } record(bo, "$(P)$(R)Shot-TorPSDisable" ) { @@ -306,6 +325,7 @@ record(bo, "$(P)$(R)Shot-TorPSDisable" ) { field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B1 PP" ) field( ZNAM, "Off" ) field( ONAM, "On" ) + field(VAL,"1") } record(bo, "$(P)$(R)Shot-TorPSTrigger" ) { @@ -315,6 +335,7 @@ record(bo, "$(P)$(R)Shot-TorPSTrigger" ) { field( ONAM, "Pulse" ) field( HIGH, "2.5") field( FLNK, "$(P)$(R)Shot-TorPSTriggerInv" ) + field(VAL,"0") # field( FLNK, "$(P)$(R)ToroidalShotTriggerOnOffInv" ) } record(calcout, "$(P)$(R)Shot-TorPSTriggerInv" ) { @@ -333,9 +354,10 @@ record(calcout, "$(P)$(R)Shot-TorPSTriggerInv" ) { record(bo, "$(P)$(R)CapBank-Charge" ) { ## field(DESC," Contactor 220V do circuito de carga do banco de condensadores p/ SHOT (ELCO) ") #record(bo, "$(P)$(R)CapBankChargeOnOff" ) { - field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B3 PP" ) - field( ZNAM, "On" ) - field( ONAM, "Off" ) + field(OUT, "$(P)$(R)PCF8574:61:REGISTER.B3 PP" ) + field(ZNAM, "On" ) + field(ONAM, "Off" ) + field(VAL,"1") } ######################################## @@ -344,9 +366,10 @@ record(bo, "$(P)$(R)CapBank-Charge" ) { record(bo, "$(P)$(R)Clean-PrimContactor" ) { # field(DESC," Contactor 220V do para o primário das descargas de limpeza ") # record(bo, "$(P)$(R)PrimaryCleanContactorOnOff" ) { - field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B4 PP MS" ) - field( ZNAM, "On" ) - field( ONAM, "Off" ) + field(OUT, "$(P)$(R)PCF8574:61:REGISTER.B4 PP MS" ) + field(ZNAM, "On" ) + field(ONAM, "Off" ) + field(VAL,"1") } #################################### @@ -358,6 +381,7 @@ record(bo, "$(P)$(R)Clean-PrimPneuBreaker"){ field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B5 PP" ) field( ZNAM, "On") field( ONAM, "Off") + field(VAL,"1") } ################################## @@ -369,34 +393,38 @@ record(bo, "$(P)$(R)GasIS-Valves" ) { field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B6 PP" ) field( ZNAM, "On" ) field( ONAM, "Off" ) + field(VAL,"1") } ########################################## # CAP BANK DISCHARGE ON/OFF # ########################################## record(bo, "$(P)$(R)CapBank-Discharge" ) { - field(DESC," Liga o circuito de descarga do ELCO ") + field(DESC," Liga o circuito de descarga do ELCO ") # record(bo, "$(P)$(R)CapBankDischargeOnOff" ) { - field( OUT, "$(P)$(R)PCF8574:61:REGISTER.B7 PP" ) - field( ZNAM, "On" ) - field( ONAM, "Off" ) + field(OUT, "$(P)$(R)PCF8574:61:REGISTER.B7 PP" ) + field(ZNAM, "On" ) + field(ONAM, "Off" ) + field(VAL,"1") } ######################### ###Pressure Conditions### ######################### -record(ao,"$(P)$(R)Pressure_PrimaryCondition"){ - field(VAL,"5.0e-3") - field(PREC,"3") - field(EGU,"mBar") -} -record(ao,"$(P)$(R)Pressure_Primary2Condition"){ - field(VAL,"5.0e-3") - field(PREC,"3") - field(EGU,"mBar") -} +#record(ao,"$(P)$(R)Pressure_PrimaryCondition"){ +# field(VAL,"5.0e-3") +# field(PREC,"3") +# field(EGU,"mBar") +#} +#record(ao,"$(P)$(R)Pressure_Primary2Condition"){ +# field(VAL,"5.0e-3") +# field(PREC,"3") +# field(EGU,"mBar") +#} -record(ai,"$(P)$(R)Bypass_Condition"){ +record(bo,"$(P)$(R)Primary-PressureCondition"){ + field(ZNAM, "OFF" ) + field(ONAM, "ON" ) field(VAL,"0") } diff --git a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt index a3a4f12..cc79515 100644 --- a/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt +++ b/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/src/IsttokSeqExec.stt @@ -79,6 +79,10 @@ short IsttokOPSTATE; assign IsttokOPSTATE to "ISTTOK:central:OPSTATE"; monitor IsttokOPSTATE; +short IsttokLastOPSTATE; +assign IsttokLastOPSTATE to "ISTTOK:central:LASTOPSTATE"; +monitor IsttokLastOPSTATE; + short IsttokOPREQ; assign IsttokOPREQ to "ISTTOK:central:OPREQ"; monitor IsttokOPREQ; @@ -101,7 +105,7 @@ monitor IsttokSTOPPINGSTATE; short IsttokCLEANINGSTATE; assign IsttokCLEANINGSTATE to "ISTTOK:central:CLEANINGSTATE"; -monitor IsttokCLEANINGSTATE; +/* monitor IsttokCLEANINGSTATE;*/ short IsttokCLEANINGMANMODE; assign IsttokCLEANINGMANMODE to "ISTTOK:central:CLEANINGMANMODE"; @@ -109,43 +113,43 @@ monitor IsttokCLEANINGMANMODE; short IsttokWSHOTINGSTATE; assign IsttokWSHOTINGSTATE to "ISTTOK:central:WSHOTINGSTATE"; -monitor IsttokWSHOTINGSTATE; +/* monitor IsttokWSHOTINGSTATE; */ short IsttokRPump1_Motor; assign IsttokRPump1_Motor to "ISTTOK:central:RPump1-Motor"; -monitor IsttokRPump1_Motor; +/* monitor IsttokRPump1_Motor; */ short IsttokRPump1_Valve; assign IsttokRPump1_Valve to "ISTTOK:central:RPump1-Valve"; -monitor IsttokRPump1_Valve; +/*monitor IsttokRPump1_Valve;*/ short IsttokRPump2_Motor; assign IsttokRPump2_Motor to "ISTTOK:central:RPump2-Motor"; -monitor IsttokRPump2_Motor; +/* monitor IsttokRPump2_Motor; */ short IsttokRPump2_Valve; assign IsttokRPump2_Valve to "ISTTOK:central:RPump2-Valve"; -monitor IsttokRPump2_Valve; +/* monitor IsttokRPump2_Valve; */ short IsttokTMPump1_ControllerOff; assign IsttokTMPump1_ControllerOff to "ISTTOK:central:TMPump1-ControllerOff"; -monitor IsttokTMPump1_ControllerOff; +/* monitor IsttokTMPump1_ControllerOff; */ short IsttokTMPump1_ControllerOn; assign IsttokTMPump1_ControllerOn to "ISTTOK:central:TMPump1-ControllerOn"; -monitor IsttokTMPump1_ControllerOn; +/* monitor IsttokTMPump1_ControllerOn; */ short IsttokTMPump1_MotorOff; assign IsttokTMPump1_MotorOff to "ISTTOK:central:TMPump1-MotorOff"; -monitor IsttokTMPump1_MotorOff; +/* monitor IsttokTMPump1_MotorOff; */ short IsttokTMPump1_MotorOn; assign IsttokTMPump1_MotorOn to "ISTTOK:central:TMPump1-MotorOn"; -monitor IsttokTMPump1_MotorOn; +/* monitor IsttokTMPump1_MotorOn; */ short IsttokTMPump2_Motor; assign IsttokTMPump2_Motor to "ISTTOK:central:TMPump2-Motor"; -monitor IsttokTMPump2_Motor; +/* monitor IsttokTMPump2_Motor; */ short IsttokTMPump1_NormalOperation; assign IsttokTMPump1_NormalOperation to "ISTTOK:central:TMPump1-NormalOperation"; @@ -177,49 +181,50 @@ float IsttokRPump2_Pressure; assign IsttokRPump2_Pressure to "ISTTOK:central:RPump2-Pressure"; monitor IsttokRPump2_Pressure; -float IsttokRPump1_PressureLowLimit; +/* float IsttokRPump1_PressureLowLimit; assign IsttokRPump1_PressureLowLimit to "ISTTOK:central:RPump1-PressureLowLimit"; monitor IsttokRPump1_PressureLowLimit; float IsttokRPump2_PressureLowLimit; assign IsttokRPump2_PressureLowLimit to "ISTTOK:central:RPump2-PressureLowLimit"; monitor IsttokRPump2_PressureLowLimit; - +*/ + short IsttokPrimary_PressureCondition; assign IsttokPrimary_PressureCondition to "ISTTOK:central:Primary-PressureCondition"; monitor IsttokPrimary_PressureCondition; short IsttokShotBuzzer; assign IsttokShotBuzzer to "ISTTOK:central:Buzzer"; -monitor IsttokShotBuzzer; +/* monitor IsttokShotBuzzer; */ short IsttokShotLab_WarningLight; assign IsttokShotLab_WarningLight to "ISTTOK:central:Lab-WarningLight"; -monitor IsttokShotLab_WarningLight; +/* monitor IsttokShotLab_WarningLight; */ short IsttokShotGasIS_Valves; assign IsttokShotGasIS_Valves to "ISTTOK:central:GasIS-Valves"; -monitor IsttokShotGasIS_Valves; +/* monitor IsttokShotGasIS_Valves; */ short IsttokShotVVessel_Filament; assign IsttokShotVVessel_Filament to "ISTTOK:central:VVessel-Filament"; -monitor IsttokShotVVessel_Filament; +/* monitor IsttokShotVVessel_Filament; */ short IsttokShotCapBank_Charge; assign IsttokShotCapBank_Charge to "ISTTOK:central:CapBank-Charge"; -monitor IsttokShotCapBank_Charge; +/* monitor IsttokShotCapBank_Charge; */ short IsttokShotCapBank_Discharge; assign IsttokShotCapBank_Discharge to "ISTTOK:central:CapBank-Discharge"; -monitor IsttokShotCapBank_Discharge; +/* monitor IsttokShotCapBank_Discharge; */ short IsttokShotClean_TorContactor; assign IsttokShotClean_TorContactor to "ISTTOK:central:Clean-TorContactor"; -monitor IsttokShotClean_TorContactor; +/* monitor IsttokShotClean_TorContactor; */ short IsttokShotClean_TorPneuBreaker; assign IsttokShotClean_TorPneuBreaker to "ISTTOK:central:Clean-TorPneuBreaker"; -monitor IsttokShotClean_TorPneuBreaker; +/* monitor IsttokShotClean_TorPneuBreaker; */ short IsttokShotShot_TorPSTrigger; assign IsttokShotShot_TorPSTrigger to "ISTTOK:central:Shot-TorPSTrigger"; @@ -227,23 +232,23 @@ monitor IsttokShotShot_TorPSTrigger; short IsttokShotShot_TorPSDisable; assign IsttokShotShot_TorPSDisable to "ISTTOK:central:Shot-TorPSDisable"; -monitor IsttokShotShot_TorPSDisable; +/* monitor IsttokShotShot_TorPSDisable; */ short IsttokShotClean_PrimContactor; assign IsttokShotClean_PrimContactor to "ISTTOK:central:Clean-PrimContactor"; -monitor IsttokShotClean_PrimContactor; +/* monitor IsttokShotClean_PrimContactor; */ short IsttokShotClean_PrimPneuBreaker; assign IsttokShotClean_PrimPneuBreaker to "ISTTOK:central:Clean-PrimPneuBreaker"; -monitor IsttokShotClean_PrimPneuBreaker; +/* monitor IsttokShotClean_PrimPneuBreaker; */ short IsttokShotCountdown; assign IsttokShotCountdown to "ISTTOK:central:COUNTDOWN"; -monitor IsttokShotCountdown; +/* monitor IsttokShotCountdown; */ -string IsttokShotCountdownStart; -assign IsttokShotCountdownStart to "ISTTOK:central:COUNTDOWN.SCAN"; -monitor IsttokShotCountdownStart; +string IsttokShotCountdownScan; +assign IsttokShotCountdownScan to "ISTTOK:central:COUNTDOWN.SCAN"; +/* monitor IsttokShotCountdownStart; */ short IsttokEmergencyButton; assign IsttokEmergencyButton to "ISTTOK:central:EmergencyButton"; @@ -331,8 +336,8 @@ ss PulseSequence { IsttokTMPump1_MotorOn = PCF_RELAY_ON; pvPut(IsttokTMPump1_MotorOn); - // CHECK PRIMARY PRESSURES AND PREVENT STARTING IF REQUIRED - if( (IsttokRPump1_Pressure >= IsttokRPump1_PressureLowLimit) && (IsttokRPump2_Pressure >= IsttokRPump2_PressureLowLimit) ){ + // CHECK PRIMARY PRESSURES AND PREVENT STARTING IF REQUIRED TODO: Unfold ifs + if( (pvStatus(IsttokRPump1_Pressure) != pvStatOK) && (pvStatus(IsttokRPump1_Pressure) != pvStatOK)) { IsttokOPREQ = STOP; pvPut(IsttokOPREQ); } @@ -831,25 +836,26 @@ ss StartingSequence { IsttokSTARTINGSTATE = STRST_NonStarting; pvPut(IsttokSTARTINGSTATE); } state NonStarting - when (((IsttokRPump1_Pressure < IsttokRPump1_PressureLowLimit) && (IsttokRPump2_Pressure < IsttokRPump2_PressureLowLimit)) ) { + 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); - if(IsttokRPump1_Pressure < IsttokRPump1_PressureLowLimit){ +// if(IsttokRPump1_Pressure < IsttokRPump1_PressureLowLimit){ strcpy(msg, "TMP1 MotorOn ON" ); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokTMPump1_MotorOn = ON; pvPut(IsttokTMPump1_MotorOn); - } - if(IsttokRPump2_Pressure < IsttokRPump2_PressureLowLimit){ +// } +// if(IsttokRPump2_Pressure < IsttokRPump2_PressureLowLimit){ strcpy(msg, "TMP2 MotorOnOff ON" ); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokTMPump2_Motor = ON; pvPut(IsttokTMPump2_Motor); - } +// } if(IsttokTMPump1_NormalOperation == PCF_INPUT_ON){ sprintf(tmp1_stat, "ON"); @@ -1129,8 +1135,8 @@ ss ShotingSequence { errlogSevPrintf(NO_ALARM, "%s\n",msg); IsttokWSHOTINGSTATE = WSHOT_NonShoting; pvPut(IsttokWSHOTINGSTATE); - strcpy(IsttokShotCountdownStart, "Passive"); - pvPut(IsttokShotCountdownStart); + strcpy(IsttokShotCountdownScan, "Passive"); + pvPut(IsttokShotCountdownScan); IsttokShotCountdown = 160; pvPut(IsttokShotCountdown); } @@ -1139,8 +1145,8 @@ ss ShotingSequence { pvPut(msg); IsttokShotCountdown = -70; pvPut(IsttokShotCountdown); - strcpy(IsttokShotCountdownStart, "1 second"); - pvPut(IsttokShotCountdownStart); + strcpy(IsttokShotCountdownScan, "1 second"); + pvPut(IsttokShotCountdownScan); } state Shoting0 } state Shoting0 { @@ -1382,8 +1388,8 @@ ss ShotingSequence { strcpy(msg, "Terminated"); pvPut(msg); errlogSevPrintf(NO_ALARM, "%s\n", msg); - strcpy(IsttokShotCountdownStart, "Passive"); - pvPut(IsttokShotCountdownStart); + strcpy(IsttokShotCountdownScan, "Passive"); + pvPut(IsttokShotCountdownScan); IsttokShotCountdown = 160; pvPut(IsttokShotCountdown); } state NonShoting diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req index 1957892..616256e 100644 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/iocISTTOKrpi.req @@ -3,22 +3,21 @@ ISTTOK:central:PROCESS-MODE.VAL ISTTOK:central:TMPump1-ManualValve.VAL +ISTTOK:central:LASTOPSTATE.VAL ISTTOK:central:OPREQ ISTTOK:central:PROCESS-MODE.VAL ISTTOK:central:PROCESS-REQ.VAL -ISTTOK:central:STARTINGSTATE.VAL -ISTTOK:central:STOPPINGSTATE.VAL -ISTTOK:central:CLEANINGSTATE.VAL +#ISTTOK:central:STARTINGSTATE.VAL +#ISTTOK:central:STOPPINGSTATE.VAL +#ISTTOK:central:CLEANINGSTATE.VAL ISTTOK:central:CLEANINGMANMODE.VAL -#ISTTOK:central:CLEANINGINOUTSTATE.VAL -#ISTTOK:central:CLEANINGINOUTSTATE0.VAL -#ISTTOK:central:CLEANINGINOUTSTATE1.VAL -#ISTTOK:central:CLEANINGINOUTSTATE2.VAL -#ISTTOK:central:CLEANINGINOUTSTATE3.VAL -#ISTTOK:central:CLEANINGINOUTSTATE4.VAL -#ISTTOK:central:CLEANINGINOUTSTATE5.VAL -ISTTOK:central:WSHOTINGSTATE.VAL +#ISTTOK:central:WSHOTINGSTATE.VAL -ISTTOK:central:Pressure_PrimaryCondition.VAL -ISTTOK:central:Pressure_Primary2Condition.VAL +#ISTTOK:central:Pressure_PrimaryCondition.VAL +#ISTTOK:central:Pressure_Primary2Condition.VAL ISTTOK:central:EmergencyButton.VAL +ISTTOK:central:RPump1-Pressure.HIGH +ISTTOK:central:RPump1-Pressure.HIHI +ISTTOK:central:RPump2-Pressure.HIGH +ISTTOK:central:RPump2-Pressure.HIHI + diff --git a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd index d91642d..eb1cd98 100755 --- a/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd +++ b/epics/iocs/ISTTOKrpi/iocBoot/iocISTTOKrpi/st.cmd @@ -45,12 +45,11 @@ dbLoadRecords("db/ISTTOKpfeiffer.db","P=ISTTOK:,R=central:,bus=RS0") save_restoreSet_status_prefix("$(IOC):") set_requestfile_path("$(SAVE_DIR)") -set_savefile_path("$(SAVE_DIR)") +set_savefile_path("$(SAVE_DIR)/save") save_restoreSet_NumSeqFiles(3) save_restoreSet_SeqPeriodInSeconds(600) set_pass1_restoreFile("$(IOC).sav") - cd "${TOP}/iocBoot/${IOC}" asSetFilename("${TOP}/iocBoot/${IOC}/access_security.acf") @@ -64,4 +63,5 @@ iocInit create_monitor_set("$(IOC).req", 30) ## Start any sequence programs -seq IsttokSeqExec, "unit=ISTTOK" +seq IsttokSeqExec +#, "unit=ISTTOK"