ISIS Logo
FINS
FINS IOC
imat-plc-attn.db
Go to the documentation of this file.
1 # Control Word: W510 (This word will self-reset to 0)
2 # W510.00 set true to request Sample Attenuator to Open
3 # W510.01 set true to request Sample Attenuator to Close
4 #
5 # Status Word: W511
6 # W511.00 true when Sample Attenuator requested to open via HMI or EPICS
7 # W511.01 true when Sample Attenuator is OPEN
8 # W511.02 true when Sample Attenuator is CLOSED
9 #
10 #
11 # Pressures
12 # The pressure value will be in range 10 to 99 corresponding to 1.0 to 9.9
13 # The exponent will be something like -3 encoded in two's complement and read back as e.g. 65533 (unsigned)
14 # Gauge Pressure x10_E description
15 # TPG300-1 A1 D100 D101 Section 1 pirani
16 # TPG300-1 A2 D102 D103 Section 2 pirani
17 # TPG300-1 B1 D104 D105 Section 3 pirani
18 # TPG300-1 B2 D106 D107 Spare
19 # TPG300-2 A1 D108 D109 Section 4 pirani
20 # TPG300-2 A2 D110 D111 Section 5 pirani
21 # TPG300-2 B1 D112 D113 Section 6 pirani
22 # TPG300-2 B2 D114 D115 Spare
23 
24 record(bo, "$(P)$(Q)SIM")
25 {
26  field(SCAN, "Passive")
27  field(DTYP, "Soft Channel")
28  field(ZNAM, "NO")
29  field(ONAM, "YES")
30 }
31 
32 
33 record(mbbi, "$(P)$(Q)STATUS")
34 {
35  field(DESC, "Attenuator Status")
36  field(DTYP, "asynInt32")
37  field(INP, "@asynMask($(PORT=PLC), 511, 16, 5.0) FINS_WR_READ")
38  field(SCAN, ".1 second")
39  # we right shift by 1 to drop the "open request" status bit
40  field(SHFT, 1)
41  field(ZRVL, 0)
42  field(ZRST, "MOVING")
43  field(ONVL, 1)
44  field(ONST, "OPEN")
45  field(TWVL, 2)
46  field(TWST, "CLOSED")
47  field(UNSV, "MINOR")
48  field(SIML, "$(P)$(Q)SIM")
49  field(SIOL, "$(P)$(Q)SIM:STATUS")
50  field(FLNK, "$(P)$(Q)_STATUSD.PROC")
51  info(INTEREST, "HIGH")
52  info(alarm, "Attenuator")
53  info(archive, "VAL")
54 }
55 
56 record(mbbiDirect, "$(P)$(Q)_STATUSD")
57 {
58  field(DESC, "Attenuator Bits")
59  field(DTYP, "Soft Channel")
60  field(INP, "$(P)$(Q)STATUS NPP")
61  field(FLNK, "$(P)$(Q)OPEN.PROC")
62 }
63 
64 record(bi, "$(P)$(Q)OPEN")
65 {
66  field(DESC, "Attenuator Open")
67  field(ZNAM, "NO")
68  field(ONAM, "YES")
69  field(INP, "$(P)$(Q)_STATUSD.B0 NPP")
70  info(INTEREST, "HIGH")
71  info(alarm, "Attenuator Open")
72  field(FLNK, "$(P)$(Q)CLOSED.PROC")
73 }
74 
75 record(bi, "$(P)$(Q)CLOSED")
76 {
77  field(DESC, "Attenuator Closed")
78  field(ZNAM, "NO")
79  field(ONAM, "YES")
80  field(INP, "$(P)$(Q)_STATUSD.B1 NPP")
81  info(INTEREST, "HIGH")
82  info(alarm, "Attenuator Open")
83 }
84 
85 ## write 0 to CLOSE, 1 to OPEN
86 record(mbbo, "$(P)$(Q)MOVE:SP")
87 {
88  field(DESC, "Move Attenuator")
89  field(DTYP, "asynInt32")
90  field(ZRST, "CLOSE")
91  field(ONST, "OPEN")
92  field(ZRVL, 2)
93  field(ONVL, 1)
94  field(OUT, "@asyn($(PORT=PLC), 510, 5.0) FINS_WR_WRITE")
95  field(SIML, "$(P)$(Q)SIM")
96  field(SIOL, "$(P)$(Q)SIM:MOVE")
97 }
98 
99 record(bo, "$(P)$(Q)OPEN:SP")
100 {
101  field(DESC, "Open Attenuator")
102  field(DTYP, "asynInt32")
103  field(ZNAM, "...")
104  field(ONAM, "OPEN")
105  field(OUT, "@asyn($(PORT=PLC), 510, 5.0) FINS_WR_WRITE_B0")
106  field(SIML, "$(P)$(Q)SIM")
107  field(SIOL, "$(P)$(Q)SIM:OPEN")
108 }
109 
110 record(bo, "$(P)$(Q)CLOSED:SP")
111 {
112  field(DESC, "Close Attenuator")
113  field(DTYP, "asynInt32")
114  field(ZNAM, "...")
115  field(ONAM, "CLOSE")
116  field(OUT, "@asyn($(PORT=PLC), 510, 5.0) FINS_WR_WRITE_B1")
117  field(SIML, "$(P)$(Q)SIM")
118  field(SIOL, "$(P)$(Q)SIM:CLOSE")
119 }
120 
121 
122 ### SIMULATION RECORDS ###
123 
124 # $(P)$(Q)SIM is in header file
125 
126 record(bi, "$(P)$(Q)SIM:CLOSE")
127 {
128  field(SCAN, "Passive")
129  field(DTYP, "Soft Channel")
130  field(VAL, "1")
131 }
132 
133 record(bi, "$(P)$(Q)SIM:OPEN")
134 {
135  field(SCAN, "Passive")
136  field(DTYP, "Soft Channel")
137  field(VAL, "1")
138 }
139 
140 record(longin, "$(P)$(Q)SIM:STATUS")
141 {
142  field(SCAN, "Passive")
143  field(DTYP, "Soft Channel")
144  field(VAL, "1")
145 }
146 
147 record(longin, "$(P)$(Q)SIM:MOVE")
148 {
149  field(SCAN, "Passive")
150  field(DTYP, "Soft Channel")
151  field(VAL, "1")
152 }
record(longin,"$(P)$(Q)$(NAME):RAW")
Copyright © 2013 Science and Technology Facilities Council | Generated by   doxygen 1.8.5