15 </coordinateInfo> |
15 </coordinateInfo> |
16 </contentHeader> |
16 </contentHeader> |
17 <types> |
17 <types> |
18 <dataTypes/> |
18 <dataTypes/> |
19 <pous> |
19 <pous> |
20 <pou name="csv_read_by_string" pouType="functionBlock"> |
20 <pou name="_csv_update" pouType="functionBlock"> |
21 <interface> |
21 <interface> |
22 <externalVars> |
22 <externalVars> |
23 <variable name="pyext_csv_update"> |
23 <variable name="pyext_csv_update"> |
24 <type> |
24 <type> |
|
25 <INT/> |
|
26 </type> |
|
27 </variable> |
|
28 </externalVars> |
|
29 <localVars> |
|
30 <variable name="pyext_csv_update_tmp"> |
|
31 <type> |
|
32 <INT/> |
|
33 </type> |
|
34 </variable> |
|
35 </localVars> |
|
36 <outputVars> |
|
37 <variable name="TRIG"> |
|
38 <type> |
25 <BOOL/> |
39 <BOOL/> |
26 </type> |
40 </type> |
27 </variable> |
41 </variable> |
|
42 </outputVars> |
|
43 </interface> |
|
44 <body> |
|
45 <FBD> |
|
46 <outVariable localId="2" executionOrderId="0" height="32" width="176" negated="false"> |
|
47 <position x="696" y="200"/> |
|
48 <connectionPointIn> |
|
49 <relPosition x="0" y="16"/> |
|
50 <connection refLocalId="12" formalParameter="OUT"> |
|
51 <position x="696" y="216"/> |
|
52 <position x="656" y="216"/> |
|
53 </connection> |
|
54 </connectionPointIn> |
|
55 <expression>pyext_csv_update_tmp</expression> |
|
56 </outVariable> |
|
57 <block localId="12" typeName="MOVE" executionOrderId="0" height="64" width="56"> |
|
58 <position x="600" y="160"/> |
|
59 <inputVariables> |
|
60 <variable formalParameter="EN" edge="rising"> |
|
61 <connectionPointIn> |
|
62 <relPosition x="0" y="32"/> |
|
63 <connection refLocalId="18" formalParameter="OUT"> |
|
64 <position x="600" y="192"/> |
|
65 <position x="520" y="192"/> |
|
66 </connection> |
|
67 </connectionPointIn> |
|
68 </variable> |
|
69 <variable formalParameter="IN"> |
|
70 <connectionPointIn> |
|
71 <relPosition x="0" y="56"/> |
|
72 <connection refLocalId="17"> |
|
73 <position x="600" y="216"/> |
|
74 <position x="568" y="216"/> |
|
75 <position x="568" y="240"/> |
|
76 <position x="408" y="240"/> |
|
77 </connection> |
|
78 </connectionPointIn> |
|
79 </variable> |
|
80 </inputVariables> |
|
81 <inOutVariables/> |
|
82 <outputVariables> |
|
83 <variable formalParameter="ENO"> |
|
84 <connectionPointOut> |
|
85 <relPosition x="56" y="32"/> |
|
86 </connectionPointOut> |
|
87 </variable> |
|
88 <variable formalParameter="OUT"> |
|
89 <connectionPointOut> |
|
90 <relPosition x="56" y="56"/> |
|
91 </connectionPointOut> |
|
92 </variable> |
|
93 </outputVariables> |
|
94 </block> |
|
95 <inVariable localId="1" executionOrderId="0" width="176" height="32" negated="false"> |
|
96 <position x="232" y="176"/> |
|
97 <connectionPointOut> |
|
98 <relPosition x="176" y="16"/> |
|
99 </connectionPointOut> |
|
100 <expression>pyext_csv_update_tmp</expression> |
|
101 </inVariable> |
|
102 <outVariable localId="15" executionOrderId="0" width="48" height="32" negated="false"> |
|
103 <position x="880" y="176"/> |
|
104 <connectionPointIn> |
|
105 <relPosition x="0" y="16"/> |
|
106 <connection refLocalId="12" formalParameter="ENO"> |
|
107 <position x="880" y="192"/> |
|
108 <position x="656" y="192"/> |
|
109 </connection> |
|
110 </connectionPointIn> |
|
111 <expression>TRIG</expression> |
|
112 </outVariable> |
|
113 <block localId="18" typeName="NE" executionOrderId="0" width="64" height="64"> |
|
114 <position x="456" y="160"/> |
|
115 <inputVariables> |
|
116 <variable formalParameter="IN1"> |
|
117 <connectionPointIn> |
|
118 <relPosition x="0" y="32"/> |
|
119 <connection refLocalId="1"> |
|
120 <position x="456" y="192"/> |
|
121 <position x="408" y="192"/> |
|
122 </connection> |
|
123 </connectionPointIn> |
|
124 </variable> |
|
125 <variable formalParameter="IN2"> |
|
126 <connectionPointIn> |
|
127 <relPosition x="0" y="56"/> |
|
128 <connection refLocalId="17"> |
|
129 <position x="456" y="216"/> |
|
130 <position x="432" y="216"/> |
|
131 <position x="432" y="240"/> |
|
132 <position x="408" y="240"/> |
|
133 </connection> |
|
134 </connectionPointIn> |
|
135 </variable> |
|
136 </inputVariables> |
|
137 <inOutVariables/> |
|
138 <outputVariables> |
|
139 <variable formalParameter="OUT"> |
|
140 <connectionPointOut> |
|
141 <relPosition x="64" y="32"/> |
|
142 </connectionPointOut> |
|
143 </variable> |
|
144 </outputVariables> |
|
145 </block> |
|
146 <inVariable localId="17" executionOrderId="0" width="176" height="32" negated="false"> |
|
147 <position x="232" y="224"/> |
|
148 <connectionPointOut> |
|
149 <relPosition x="176" y="16"/> |
|
150 </connectionPointOut> |
|
151 <expression>pyext_csv_update</expression> |
|
152 </inVariable> |
|
153 </FBD> |
|
154 </body> |
|
155 </pou> |
|
156 <pou name="csv_refresh" pouType="functionBlock"> |
|
157 <interface> |
|
158 <externalVars> |
|
159 <variable name="pyext_csv_update"> |
|
160 <type> |
|
161 <INT/> |
|
162 </type> |
|
163 </variable> |
28 </externalVars> |
164 </externalVars> |
|
165 <inputVars> |
|
166 <variable name="TRIG"> |
|
167 <type> |
|
168 <BOOL/> |
|
169 </type> |
|
170 </variable> |
|
171 </inputVars> |
|
172 </interface> |
|
173 <body> |
|
174 <FBD> |
|
175 <outVariable localId="2" executionOrderId="0" height="32" width="146" negated="false"> |
|
176 <position x="808" y="312"/> |
|
177 <connectionPointIn> |
|
178 <relPosition x="0" y="16"/> |
|
179 <connection refLocalId="12" formalParameter="OUT"> |
|
180 <position x="808" y="328"/> |
|
181 <position x="760" y="328"/> |
|
182 </connection> |
|
183 </connectionPointIn> |
|
184 <expression>pyext_csv_update</expression> |
|
185 </outVariable> |
|
186 <block localId="12" typeName="MOVE" executionOrderId="0" height="64" width="56"> |
|
187 <position x="704" y="272"/> |
|
188 <inputVariables> |
|
189 <variable formalParameter="EN"> |
|
190 <connectionPointIn> |
|
191 <relPosition x="0" y="32"/> |
|
192 <connection refLocalId="13" formalParameter="ENO"> |
|
193 <position x="704" y="304"/> |
|
194 <position x="664" y="304"/> |
|
195 </connection> |
|
196 </connectionPointIn> |
|
197 </variable> |
|
198 <variable formalParameter="IN"> |
|
199 <connectionPointIn> |
|
200 <relPosition x="0" y="56"/> |
|
201 <connection refLocalId="13" formalParameter="OUT"> |
|
202 <position x="704" y="328"/> |
|
203 <position x="664" y="328"/> |
|
204 </connection> |
|
205 </connectionPointIn> |
|
206 </variable> |
|
207 </inputVariables> |
|
208 <inOutVariables/> |
|
209 <outputVariables> |
|
210 <variable formalParameter="ENO"> |
|
211 <connectionPointOut> |
|
212 <relPosition x="56" y="32"/> |
|
213 </connectionPointOut> |
|
214 </variable> |
|
215 <variable formalParameter="OUT"> |
|
216 <connectionPointOut> |
|
217 <relPosition x="56" y="56"/> |
|
218 </connectionPointOut> |
|
219 </variable> |
|
220 </outputVariables> |
|
221 </block> |
|
222 <block localId="13" typeName="ADD" executionOrderId="0" width="64" height="96"> |
|
223 <position x="600" y="272"/> |
|
224 <inputVariables> |
|
225 <variable formalParameter="EN" edge="rising"> |
|
226 <connectionPointIn> |
|
227 <relPosition x="0" y="32"/> |
|
228 <connection refLocalId="15"> |
|
229 <position x="600" y="304"/> |
|
230 <position x="336" y="304"/> |
|
231 </connection> |
|
232 </connectionPointIn> |
|
233 </variable> |
|
234 <variable formalParameter="IN1"> |
|
235 <connectionPointIn> |
|
236 <relPosition x="0" y="56"/> |
|
237 <connection refLocalId="1"> |
|
238 <position x="600" y="328"/> |
|
239 <position x="490" y="328"/> |
|
240 </connection> |
|
241 </connectionPointIn> |
|
242 </variable> |
|
243 <variable formalParameter="IN2"> |
|
244 <connectionPointIn> |
|
245 <relPosition x="0" y="80"/> |
|
246 <connection refLocalId="14"> |
|
247 <position x="600" y="352"/> |
|
248 <position x="528" y="352"/> |
|
249 </connection> |
|
250 </connectionPointIn> |
|
251 </variable> |
|
252 </inputVariables> |
|
253 <inOutVariables/> |
|
254 <outputVariables> |
|
255 <variable formalParameter="ENO"> |
|
256 <connectionPointOut> |
|
257 <relPosition x="64" y="32"/> |
|
258 </connectionPointOut> |
|
259 </variable> |
|
260 <variable formalParameter="OUT"> |
|
261 <connectionPointOut> |
|
262 <relPosition x="64" y="56"/> |
|
263 </connectionPointOut> |
|
264 </variable> |
|
265 </outputVariables> |
|
266 </block> |
|
267 <inVariable localId="1" executionOrderId="0" width="146" height="32" negated="false"> |
|
268 <position x="344" y="312"/> |
|
269 <connectionPointOut> |
|
270 <relPosition x="146" y="16"/> |
|
271 </connectionPointOut> |
|
272 <expression>pyext_csv_update</expression> |
|
273 </inVariable> |
|
274 <inVariable localId="14" executionOrderId="0" width="24" height="32" negated="false"> |
|
275 <position x="504" y="336"/> |
|
276 <connectionPointOut> |
|
277 <relPosition x="24" y="16"/> |
|
278 </connectionPointOut> |
|
279 <expression>1</expression> |
|
280 </inVariable> |
|
281 <inVariable localId="15" executionOrderId="0" width="48" height="32" negated="false"> |
|
282 <position x="288" y="288"/> |
|
283 <connectionPointOut> |
|
284 <relPosition x="48" y="16"/> |
|
285 </connectionPointOut> |
|
286 <expression>TRIG</expression> |
|
287 </inVariable> |
|
288 </FBD> |
|
289 </body> |
|
290 <documentation> |
|
291 <xhtml:p><![CDATA[Triggers CSV read FB to refresh output, without reloading CSV files]]></xhtml:p> |
|
292 </documentation> |
|
293 </pou> |
|
294 <pou name="csv_read_by_string" pouType="functionBlock"> |
|
295 <interface> |
29 <outputVars> |
296 <outputVars> |
30 <variable name="ACK"> |
297 <variable name="ACK"> |
31 <type> |
298 <type> |
32 <BOOL/> |
299 <BOOL/> |
33 </type> |
300 </type> |
433 <position x="400" y="648"/> |
695 <position x="400" y="648"/> |
434 <connectionPointOut> |
696 <connectionPointOut> |
435 <relPosition x="128" y="16"/> |
697 <relPosition x="128" y="16"/> |
436 </connectionPointOut> |
698 </connectionPointOut> |
437 </continuation> |
699 </continuation> |
438 <continuation name="CodeChange" localId="24" height="24" width="120"> |
700 <continuation name="CodeChange" localId="24" height="32" width="120"> |
439 <position x="64" y="648"/> |
701 <position x="24" y="640"/> |
440 <connectionPointOut> |
702 <connectionPointOut> |
441 <relPosition x="120" y="16"/> |
703 <relPosition x="120" y="16"/> |
442 </connectionPointOut> |
704 </connectionPointOut> |
443 </continuation> |
705 </continuation> |
444 <block localId="15" typeName="OR" executionOrderId="0" height="64" width="64"> |
706 <block localId="15" typeName="OR" executionOrderId="0" height="64" width="64"> |
445 <position x="296" y="600"/> |
707 <position x="296" y="600"/> |
446 <inputVariables> |
708 <inputVariables> |
447 <variable formalParameter="IN1"> |
709 <variable formalParameter="IN1"> |
448 <connectionPointIn> |
710 <connectionPointIn> |
449 <relPosition x="0" y="32"/> |
711 <relPosition x="0" y="32"/> |
450 <connection refLocalId="32" formalParameter="Q"> |
712 <connection refLocalId="40" formalParameter="TRIG"> |
451 <position x="296" y="632"/> |
713 <position x="296" y="632"/> |
452 <position x="272" y="632"/> |
714 <position x="264" y="632"/> |
453 </connection> |
715 </connection> |
454 </connectionPointIn> |
716 </connectionPointIn> |
455 </variable> |
717 </variable> |
456 <variable formalParameter="IN2"> |
718 <variable formalParameter="IN2"> |
457 <connectionPointIn> |
719 <connectionPointIn> |
458 <relPosition x="0" y="56"/> |
720 <relPosition x="0" y="56"/> |
459 <connection refLocalId="24"> |
721 <connection refLocalId="24"> |
460 <position x="296" y="656"/> |
722 <position x="296" y="656"/> |
461 <position x="184" y="656"/> |
723 <position x="144" y="656"/> |
462 </connection> |
724 </connection> |
463 </connectionPointIn> |
725 </connectionPointIn> |
464 </variable> |
726 </variable> |
465 </inputVariables> |
727 </inputVariables> |
466 <inOutVariables/> |
728 <inOutVariables/> |
467 <outputVariables> |
729 <outputVariables> |
468 <variable formalParameter="OUT"> |
730 <variable formalParameter="OUT"> |
469 <connectionPointOut> |
|
470 <relPosition x="64" y="32"/> |
|
471 </connectionPointOut> |
|
472 </variable> |
|
473 </outputVariables> |
|
474 </block> |
|
475 <block localId="32" typeName="R_TRIG" instanceName="R_TRIG0" executionOrderId="0" height="48" width="64"> |
|
476 <position x="208" y="600"/> |
|
477 <inputVariables> |
|
478 <variable formalParameter="CLK"> |
|
479 <connectionPointIn> |
|
480 <relPosition x="0" y="32"/> |
|
481 <connection refLocalId="3"> |
|
482 <position x="208" y="632"/> |
|
483 <position x="184" y="632"/> |
|
484 </connection> |
|
485 </connectionPointIn> |
|
486 </variable> |
|
487 </inputVariables> |
|
488 <inOutVariables/> |
|
489 <outputVariables> |
|
490 <variable formalParameter="Q"> |
|
491 <connectionPointOut> |
731 <connectionPointOut> |
492 <relPosition x="64" y="32"/> |
732 <relPosition x="64" y="32"/> |
493 </connectionPointOut> |
733 </connectionPointOut> |
494 </variable> |
734 </variable> |
495 </outputVariables> |
735 </outputVariables> |
749 <relPosition x="104" y="64"/> |
991 <relPosition x="104" y="64"/> |
750 </connectionPointOut> |
992 </connectionPointOut> |
751 </variable> |
993 </variable> |
752 </outputVariables> |
994 </outputVariables> |
753 </block> |
995 </block> |
754 <inVariable localId="3" height="24" width="152" executionOrderId="0" negated="false"> |
996 <inVariable localId="3" height="32" width="56" executionOrderId="0" negated="false"> |
755 <position x="48" y="352"/> |
997 <position x="248" y="112"/> |
756 <connectionPointOut> |
998 <connectionPointOut> |
757 <relPosition x="152" y="8"/> |
999 <relPosition x="56" y="16"/> |
758 </connectionPointOut> |
1000 </connectionPointOut> |
759 <expression>TRIG</expression> |
1001 <expression>TRIG</expression> |
760 </inVariable> |
1002 </inVariable> |
761 <outVariable localId="5" height="24" width="40" executionOrderId="0" negated="false"> |
1003 <outVariable localId="5" height="32" width="40" executionOrderId="0" negated="false"> |
762 <position x="384" y="344"/> |
1004 <position x="568" y="112"/> |
763 <connectionPointIn> |
1005 <connectionPointIn> |
764 <relPosition x="0" y="16"/> |
1006 <relPosition x="0" y="16"/> |
765 <connection refLocalId="1" formalParameter="ACK"> |
1007 <connection refLocalId="1" formalParameter="ACK"> |
766 <position x="384" y="360"/> |
1008 <position x="568" y="128"/> |
767 <position x="336" y="360"/> |
1009 <position x="440" y="128"/> |
768 </connection> |
1010 </connection> |
769 </connectionPointIn> |
1011 </connectionPointIn> |
770 <expression>ACK</expression> |
1012 <expression>ACK</expression> |
771 </outVariable> |
1013 </outVariable> |
772 <outVariable localId="6" height="24" width="64" executionOrderId="0" negated="false"> |
1014 <outVariable localId="6" height="32" width="64" executionOrderId="0" negated="false"> |
773 <position x="384" y="376"/> |
1015 <position x="488" y="144"/> |
774 <connectionPointIn> |
1016 <connectionPointIn> |
775 <relPosition x="0" y="16"/> |
1017 <relPosition x="0" y="16"/> |
776 <connection refLocalId="1" formalParameter="RESULT"> |
1018 <connection refLocalId="1" formalParameter="RESULT"> |
777 <position x="384" y="392"/> |
1019 <position x="488" y="160"/> |
778 <position x="336" y="392"/> |
1020 <position x="440" y="160"/> |
779 </connection> |
1021 </connection> |
780 </connectionPointIn> |
1022 </connectionPointIn> |
781 <expression>RESULT</expression> |
1023 <expression>RESULT</expression> |
782 </outVariable> |
1024 </outVariable> |
783 <inVariable localId="8" executionOrderId="0" height="24" width="176" negated="false"> |
1025 <inVariable localId="8" executionOrderId="0" height="32" width="176" negated="false"> |
784 <position x="24" y="384"/> |
1026 <position x="48" y="144"/> |
785 <connectionPointOut> |
1027 <connectionPointOut> |
786 <relPosition x="176" y="16"/> |
1028 <relPosition x="176" y="16"/> |
787 </connectionPointOut> |
1029 </connectionPointOut> |
788 <expression>'pyext_csv_reload()'</expression> |
1030 <expression>'pyext_csv_reload()'</expression> |
789 </inVariable> |
1031 </inVariable> |
790 <outVariable localId="2" executionOrderId="0" height="24" width="146" negated="false"> |
1032 <block localId="15" typeName="csv_refresh" instanceName="csv_refresh0" executionOrderId="0" width="104" height="64"> |
791 <position x="864" y="320"/> |
1033 <position x="568" y="32"/> |
792 <connectionPointIn> |
1034 <inputVariables> |
793 <relPosition x="0" y="8"/> |
1035 <variable formalParameter="TRIG"> |
794 <connection refLocalId="12" formalParameter="OUT"> |
1036 <connectionPointIn> |
795 <position x="864" y="328"/> |
1037 <relPosition x="0" y="40"/> |
796 <position x="816" y="328"/> |
|
797 </connection> |
|
798 </connectionPointIn> |
|
799 <expression>pyext_csv_update</expression> |
|
800 </outVariable> |
|
801 <block localId="9" typeName="R_TRIG" instanceName="R_TRIG0" executionOrderId="0" height="48" width="64"> |
|
802 <position x="472" y="224"/> |
|
803 <inputVariables> |
|
804 <variable formalParameter="CLK"> |
|
805 <connectionPointIn> |
|
806 <relPosition x="0" y="32"/> |
|
807 <connection refLocalId="1" formalParameter="ACK"> |
1038 <connection refLocalId="1" formalParameter="ACK"> |
808 <position x="472" y="256"/> |
1039 <position x="568" y="72"/> |
809 <position x="368" y="256"/> |
1040 <position x="472" y="72"/> |
810 <position x="368" y="360"/> |
1041 <position x="472" y="128"/> |
811 <position x="336" y="360"/> |
1042 <position x="440" y="128"/> |
812 </connection> |
1043 </connection> |
813 </connectionPointIn> |
1044 </connectionPointIn> |
814 </variable> |
1045 </variable> |
815 </inputVariables> |
1046 </inputVariables> |
816 <inOutVariables/> |
1047 <inOutVariables/> |
817 <outputVariables> |
1048 <outputVariables/> |
818 <variable formalParameter="Q"> |
1049 </block> |
819 <connectionPointOut> |
|
820 <relPosition x="64" y="32"/> |
|
821 </connectionPointOut> |
|
822 </variable> |
|
823 </outputVariables> |
|
824 </block> |
|
825 <block localId="10" typeName="F_TRIG" instanceName="F_TRIG0" executionOrderId="0" height="48" width="64"> |
|
826 <position x="472" y="296"/> |
|
827 <inputVariables> |
|
828 <variable formalParameter="CLK"> |
|
829 <connectionPointIn> |
|
830 <relPosition x="0" y="32"/> |
|
831 <connection refLocalId="1" formalParameter="ACK"> |
|
832 <position x="472" y="328"/> |
|
833 <position x="368" y="328"/> |
|
834 <position x="368" y="360"/> |
|
835 <position x="336" y="360"/> |
|
836 </connection> |
|
837 </connectionPointIn> |
|
838 </variable> |
|
839 </inputVariables> |
|
840 <inOutVariables/> |
|
841 <outputVariables> |
|
842 <variable formalParameter="Q"> |
|
843 <connectionPointOut> |
|
844 <relPosition x="64" y="32"/> |
|
845 </connectionPointOut> |
|
846 </variable> |
|
847 </outputVariables> |
|
848 </block> |
|
849 <block localId="11" typeName="OR" executionOrderId="0" height="64" width="64"> |
|
850 <position x="584" y="272"/> |
|
851 <inputVariables> |
|
852 <variable formalParameter="IN1"> |
|
853 <connectionPointIn> |
|
854 <relPosition x="0" y="32"/> |
|
855 <connection refLocalId="9" formalParameter="Q"> |
|
856 <position x="584" y="304"/> |
|
857 <position x="560" y="304"/> |
|
858 <position x="560" y="256"/> |
|
859 <position x="536" y="256"/> |
|
860 </connection> |
|
861 </connectionPointIn> |
|
862 </variable> |
|
863 <variable formalParameter="IN2"> |
|
864 <connectionPointIn> |
|
865 <relPosition x="0" y="56"/> |
|
866 <connection refLocalId="10" formalParameter="Q"> |
|
867 <position x="584" y="328"/> |
|
868 <position x="536" y="328"/> |
|
869 </connection> |
|
870 </connectionPointIn> |
|
871 </variable> |
|
872 </inputVariables> |
|
873 <inOutVariables/> |
|
874 <outputVariables> |
|
875 <variable formalParameter="OUT"> |
|
876 <connectionPointOut> |
|
877 <relPosition x="64" y="32"/> |
|
878 </connectionPointOut> |
|
879 </variable> |
|
880 </outputVariables> |
|
881 </block> |
|
882 <block localId="12" typeName="MOVE" executionOrderId="0" height="64" width="56"> |
|
883 <position x="760" y="272"/> |
|
884 <inputVariables> |
|
885 <variable formalParameter="EN"> |
|
886 <connectionPointIn> |
|
887 <relPosition x="0" y="32"/> |
|
888 <connection refLocalId="11" formalParameter="OUT"> |
|
889 <position x="760" y="304"/> |
|
890 <position x="648" y="304"/> |
|
891 </connection> |
|
892 </connectionPointIn> |
|
893 </variable> |
|
894 <variable formalParameter="IN"> |
|
895 <connectionPointIn> |
|
896 <relPosition x="0" y="56"/> |
|
897 <connection refLocalId="13" formalParameter="OUT"> |
|
898 <position x="760" y="328"/> |
|
899 <position x="724" y="328"/> |
|
900 <position x="724" y="256"/> |
|
901 <position x="712" y="256"/> |
|
902 </connection> |
|
903 </connectionPointIn> |
|
904 </variable> |
|
905 </inputVariables> |
|
906 <inOutVariables/> |
|
907 <outputVariables> |
|
908 <variable formalParameter="ENO"> |
|
909 <connectionPointOut> |
|
910 <relPosition x="56" y="32"/> |
|
911 </connectionPointOut> |
|
912 </variable> |
|
913 <variable formalParameter="OUT"> |
|
914 <connectionPointOut> |
|
915 <relPosition x="56" y="56"/> |
|
916 </connectionPointOut> |
|
917 </variable> |
|
918 </outputVariables> |
|
919 </block> |
|
920 <block localId="13" typeName="NOT" executionOrderId="0" height="48" width="56"> |
|
921 <position x="656" y="224"/> |
|
922 <inputVariables> |
|
923 <variable formalParameter="IN"> |
|
924 <connectionPointIn> |
|
925 <relPosition x="0" y="32"/> |
|
926 <connection refLocalId="9" formalParameter="Q"> |
|
927 <position x="656" y="256"/> |
|
928 <position x="536" y="256"/> |
|
929 </connection> |
|
930 </connectionPointIn> |
|
931 </variable> |
|
932 </inputVariables> |
|
933 <inOutVariables/> |
|
934 <outputVariables> |
|
935 <variable formalParameter="OUT"> |
|
936 <connectionPointOut> |
|
937 <relPosition x="56" y="32"/> |
|
938 </connectionPointOut> |
|
939 </variable> |
|
940 </outputVariables> |
|
941 </block> |
|
942 <comment localId="14" height="72" width="664"> |
|
943 <position x="368" y="136"/> |
|
944 <content> |
|
945 <xhtml:p><![CDATA[pyext_csv_update initial value is True so that all CSV blocks get at least updated once at start. |
|
946 When calling csv_reload, return from python pyext_csv_reload makes a pulse on pyext_csv_update]]></xhtml:p> |
|
947 </content> |
|
948 </comment> |
|
949 </FBD> |
1050 </FBD> |
950 </body> |
1051 </body> |
|
1052 <documentation> |
|
1053 <xhtml:p><![CDATA[Purge CSV files cache and refresh CSV read FBs outputs, consequently reloading CSV files]]></xhtml:p> |
|
1054 </documentation> |
951 </pou> |
1055 </pou> |
952 <pou name="csv_read_by_int" pouType="functionBlock"> |
1056 <pou name="csv_read_by_int" pouType="functionBlock"> |
953 <interface> |
1057 <interface> |
954 <externalVars> |
|
955 <variable name="pyext_csv_update"> |
|
956 <type> |
|
957 <BOOL/> |
|
958 </type> |
|
959 </variable> |
|
960 </externalVars> |
|
961 <outputVars> |
1058 <outputVars> |
962 <variable name="ACK"> |
1059 <variable name="ACK"> |
963 <type> |
1060 <type> |
964 <BOOL/> |
1061 <BOOL/> |
965 </type> |
1062 </type> |
1386 <position x="400" y="688"/> |
1483 <position x="400" y="688"/> |
1387 <connectionPointOut> |
1484 <connectionPointOut> |
1388 <relPosition x="128" y="16"/> |
1485 <relPosition x="128" y="16"/> |
1389 </connectionPointOut> |
1486 </connectionPointOut> |
1390 </continuation> |
1487 </continuation> |
1391 <inVariable localId="42" height="24" width="152" executionOrderId="0" negated="false"> |
|
1392 <position x="32" y="656"/> |
|
1393 <connectionPointOut> |
|
1394 <relPosition x="152" y="16"/> |
|
1395 </connectionPointOut> |
|
1396 <expression>pyext_csv_update</expression> |
|
1397 </inVariable> |
|
1398 <outVariable localId="43" height="24" width="40" executionOrderId="0" negated="false"> |
1488 <outVariable localId="43" height="24" width="40" executionOrderId="0" negated="false"> |
1399 <position x="1216" y="672"/> |
1489 <position x="1216" y="664"/> |
1400 <connectionPointIn> |
1490 <connectionPointIn> |
1401 <relPosition x="0" y="16"/> |
1491 <relPosition x="0" y="16"/> |
1402 <connection refLocalId="38" formalParameter="Q1"> |
1492 <connection refLocalId="38" formalParameter="Q1"> |
1403 <position x="1216" y="688"/> |
1493 <position x="1216" y="680"/> |
1404 <position x="1192" y="688"/> |
|
1405 <position x="1192" y="680"/> |
|
1406 <position x="1168" y="680"/> |
1494 <position x="1168" y="680"/> |
1407 </connection> |
1495 </connection> |
1408 </connectionPointIn> |
1496 </connectionPointIn> |
1409 <expression>ACK</expression> |
1497 <expression>ACK</expression> |
1410 </outVariable> |
1498 </outVariable> |
1452 <relPosition x="64" y="32"/> |
1538 <relPosition x="64" y="32"/> |
1453 </connectionPointOut> |
1539 </connectionPointOut> |
1454 </variable> |
1540 </variable> |
1455 </outputVariables> |
1541 </outputVariables> |
1456 </block> |
1542 </block> |
1457 <continuation name="CodeChange" localId="45" height="24" width="120"> |
1543 <continuation name="CodeChange" localId="45" height="32" width="120"> |
1458 <position x="64" y="688"/> |
1544 <position x="24" y="680"/> |
1459 <connectionPointOut> |
1545 <connectionPointOut> |
1460 <relPosition x="120" y="16"/> |
1546 <relPosition x="120" y="16"/> |
1461 </connectionPointOut> |
1547 </connectionPointOut> |
1462 </continuation> |
1548 </continuation> |
1463 <block localId="46" typeName="R_TRIG" instanceName="R_TRIG1" executionOrderId="0" height="48" width="64"> |
|
1464 <position x="208" y="640"/> |
|
1465 <inputVariables> |
|
1466 <variable formalParameter="CLK"> |
|
1467 <connectionPointIn> |
|
1468 <relPosition x="0" y="32"/> |
|
1469 <connection refLocalId="42"> |
|
1470 <position x="208" y="672"/> |
|
1471 <position x="184" y="672"/> |
|
1472 </connection> |
|
1473 </connectionPointIn> |
|
1474 </variable> |
|
1475 </inputVariables> |
|
1476 <inOutVariables/> |
|
1477 <outputVariables> |
|
1478 <variable formalParameter="Q"> |
|
1479 <connectionPointOut> |
|
1480 <relPosition x="64" y="32"/> |
|
1481 </connectionPointOut> |
|
1482 </variable> |
|
1483 </outputVariables> |
|
1484 </block> |
|
1485 <block localId="33" typeName="LEFT" executionOrderId="0" height="64" width="56"> |
1549 <block localId="33" typeName="LEFT" executionOrderId="0" height="64" width="56"> |
1486 <position x="736" y="672"/> |
1550 <position x="736" y="672"/> |
1487 <inputVariables> |
1551 <inputVariables> |
1488 <variable formalParameter="IN"> |
1552 <variable formalParameter="IN"> |
1489 <connectionPointIn> |
1553 <connectionPointIn> |