IOCINFRAApp/Db/TPG26x.db
changeset 0 77d8eafe2a07
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/IOCINFRAApp/Db/TPG26x.db	Thu Mar 07 09:23:26 2019 +0100
@@ -0,0 +1,333 @@
+record(stringin, "$(P)Reset") {
+  field(DTYP, "stream")
+  field(INP, "@TPG26x.proto reset $(PORT)")
+  field(PINI,"YES")
+}
+
+record(bo, "$(P)DISABLE") 
+{
+    field(DESC, "Disable comms")
+    field(PINI, "YES")
+    field(VAL, "$(DISABLE=0)")
+    field(OMSL, "supervisory")
+    field(ZNAM, "COMMS ENABLED")
+    field(ONAM, "COMMS DISABLED")
+}
+
+# This record reads both pressure and errors
+record(ai,"$(P)1:RAW_PRES")
+{
+	field(DESC, "Pressure reading from gauge 1 no error")
+	field(SCAN, "1 second")
+	field(DTYP, "stream")
+	field(INP,  "@TPG26x.proto pres($(P),1:ERROR,2:ERROR,2:RAW_PRES) $(PORT)")
+	field(PINI, "YES")
+	field(PREC, "4")
+	field(SIML, "$(P)SIM")
+	field(SIOL, "$(P)SIM:1:PRESSURE")
+	field(SDIS, "$(P)DISABLE")
+	field(FLNK, "$(P)ACTIVITY")
+	field(VAL, 0)
+	info(archive, "VAL")
+}
+
+record(mbbi,"$(P)1:ERROR")
+{
+	field(DESC, "Error from the Gauge 1")
+	field(SCAN, "Passive")
+	field(ZRST, "No Error")
+	field(ZRSV, "NO_ALARM")
+	field(ZRVL, 0)
+	field(ONST, "Underrange")
+	field(ONSV, "MINOR")
+	field(ONVL, 1)
+	field(TWST, "Overrange")
+	field(TWSV, "MINOR")
+	field(TWVL, 2)
+	field(THST, "Sensor error")
+	field(THSV, "MAJOR")
+	field(THVL, 3)
+	field(FRST, "Sensor off")
+	field(FRSV, "MAJOR")
+	field(FRVL, 4)
+	field(FVST, "No Sensor")
+	field(FVSV, "MAJOR")
+	field(FVVL, 5)
+	field(SXST, "Identification Error")
+	field(SXSV, "MAJOR")
+	field(SXVL, 6)
+	field(UNSV, "MAJOR")
+	field(PINI, "YES")
+	field(VAL, 0)    
+	field(SIML, "$(P)SIM")
+	field(SIOL, "$(P)SIM:1:ERROR")
+	info(archive, "VAL")
+	info(INTEREST, "MEDIUM")
+}
+
+# This record is set from 1:RAW_PRES
+record(ai,"$(P)2:RAW_PRES")
+{
+	field(DESC, "Pressure reading from gauge 2 no error")
+	field(SCAN, "Passive")
+	field(PREC, "4")
+	field(SIML, "$(P)SIM")
+	field(SIOL, "$(P)SIM:2:PRESSURE")
+	field(PINI, "YES")
+	field(VAL, 0)
+	info(archive, "VAL")
+}
+
+# This record is set from 1:RAW_PRES
+record(mbbi,"$(P)2:ERROR")
+{
+	field(DESC, "Error from the Gauge 2")
+	field(SCAN, "Passive")
+	field(ZRST, "No Error")
+	field(ZRSV, "NO_ALARM")
+	field(ZRVL, 0)
+	field(ONST, "Underrange")
+	field(ONSV, "MINOR")
+	field(ONVL, 1)
+	field(TWST, "Overrange")
+	field(TWSV, "MINOR")
+	field(TWVL, 2)
+	field(THST, "Sensor error")
+	field(THSV, "MAJOR")
+	field(THVL, 3)
+	field(FRST, "Sensor off")
+	field(FRSV, "MAJOR")
+	field(FRVL, 4)
+	field(FVST, "No Sensor")
+	field(FVSV, "MAJOR")
+	field(FVVL, 5)
+	field(SXST, "Identification Error")
+	field(SXSV, "MAJOR")
+	field(SXVL, 6)
+	field(SVSV, "MAJOR")
+	field(SVVL, 7)
+	field(EISV, "MAJOR")
+	field(EIVL, 8)
+	field(NISV, "MAJOR")
+	field(NIVL, 9)
+	field(TESV, "MAJOR")
+	field(TEVL, 10)
+	field(ELSV, "MAJOR")
+	field(ELVL, 11)
+	field(TVSV, "MAJOR")
+	field(TVVL, 12)
+	field(TTSV, "MAJOR")
+	field(TTVL, 13)
+	field(FTSV, "MAJOR")
+	field(FTVL, 14)
+	field(FFSV, "MAJOR")
+	field(FFVL, 15)
+	field(PINI, "YES")
+	field(VAL, 0)
+	field(SIML, "$(P)SIM")
+	field(SIOL, "$(P)SIM:2:ERROR")
+	info(archive, "VAL")
+	info(INTEREST, "MEDIUM")
+}
+
+
+record(calcout,"$(P)1:CALC_PRES") {
+   field(DESC, "Pressure calculation gauge 1")
+   field(INPA, "$(P)1:RAW_PRES MS CP")
+   # For the error state reported
+   field(INPB, "$(P)1:ERROR MS CP")
+   
+   field(OUT, "$(P)1:PRESSURE MS PP")
+   
+   field(CALC, "A")
+}
+
+record(ai,"$(P)1:PRESSURE") {
+   field(DESC, "Pressure reading from gauge 1")
+   field(EGU, "") # set by units transfer
+   field(PREC, "4")
+   $(IFPRESSUR1) info(alarm, "TPG26x")
+   info(archive, "VAL")
+   info(INTEREST, "HIGH")
+}
+
+## PV hidden on graph when value set to 0, or is displayed
+## when the channel is on and the VAL field is uncommented (sets to 1)
+
+record(bo, "$(P)1:VISIBLE")
+{
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(ZNAM, "NO")
+    field(ONAM, "YES")
+    field(PINI, "YES")
+    $(IFPRESSUR1) field(VAL, "1")
+}
+
+record(calcout,"$(P)2:CALC_PRES") {
+   field(DESC, "Pressure calculation gauge 2")
+   field(INPA, "$(P)2:RAW_PRES MS CP")
+   # For the error state reported
+   field(INPB, "$(P)2:ERROR MS CP")
+   # For the disconnect error (data is pushed into 1)
+   field(INPC, "$(P)1:RAW_PRES MS CP")
+   
+   field(OUT, "$(P)2:PRESSURE MS PP")
+   
+   field(CALC, "A")
+}
+
+record(ai,"$(P)2:PRESSURE") {
+   field(DESC, "Pressure reading from gauge 2")
+   field(EGU, "") # set by units transfer
+   field(PREC, "4")
+   $(IFPRESSUR2)  info(alarm, "TPG26x")
+   info(archive, "VAL")
+   info(INTEREST, "HIGH")
+}
+
+## PV hidden on graph when value set to 0, or is displayed
+## when the channel is on and the VAL field is uncommented (sets to 1)
+
+record(bo, "$(P)2:VISIBLE")
+{
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(ZNAM, "NO")
+    field(ONAM, "YES")
+    field(PINI, "YES")
+    $(IFPRESSUR2) field(VAL, "1")
+}
+
+record(calc,"$(P)ACTIVITY") {
+   field(DESC, "Activity record")
+   field(INPA, "$(P)ACTIVITY")
+   field(CALC, "A!=0?0:1")
+   field(VAL, 0)
+   field(PINI, "YES")
+}
+
+record(stringout,"$(P)1:UNITS_TRANSFER") {
+    field(DESC, "Transfer the units to pressure 1")
+    field(DOL, "$(P)UNITS.VAL CP")
+    field(OMSL, "closed_loop")
+    field(OUT, "$(P)1:PRESSURE.EGU")
+}
+
+record(stringout,"$(P)2:UNITS_TRANSFER") {
+    field(DESC, "Transfer the units to pressure 2")
+    field(DOL, "$(P)UNITS.VAL CP")
+    field(OMSL, "closed_loop")
+    field(OUT, "$(P)2:PRESSURE.EGU")
+}
+
+record(mbbi, "$(P)UNITS") 
+{
+    field(DESC, "Units of pressure")
+    field(SCAN, "1 second")
+    field(DTYP, "stream")
+    field(INP,  "@TPG26x.proto getUnits $(PORT)")
+    field(ZRST, "mbar")
+    field(ONST, "Torr")
+    field(TWST, "Pa")
+    field(SIML, "$(P)SIM")
+    field(SIOL, "$(P)SIM:UNITS")
+    field(SDIS, "$(P)DISABLE")
+    info(archive, "VAL")
+    info(INTEREST, "HIGH")
+}
+
+record(mbbo, "$(P)UNITS:SP") 
+{
+    field(DTYP, "stream")
+    field(DESC, "Set the units of pressure")
+    field(OUT,  "@TPG26x.proto setUnits $(PORT)")
+    field(ZRST, "mbar")
+    field(ONST, "Torr")
+    field(TWST, "Pa")
+    field(SIML, "$(P)SIM")
+    field(SIOL, "$(P)SIM:UNITS:SP")
+    field(SDIS, "$(P)DISABLE")
+    info(archive, "VAL")
+}
+
+alias("$(P)UNITS", "$(P)UNITS:SP:RBV")
+
+
+
+## SIMULATION STUFF ##
+
+record(bo, "$(P)SIM") 
+{
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(ZNAM, "NO")
+    field(ONAM, "YES")
+    field(VAL, "$(RECSIM=0)")
+}
+
+alias("$(P)SIM", "$(P)SIM:SP")
+
+record(mbbi, "$(P)SIM:UNITS") 
+{
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(ZRST, "mbar")
+    field(ONST, "Torr")
+    field(TWST, "Pa")
+}
+
+alias("$(P)SIM:UNITS","$(P)SIM:UNITS:SP")
+
+alias("$(P)SIM:UNITS","$(P)SIM:UNITS:SP:RBV")
+
+record(ai,"$(P)SIM:1:PRESSURE")
+{
+    field(DESC, "Sim pressure from gauge 1 no error")
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(PINI, "YES")
+    field(VAL, 0)
+}
+
+record(ai,"$(P)SIM:2:PRESSURE")
+{
+    field(DESC, "Sim pressure from gauge 2 no error")
+    field(SCAN, "Passive")
+    field(DTYP, "Soft Channel")
+    field(FLNK, "$(P)2:RAW_PRES")
+    field(PINI, "YES")
+    field(VAL, 0)
+}
+
+record(mbbi,"$(P)SIM:1:ERROR")
+{
+    field(DESC, "Simulated error from the Gauge 1")
+    field(SCAN, "Passive")
+    field(ZRST, "No Error")
+    field(ONST, "Underrange")
+    field(TWST, "Overrange")
+    field(THST, "Sensor error")
+    field(FRST, "Sensor off")
+    field(FVST, "No Sensor")
+    field(SXST, "Identification Error")
+    field(FLNK, "$(P)1:ERROR")
+    field(PINI, "YES")
+    field(VAL, 0)
+}
+
+record(mbbi,"$(P)SIM:2:ERROR")
+{
+    field(DESC, "Simulated error from the Gauge 2")
+    field(SCAN, "Passive")
+    field(ZRST, "No Error")
+    field(ONST, "Underrange")
+    field(TWST, "Overrange")
+    field(THST, "Sensor error")
+    field(FRST, "Sensor off")
+    field(FVST, "No Sensor")
+    field(SXST, "Identification Error")
+    field(PINI, "YES")
+    field(VAL, 0)
+    field(FLNK, "$(P)2:ERROR")
+}