11# Input data collected from the different bpm devices
22
3- # First get the data into here ...
4- # Input of one record device ... collect them here
5- # locally (again)
6- # so one can check what the IOC uses
7- record(longin, "$(PREFIX):inp:7:$(DEV_NAME):x")
8- {
9- field(DESC, "mirror: $(DEV_NAME) x value")
10- field(EGU, "nm")
11- # field(INP, {pva:{
12- # pv:"$(DEV_NAME):pos",
13- # field:"X",
14- # proc:true,
15- # }}
16- # )
17- # Forwarding data handled by separate fanout to ensure that
18- # data are pushed in desired order to python
19- # field(FLNK, "$(PREFIX)$(DEV_NAME):im:x")
20- field(VAL, -100000000)
21- }
22-
23- record(longin, "$(PREFIX):inp:7:$(DEV_NAME):y")
24- {
25- field(DESC, "mirror: y value")
26- field(EGU, "nm")
27- # field(INP, {pva:{
28- # pv:"$(DEV_NAME):pos",
29- # field:"Y",
30- # proc:true,
31- # }}
32- # )
33- # field(FLNK, "$(PREFIX)$(DEV_NAME):im:y")
34- field(VAL, -100000000)
35- }
36-
37- # I assume that I can rely on cnt to be updated when ever
38- # x or y are updated
39- record(longin, "$(PREFIX):inp:7:$(DEV_NAME):cnt")
40- {
41- field(DESC, "mirror: (time) cnt")
42- # field(INP, {pva:{
43- # pv:"$(DEV_NAME):pos",
44- # field:"lmt_l",
45- # proc:true
46- # }}
47- # )
48- # done by epics 3 record currenty
49- # field(FLNK, "$(PREFIX):im:$(DEV_NAME):psh")
50- field(VAL, -1)
51- }
52-
533# # Input data collected from the different bpm devices
544record(pycalc, "$(PREFIX):inp:$(DEV_NAME):posv")
555{
@@ -58,7 +8,8 @@ record(pycalc, "$(PREFIX):inp:$(DEV_NAME):posv")
588 field(FTA, LONG)
599 field(MEA, 3)
6010 field(CALC, "update(dev_name='$(DEV_NAME)', reading=%A%, tpro=%TPRO%)")
61- field(FLNK, "$(PREFIX):inp:$(DEV_NAME):trg")
11+ # trigger heart beat monitor
12+ field(FLNK, "$(PREFIX):im:$(DEV_NAME):mon:trg")
6213 # field(TPRO, 1)
6314}
6415
@@ -76,7 +27,6 @@ record(mbbi, "$(PREFIX):inp:$(DEV_NAME):sync_stat")
7627 field(FLNK, "$(PREFIX):im:$(DEV_NAME):sync_stat")
7728}
7829
79-
8030#
8131# Todo: Bug? shows 1 instead of 2 even if the value is 2
8232#
@@ -96,62 +46,6 @@ record(mbbo, "$(PREFIX):im:$(DEV_NAME):sync_stat")
9646}
9747
9848
99- record(fanout, "$(PREFIX):inp:$(DEV_NAME):trg")
100- {
101- field(DESC, "mirror: $(DEV_NAME) trigger on new data")
102- field(LNK0, "$(PREFIX):inp:$(DEV_NAME):x")
103- field(LNK1, "$(PREFIX):inp:$(DEV_NAME):y")
104- field(LNK2, "$(PREFIX):inp:$(DEV_NAME):cnt")
105- }
106-
107- record(subArray, "$(PREFIX):inp:$(DEV_NAME):x")
108- {
109- field(DESC, "mirror: $(DEV_NAME) x value")
110- field(EGU, "nm")
111- field(INP, "$(PREFIX):inp:$(DEV_NAME):posv.A")
112- field(FTVL, "LONG")
113- field(MALM, 3)
114- field(NELM, 1)
115- field(INDX, 1)
116- # Forwarding data handled by separate fanout to ensure that
117- # data are pushed in desired order to python
118- # field(FLNK, "$(PREFIX)$(DEV_NAME):im:x")
119- # field(VAL, -100000000)
120- }
121-
122- record(subArray, "$(PREFIX):inp:$(DEV_NAME):y")
123- {
124- field(DESC, "mirror: $(DEV_NAME) y value")
125- field(EGU, "nm")
126- field(INP, "$(PREFIX):inp:$(DEV_NAME):posv.A")
127- # field(INP, "$(DEV_NAME):posv")
128- field(FTVL, "LONG")
129- field(MALM, 3)
130- field(NELM, 1)
131- field(INDX, 2)
132- # Forwarding data handled by separate fanout to ensure that
133- # data are pushed in desired order to python
134- # field(FLNK, "$(PREFIX)$(DEV_NAME):im:y")
135- # field(VAL, -100000000)
136- }
137-
138- record(subArray, "$(PREFIX):inp:$(DEV_NAME):cnt")
139- {
140- field(DESC, "mirror: $(DEV_NAME) cnt")
141- field(EGU, "nm")
142- field(INP, "$(PREFIX):inp:$(DEV_NAME):posv.A")
143- # field(INP, "$(DEV_NAME):posv")
144- field(FTVL, "LONG")
145- field(MALM, 3)
146- field(NELM, 1)
147- field(INDX, 0)
148- # Forwarding data handled by separate fanout to ensure that
149- # data are pushed in desired order to python
150- field(FLNK, "$(PREFIX):im:$(DEV_NAME):psh")
151- # field(VAL, -100000000)
152- }
153-
154-
15549record(stringin, "$(PREFIX):inp:$(DEV_NAME):name")
15650{
15751 field(DESC, "mirror: name")
@@ -168,67 +62,6 @@ record(stringin, "$(PREFIX):inp:$(DEV_NAME):name")
16862 field(PINI, "YES")
16963}
17064
171- # Now the records to push the info further to python
172- record(fanout, "$(PREFIX):im:$(DEV_NAME):psh")
173- {
174- # should call to python ... python should start building the
175- # internal data structure ... not a way yet to push directly
176- # field(LNK0, "$(PREFIX):im:$(DEV_NAME):cnt")
177- # field(LNK1, "$(PREFIX):im:$(DEV_NAME):x")
178- # field(LNK2, "$(PREFIX):im:$(DEV_NAME):y")
179- # field(LNK3, "$(PREFIX):im:$(DEV_NAME):ctl")
180- field(LNK4, "$(PREFIX):im:$(DEV_NAME):mon:trg")
181- }
182-
183- record(longout, "$(PREFIX):im:$(DEV_NAME):x")
184- {
185- field(DESC, "push to py: x")
186- field(DTYP, "pydev")
187- field(DOL, "$(PREFIX):inp:$(DEV_NAME):x")
188- field(OMSL, "closed_loop")
189- field(OUT, "@update(dev_name='$(DEV_NAME)', x=%VAL%)")
190- field(VAL, -1)
191- # field(PINI, "YES")
192- # field(TPRO, 1)
193- }
194-
195- record(longout, "$(PREFIX):im:$(DEV_NAME):y")
196- {
197- field(DESC, "push to py: y")
198- field(DTYP, "pydev")
199- field(DOL, "$(PREFIX):inp:$(DEV_NAME):y")
200- field(OMSL, "closed_loop")
201- field(OUT, "@update(dev_name='$(DEV_NAME)', y=%VAL%)")
202- field(VAL, -1)
203- # field(PINI, "YES")
204- # field(TPRO, 1)
205- }
206-
207- record(longout, "$(PREFIX):im:$(DEV_NAME):cnt")
208- {
209- field(DESC, "push to py: cnt")
210- field(DTYP, "pydev")
211- field(DOL, "$(PREFIX):inp:$(DEV_NAME):cnt")
212- field(OMSL, "closed_loop")
213- field(OUT, "@update(dev_name='$(DEV_NAME)', cnt=%VAL%)")
214- field(VAL, -1)
215- # field(PINI, "YES")
216- # field(TPRO, 1)
217- }
218-
219- # informs python side: a new measurement hand over finished
220- record(longout, "$(PREFIX):im:$(DEV_NAME):ctl")
221- {
222- field(DESC, "push to py: ctl")
223- field(DTYP, "pydev")
224- field(DOL, "$(PREFIX):inp:$(DEV_NAME):cnt")
225- field(OMSL, "closed_loop")
226- field(OUT, "@update(dev_name='$(DEV_NAME)', ctl=%VAL%)")
227- field(VAL, -1)
228- # field(PINI, "YES")
229- # field(TPRO, 1)
230- }
231-
23265# This is forwarded to python solely to be able to check that the
23366# $(DEV_NAME) matches the name the device communicates.
23467#
0 commit comments