Files
ISTTOK/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db
Bernardo Carvalho b84e2c3cd2 Solving Idle State glitches
Signed-off-by: Bernardo Carvalho <bernardo.carvalho@tecnico.ulisboa.pt>
2023-12-15 15:42:17 +00:00

314 lines
7.4 KiB
Plaintext

# vim: sta:et:sw=4:ts=4:sts=4
#
# Project : ISTTOK slow Control
#
# File :
# Description : Records for ISTTOK Control
#
##
# Author : Bernardo Carvalho (IPFN-IST)
#
# Copyright (c) : (IPFN-IST)
# Created 3-Mar-2013
#
##
record(mbbo, "$(P)$(R)OPSTATE") {
field(DESC, "Multiple Pulse Sequence State")
field(ZRVL, "0")
field(ONVL, "1")
field(TWVL, "2")
field(THVL, "3")
field(FRVL, "4")
field(FVVL, "5")
field(SXVL, "6")
field(SVVL, "7")
field(EIVL, "8")
field(ZRST, "Stopped")
field(ONST, "Starting")
field(TWST, "Idle")
field(THST, "Clean")
field(FRST, "WaitShot")
field(FVST, "Stopping")
field(SXST, "Emergency")
field(SVST, "UPSEmergency")
field(EIST, "IdleLimbo")
field(VAL, "0")
field(FLNK, "$(P)$(R)OPCALCSTATE")
#field(PINI, "YES")
}
record(mbbo, "$(P)$(R)LASTOPSTATE") {
info(autosaveFields, "VAL")
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(SVVL, "7")
field(EIVL, "8")
field(ZRST, "Stopped")
field(ONST, "Starting")
field(TWST, "Idle")
field(THST, "Clean")
field(FRST, "WaitShot")
field(FVST, "Stopping")
field(SXST, "Emergency")
field(SVST, "UPSEmergency")
field(EIST, "IdleLimbo")
field(PINI, "YES")
# field(VAL, "0")
}
# record for bit leds
record(calc, "$(P)$(R)OPCALCSTATE") {
field(DESC, "Pulse Calculated State")
field(CALC,"2^A")
#field(SCAN,"1 second")
field(INPA,"$(P)$(R)OPSTATE.VAL NPP NMS")
}
record(calc, "$(P)$(R)STARTCALCSTATE") {
field(DESC, "Start Calculated State")
field(CALC,"2^A")
field(SCAN,"1 second")
field(INPA,"$(P)$(R)STARTINGSTATE.VAL PP NMS")
}
record(calc, "$(P)$(R)STOPPINGCALCSTATE") {
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")
field(CALC,"(2^(A+1))-1")
field(SCAN,"1 second")
field(INPA,"$(P)$(R)CLEANINGSTATE.VAL PP NMS")
}
record(calc, "$(P)$(R)WSHOTCALCSTATE") {
field(DESC, "WaitShot Calculated State")
field(CALC,"2^A")
field(SCAN,"1 second")
field(INPA,"$(P)$(R)WSHOTINGSTATE.VAL PP NMS")
}
#record(ai, "$(P)$(R)Temperature_0") {
# field(DESC, "ISTTOK Temperature 0 Calculated")
# field(EGU, "C")
# field(SCAN,"1 second")
#}
record(bo, "$(P)$(R)UPS-OnBattery") {
info(autosaveFields, "VAL STAT")
field(DESC, "Main APC UPS On Battery status")
field(VAL, "0")
field(PINI, "YES")
field(ZNAM, "OFF")
field(ONAM, "ON")
field(OSV, "MAJOR")
}
record(bo, "$(P)$(R)UPS-Shutdown") {
# info(autosaveFields, "VAL STAT")
field(DESC, "Main APC UPS Shutdown request")
field(VAL, "0")
field(ZNAM, "OFF")
field(ONAM, "ON")
field(OSV, "MAJOR")
field(PINI, "YES")
}
record(bo, "$(P)$(R)OPREQ") {
info(autosaveFields, "VAL")
field(DESC, "Pulse Sequence Start/Stop")
# field(VAL, "0")
field(PINI, "YES")
field(ZNAM, "STOP")
field(ONAM, "START")
}
record(bo, "$(P)$(R)CLEANINGMANMODE") {
info(autosaveFields, "VAL")
field(DESC, "Cleaning Manual/Auto")
info(autosaveFields, "VAL")
# field(VAL, "1")
field(ZNAM, "M")
field(ONAM, "A")
}
record(bo, "$(P)$(R)FSTriggerStart") {
field(DESC, "FireSignal Trigger Start")
field(VAL, "0")
field(PINI, "YES")
field(ZNAM, "STOP")
field(ONAM, "START")
}
record(bo, "$(P)$(R)PROCESS-MODE") {
info(autosaveFields, "VAL")
field(DESC, "Plasma Process Mode")
#field(VAL, "0")
#field(PINI, "YES")
field(ZNAM, "CLEAN")
field(ONAM, "SHOT")
}
record(bo, "$(P)$(R)PROCESS-REQ") {
field(DESC, "Plasma Process sub-states Start/Stop")
field(VAL, "0")
field(PINI, "YES")
field(ZNAM, "STOP")
field(ONAM, "START")
field(SCAN,"Passive")
field(FLNK, "$(P)$(R)PULSE-NUMBER")
}
record(bo, "$(P)$(R)AUTHORISATION") {
field(DESC, "Pulse Sequence Authorisation Start/Abort")
field(ZNAM, "ABORT")
field(ONAM, "START")
field(VAL, "0")
}
record(calc, "$(P)$(R)PULSE-NUMBER") {
info(autosaveFields, "VAL")
field(DESC, "Pulse Number")
field(INPA, "$(P)$(R)PROCESS-REQ NPP")
field(INPB, "$(P)$(R)PULSE-NUMBER")
field(INPC, "$(P)$(R)PROCESS-MODE NPP")
field(CALC, "(A=1)? B+C :B")
field(SCAN,"Passive")
# field(PINI, "YES")
}
record(calc, "$(P)$(R)COUNTDOWN") {
field(DESC, "Countdown Increment")
field(INPA,"$(P)$(R)COUNTDOWN")
field(DISA,"1")
#field(SCAN,"Passive")
field(SCAN,"1 second")
field(CALC,"A+1")
field(VAL, "160")
}
record(calc, "$(P)$(R)COUNTER") {
field(DESC, "0.1 s counter")
field(INPA, "$(P)$(R)COUNTER")
field(SCAN, ".1 second")
field(CALC, "A + .1")
}
record(stringin, "$(P)$(R)CurrentTime") {
field(DESC, "Current Date and Time of the IOC")
field(SCAN, "1 second")
field(DTYP, "Soft Timestamp")
#field(PINI, "YES")
field(INP, "@%d/%m/%Y %H:%M:%S")
}
record(stringout, "$(P)$(R)TraceMessage") {
field(DESC, "Trace Message from IOC")
field(VAL, "Trace mode ON")
}
record(stringout, "$(P)$(R)LogMessage") {
field(DESC, "Log Message ")
# field(VAL, "Trace mode ON")
}
record(mbbo, "$(P)$(R)STARTINGSTATE") {
field(DESC, "Starting State Sequence")
field(ZRVL, "0")
field(ONVL, "1")
field(TWVL, "2")
field(THVL, "3")
field(FRVL, "4")
field(FVVL, "5")
field(ZRST, "NonStarting")
field(ONST, "Starting1")
field(TWST, "WaitManV")
field(THST, "WaitPress")
field(FRST, "WaitTMP")
field(FVST, "StartEnd")
field(VAL, "0")
}
record(mbbo, "$(P)$(R)CLEANINGSTATE") {
field(DESC, "Cleaning State Sequence")
field(ZRVL, "0")
field(ONVL, "1")
field(TWVL, "2")
field(THVL, "3")
field(FRVL, "4")
field(FVVL, "5")
field(SXVL, "6")
field(SVVL, "7")
field(ZRST, "NonCleaning")
field(ONST, "Cleaning1")
field(TWST, "Cleaning2")
field(THST, "Cleaning3")
field(FRST, "Cleaning4")
field(FVST, "Cleaning5")
field(SXST, "Cleaning6")
field(SVST, "Manual")
field(VAL, "0")
}
record(mbbo, "$(P)$(R)WSHOTINGSTATE") {
field(DESC, "Plasma Shot State Sequence")
field(ZRVL, "0")
field(ONVL, "1")
field(TWVL, "2")
field(THVL, "3")
field(FRVL, "4")
field(FVVL, "5")
field(SXVL, "6")
field(SVVL, "7")
field(EIVL, "8")
field(NIVL, "9")
field(TEVL, "10")
field(ELVL, "11")
field(TVVL, "12")
field(TTVL, "13")
field(ZRST, "NonShooting")
field(ONST, "ShotWTrig")
field(TWST, "Shooting2")
field(THST, "Shooting3")
field(FRST, "Shooting4")
field(FVST, "Shooting5")
field(SXST, "Shooting6")
field(SVST, "Shooting7")
field(EIST, "Shooting8")
field(NIST, "Shooting9")
field(TEST, "Shooting10")
field(ELST, "Shooting11")
field(TVST, "Shooting12")
field(TTST, "ShotEnd")
field(VAL, "0")
}
record(mbbo, "$(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, "NonStopping")
field(ONST, "WaitTMP")
field(TWST, "WaitManV")
field(THST, "Stopping3")
field(FRST, "StoppingEnd")
field(FVST, "Stopping5")
field(VAL, "0")
}