Files
ISTTOK/epics/iocs/ISTTOKrpi/ISTTOKrpiApp/Db/ISTTOKstates.db
Bernardo Carvalho 8ab9a8dda3 Added MARTe2 PVs
Signed-off-by: Bernardo Carvalho <bernardo.carvalho@tecnico.ulisboa.pt>
2023-12-19 17:37:12 +00:00

349 lines
8.0 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")
}
#### PVs for ATCA-MARTe2 operation
#record( mbbi, "$(P)$(R)MARTE-STATUS")
#field(DESC, "Get ATCA-MARTE2 State ")
# field(ZRVL, "0")
# field(ONVL, "1")
# field(ZRST, "IDLE")
# field(ONST, "RUN")
#field(VAL, "0")
record(mbbi, "$(P)$(R)MARTe2-Status")
{
field(DTYP, "Soft Channel")
field(ZRVL, "0")
field(ONVL, "1")
field(TWVL, "2")
field(ZRST, "IDLE")
field(ONST, "RUN")
field(TWST, "ERROR")
#field(VAL, "0")
}
record(mbbo, "$(P)$(R)MARTe2-Command")
{
field(DTYP, "Soft Channel")
field(ZRVL, "0")
field(ONVL, "1")
field(ZRST, "GOTOIDLE")
field(ONST, "GOTORUN")
field(VAL, "0")
}
record( longin, "$(P)$(R)MARTe2-Reset")
{
field(DTYP, "Soft Channel")
}