@@ -42,7 +42,15 @@ END_VAR
42
42
VAR
43
43
// From lcls-srv01: grep -e KDes /u1/lcls/epics/ioc/data/sioc-unds-uc*/iocInfo/IOC.pvlist |sort
44
44
45
-
45
+ {attribute 'pytmc' := 'pv: 23; link: 2350:'}
46
+ fbSegment_23 : FB_UndulatorSegment;
47
+
48
+ {attribute 'pytmc' := 'pv: 24; link: 2450:'}
49
+ fbSegment_24 : FB_UndulatorSegment;
50
+
51
+ {attribute 'pytmc' := 'pv: 25; link: 2550:'}
52
+ fbSegment_25 : FB_UndulatorSegment;
53
+
46
54
{attribute 'pytmc' := 'pv: 26; link: 2650:'}
47
55
fbSegment_26 : FB_UndulatorSegment;
48
56
@@ -121,22 +129,30 @@ VAR CONSTANT
121
129
{attribute 'pytmc' := '
122
130
pv: FirstSegment
123
131
io: i'}
124
- iLowBound : UDINT := 26 ;
132
+ iLowBound : UDINT := 23 ;
125
133
{attribute 'pytmc' := '
126
134
pv: LastSegment
127
135
io: i'}
128
136
iHighBound : UDINT := 47;
129
137
{attribute 'pytmc' := '
130
- pv: Period
138
+ pv: Period_Short
139
+ io: i
140
+ field: EGU mm
141
+ '}
142
+ fPeriod_39_mm : LREAL := 39.0;
143
+
144
+ {attribute 'pytmc' := '
145
+ pv: Period_Long
131
146
io: i
132
147
field: EGU mm
133
148
'}
134
- fPeriod_mm : LREAL := 39.0;
149
+ fPeriod_56_mm : LREAL := 56.0;
150
+
135
151
{attribute 'pytmc' := '
136
152
pv: LowK
137
153
io: i
138
154
'}
139
- fLowK : LREAL := 1.5 ;
155
+ fLowK : LREAL := 0.8 ;
140
156
141
157
{attribute 'pytmc' := '
142
158
pv: HiK
@@ -191,9 +207,11 @@ UndAdrUpdate();
191
207
FOR iIndex := iLowBound TO iHighBound DO
192
208
IF fbSegment[iIndex] <> 0 THEN
193
209
fbCurrentSegment REF= fbSegment[iIndex]^;
194
- fbCurrentSegment.fPeriod_mm := fPeriod_mm;
195
210
fbCurrentSegment.fLowK := fLowK;
196
211
fbCurrentSegment.fHiK := fHiK;
212
+ IF (iIndex >= 26) THEN fbCurrentSegment.fPeriod_mm := fPeriod_39_mm;
213
+ ELSE fbCurrentSegment.fPeriod_mm := fPeriod_56_mm;
214
+ END_IF
197
215
END_IF
198
216
END_FOR
199
217
bInitialized := TRUE;]]> </ST >
0 commit comments