|
1 <?xml version="1.0" encoding="UTF-8"?> |
|
2 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
|
3 xmlns="http://www.plcopen.org/xml/tc6.xsd" |
|
4 xmlns:xhtml="http://www.w3.org/1999/xhtml" |
|
5 xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd http://www.plcopen.org/xml/tc6.xsd"> |
|
6 <fileHeader companyName="Lolitech" |
|
7 productName="PLCOpenEditorExample" |
|
8 productVersion="1.0" |
|
9 creationDateTime="2006-09-07 18:52:43"/> |
|
10 <contentHeader name="Test"> |
|
11 <coordinateInfo> |
|
12 <fbd> |
|
13 <scaling y="0" x="0"/> |
|
14 </fbd> |
|
15 <ld> |
|
16 <scaling y="0" x="0"/> |
|
17 </ld> |
|
18 <sfc> |
|
19 <scaling y="0" x="0"/> |
|
20 </sfc> |
|
21 </coordinateInfo> |
|
22 </contentHeader> |
|
23 <types> |
|
24 <dataTypes/> |
|
25 <pous> |
|
26 <pou name="FBDTest" pouType="function"> |
|
27 <interface> |
|
28 <returnType> |
|
29 <BOOL/> |
|
30 </returnType> |
|
31 <inputVars> |
|
32 <variable name="IN1"> |
|
33 <type> |
|
34 <BOOL/> |
|
35 </type> |
|
36 <initialValue> |
|
37 <simpleValue value="false"/> |
|
38 </initialValue> |
|
39 </variable> |
|
40 <variable name="IN2"> |
|
41 <type> |
|
42 <BOOL/> |
|
43 </type> |
|
44 <initialValue> |
|
45 <arrayValue> |
|
46 <value> |
|
47 <simpleValue value="4"/> |
|
48 </value> |
|
49 <value> |
|
50 <arrayValue> |
|
51 <value> |
|
52 <simpleValue value="0"/> |
|
53 </value> |
|
54 <value> |
|
55 <simpleValue value="1"/> |
|
56 </value> |
|
57 </arrayValue> |
|
58 </value> |
|
59 </arrayValue> |
|
60 </initialValue> |
|
61 </variable> |
|
62 <variable name="IN3"> |
|
63 <type> |
|
64 <BOOL/> |
|
65 </type> |
|
66 </variable> |
|
67 </inputVars> |
|
68 </interface> |
|
69 <body> |
|
70 <FBD> |
|
71 <inVariable localId="2" width="89" height="27"> |
|
72 <position y="84" x="64"/> |
|
73 <connectionPointOut> |
|
74 <relPosition y="13" x="89"/> |
|
75 </connectionPointOut> |
|
76 <expression>IN1</expression> |
|
77 </inVariable> |
|
78 <inVariable localId="3" width="90" height="27"> |
|
79 <position y="204" x="63"/> |
|
80 <connectionPointOut> |
|
81 <relPosition y="13" x="90"/> |
|
82 </connectionPointOut> |
|
83 <expression>IN2</expression> |
|
84 </inVariable> |
|
85 <outVariable localId="4" width="95" height="33"> |
|
86 <position y="182" x="587"/> |
|
87 <connectionPointIn> |
|
88 <relPosition y="16" x="0"/> |
|
89 <connection refLocalId="11"> |
|
90 <position y="198" x="587"/> |
|
91 <position y="198" x="517"/> |
|
92 </connection> |
|
93 </connectionPointIn> |
|
94 <expression>FBDTest</expression> |
|
95 </outVariable> |
|
96 <block localId="6" height="84" width="99" typeName="AND"> |
|
97 <position y="105" x="235"/> |
|
98 <inputVariables> |
|
99 <variable formalParameter="" edge="rising"> |
|
100 <connectionPointIn> |
|
101 <relPosition y="36" x="0"/> |
|
102 <connection refLocalId="2"> |
|
103 <position y="141" x="235"/> |
|
104 <position y="141" x="190"/> |
|
105 <position y="97" x="190"/> |
|
106 <position y="97" x="153"/> |
|
107 </connection> |
|
108 </connectionPointIn> |
|
109 </variable> |
|
110 <variable formalParameter=""> |
|
111 <connectionPointIn> |
|
112 <relPosition y="68" x="0"/> |
|
113 <connection refLocalId="3"> |
|
114 <position y="173" x="235"/> |
|
115 <position y="173" x="190"/> |
|
116 <position y="217" x="190"/> |
|
117 <position y="217" x="153"/> |
|
118 </connection> |
|
119 </connectionPointIn> |
|
120 </variable> |
|
121 </inputVariables> |
|
122 <inOutVariables/> |
|
123 <outputVariables> |
|
124 <variable formalParameter="" negated="true"> |
|
125 <connectionPointOut> |
|
126 <relPosition y="36" x="99"/> |
|
127 </connectionPointOut> |
|
128 </variable> |
|
129 </outputVariables> |
|
130 </block> |
|
131 <inVariable localId="7" width="90" height="28"> |
|
132 <position y="336" x="63"/> |
|
133 <connectionPointOut> |
|
134 <relPosition y="14" x="90"/> |
|
135 </connectionPointOut> |
|
136 <expression>IN3</expression> |
|
137 </inVariable> |
|
138 <block localId="8" height="87" width="99" instanceName="" typeName="OR"> |
|
139 <position y="246" x="235"/> |
|
140 <inputVariables> |
|
141 <variable formalParameter="IN1" negated="true"> |
|
142 <connectionPointIn> |
|
143 <relPosition y="36" x="0"/> |
|
144 <connection refLocalId="3"> |
|
145 <position y="282" x="235"/> |
|
146 <position y="282" x="190"/> |
|
147 <position y="217" x="190"/> |
|
148 <position y="217" x="153"/> |
|
149 </connection> |
|
150 </connectionPointIn> |
|
151 </variable> |
|
152 <variable formalParameter="IN2"> |
|
153 <connectionPointIn> |
|
154 <relPosition y="69" x="0"/> |
|
155 <connection refLocalId="7"> |
|
156 <position y="315" x="235"/> |
|
157 <position y="315" x="191"/> |
|
158 <position y="350" x="191"/> |
|
159 <position y="350" x="153"/> |
|
160 </connection> |
|
161 </connectionPointIn> |
|
162 </variable> |
|
163 </inputVariables> |
|
164 <inOutVariables/> |
|
165 <outputVariables> |
|
166 <variable formalParameter="OUT"> |
|
167 <connectionPointOut> |
|
168 <relPosition y="36" x="99"/> |
|
169 </connectionPointOut> |
|
170 </variable> |
|
171 </outputVariables> |
|
172 </block> |
|
173 <comment localId="10" height="37" width="261"> |
|
174 <position y="32" x="243"/> |
|
175 <content>POU qui sert a tester PLCOpenEditor.</content> |
|
176 </comment> |
|
177 <block localId="11" height="91" width="97" instanceName="SR1" typeName="SR"> |
|
178 <position y="161" x="420"/> |
|
179 <inputVariables> |
|
180 <variable formalParameter="S1"> |
|
181 <connectionPointIn> |
|
182 <relPosition y="37" x="0"/> |
|
183 <connection refLocalId="6"> |
|
184 <position y="198" x="420"/> |
|
185 <position y="198" x="369"/> |
|
186 <position y="141" x="369"/> |
|
187 <position y="141" x="334"/> |
|
188 </connection> |
|
189 </connectionPointIn> |
|
190 </variable> |
|
191 <variable formalParameter="R"> |
|
192 <connectionPointIn> |
|
193 <relPosition y="72" x="0"/> |
|
194 <connection refLocalId="8"> |
|
195 <position y="233" x="420"/> |
|
196 <position y="233" x="369"/> |
|
197 <position y="282" x="369"/> |
|
198 <position y="282" x="334"/> |
|
199 </connection> |
|
200 </connectionPointIn> |
|
201 </variable> |
|
202 </inputVariables> |
|
203 <inOutVariables/> |
|
204 <outputVariables> |
|
205 <variable formalParameter="Q1"> |
|
206 <connectionPointOut> |
|
207 <relPosition y="37" x="97"/> |
|
208 </connectionPointOut> |
|
209 </variable> |
|
210 </outputVariables> |
|
211 </block> |
|
212 </FBD> |
|
213 </body> |
|
214 </pou> |
|
215 <pou name="LDTest" pouType="function"> |
|
216 <interface> |
|
217 <returnType> |
|
218 <BOOL/> |
|
219 </returnType> |
|
220 <inputVars> |
|
221 <variable name="IN1"> |
|
222 <type> |
|
223 <BOOL/> |
|
224 </type> |
|
225 </variable> |
|
226 <variable name="IN2"> |
|
227 <type> |
|
228 <BOOL/> |
|
229 </type> |
|
230 </variable> |
|
231 <variable name="IN3"> |
|
232 <type> |
|
233 <BOOL/> |
|
234 </type> |
|
235 </variable> |
|
236 <variable name="IN4"> |
|
237 <type> |
|
238 <BOOL/> |
|
239 </type> |
|
240 </variable> |
|
241 </inputVars> |
|
242 </interface> |
|
243 <body> |
|
244 <LD> |
|
245 <comment localId="1" height="40" width="600"> |
|
246 <position y="10" x="10"/> |
|
247 <content>Commentaire</content> |
|
248 </comment> |
|
249 <leftPowerRail localId="2" height="80" width="2"> |
|
250 <position y="60" x="10"/> |
|
251 <connectionPointOut formalParameter=""> |
|
252 <relPosition y="20" x="2"/> |
|
253 </connectionPointOut> |
|
254 <connectionPointOut formalParameter=""> |
|
255 <relPosition y="60" x="2"/> |
|
256 </connectionPointOut> |
|
257 </leftPowerRail> |
|
258 <coil localId="3" width="21" storage="none" height="15" negated="false"> |
|
259 <position y="72" x="265"/> |
|
260 <connectionPointIn> |
|
261 <relPosition y="8" x="0"/> |
|
262 <connection refLocalId="7"> |
|
263 <position y="80" x="265"/> |
|
264 <position y="80" x="195"/> |
|
265 </connection> |
|
266 </connectionPointIn> |
|
267 <connectionPointOut> |
|
268 <relPosition y="8" x="21"/> |
|
269 </connectionPointOut> |
|
270 <variable>LDTest</variable> |
|
271 </coil> |
|
272 <rightPowerRail localId="4" height="40" width="2"> |
|
273 <position y="60" x="316"/> |
|
274 <connectionPointIn> |
|
275 <relPosition y="20" x="0"/> |
|
276 <connection refLocalId="3"> |
|
277 <position y="80" x="316"/> |
|
278 <position y="80" x="286"/> |
|
279 </connection> |
|
280 </connectionPointIn> |
|
281 </rightPowerRail> |
|
282 <contact localId="5" width="21" height="15" edge="none" negated="true"> |
|
283 <position y="72" x="42"/> |
|
284 <connectionPointIn> |
|
285 <relPosition y="8" x="0"/> |
|
286 <connection refLocalId="2"> |
|
287 <position y="80" x="42"/> |
|
288 <position y="80" x="12"/> |
|
289 </connection> |
|
290 </connectionPointIn> |
|
291 <connectionPointOut> |
|
292 <relPosition y="8" x="21"/> |
|
293 </connectionPointOut> |
|
294 <variable>IN1</variable> |
|
295 </contact> |
|
296 <contact localId="7" width="21" height="15" edge="none" negated="false"> |
|
297 <position y="72" x="174"/> |
|
298 <connectionPointIn> |
|
299 <relPosition y="8" x="0"/> |
|
300 <connection refLocalId="5"> |
|
301 <position y="80" x="174"/> |
|
302 <position y="80" x="63"/> |
|
303 </connection> |
|
304 <connection refLocalId="9"> |
|
305 <position y="80" x="174"/> |
|
306 <position y="80" x="144"/> |
|
307 <position y="120" x="144"/> |
|
308 <position y="120" x="114"/> |
|
309 </connection> |
|
310 </connectionPointIn> |
|
311 <connectionPointOut> |
|
312 <relPosition y="8" x="21"/> |
|
313 </connectionPointOut> |
|
314 <variable>IN2</variable> |
|
315 </contact> |
|
316 <contact localId="8" width="21" height="15" edge="none" negated="false"> |
|
317 <position y="112" x="42"/> |
|
318 <connectionPointIn> |
|
319 <relPosition y="8" x="0"/> |
|
320 <connection refLocalId="2"> |
|
321 <position y="120" x="42"/> |
|
322 <position y="120" x="12"/> |
|
323 </connection> |
|
324 </connectionPointIn> |
|
325 <connectionPointOut> |
|
326 <relPosition y="8" x="21"/> |
|
327 </connectionPointOut> |
|
328 <variable>IN3</variable> |
|
329 </contact> |
|
330 <contact localId="9" width="21" height="15" edge="none" negated="true"> |
|
331 <position y="112" x="93"/> |
|
332 <connectionPointIn> |
|
333 <relPosition y="8" x="0"/> |
|
334 <connection refLocalId="8"> |
|
335 <position y="120" x="93"/> |
|
336 <position y="120" x="63"/> |
|
337 </connection> |
|
338 </connectionPointIn> |
|
339 <connectionPointOut> |
|
340 <relPosition y="8" x="21"/> |
|
341 </connectionPointOut> |
|
342 <variable>IN4</variable> |
|
343 </contact> |
|
344 </LD> |
|
345 </body> |
|
346 </pou> |
|
347 <pou name="ILTest" pouType="function"> |
|
348 <interface> |
|
349 <returnType> |
|
350 <REAL/> |
|
351 </returnType> |
|
352 <localVars> |
|
353 <variable name="Temp"> |
|
354 <type> |
|
355 <REAL/> |
|
356 </type> |
|
357 </variable> |
|
358 </localVars> |
|
359 <inputVars> |
|
360 <variable name="X1"> |
|
361 <type> |
|
362 <REAL/> |
|
363 </type> |
|
364 </variable> |
|
365 <variable name="X2"> |
|
366 <type> |
|
367 <REAL/> |
|
368 </type> |
|
369 </variable> |
|
370 <variable name="Y1"> |
|
371 <type> |
|
372 <REAL/> |
|
373 </type> |
|
374 </variable> |
|
375 <variable name="Y2"> |
|
376 <type> |
|
377 <REAL/> |
|
378 </type> |
|
379 </variable> |
|
380 <variable name="TMax"> |
|
381 <type> |
|
382 <REAL/> |
|
383 </type> |
|
384 </variable> |
|
385 </inputVars> |
|
386 <outputVars> |
|
387 <variable name="ENO"> |
|
388 <type> |
|
389 <BOOL/> |
|
390 </type> |
|
391 </variable> |
|
392 </outputVars> |
|
393 </interface> |
|
394 <body> |
|
395 <IL> |
|
396 LD Y1 |
|
397 SUB Y2 (* Substract Y2 from Y1 *) |
|
398 ST Temp (* Store Y1-Y2 in Temp *) |
|
399 MUL Temp (* Multiply by Temp to square *) |
|
400 ADD( X1 (* Defer ADD *) |
|
401 SUB X2 (* Substract X1 from X2 *) |
|
402 ST Temp (* Store X1-X2 in Temp *) |
|
403 MUL Temp (* Multiply by Temp to square *) |
|
404 ) |
|
405 CAL SQRT (* Call Square root fun *) |
|
406 ST ILTest (* Setup function result *) |
|
407 GT TMax (* Greater than TMax ? *) |
|
408 JMPC ERR (* Yes, Jump to Error *) |
|
409 S ENO (* Set ENO *) |
|
410 RET (* Normal return *) |
|
411 |
|
412 ERR: |
|
413 RET (* Error return, ENO not set *) |
|
414 </IL> |
|
415 </body> |
|
416 </pou> |
|
417 <pou name="SFCTest" pouType="program"> |
|
418 <interface> |
|
419 <inputVars> |
|
420 <variable name="IN1"> |
|
421 <type> |
|
422 <BOOL/> |
|
423 </type> |
|
424 </variable> |
|
425 <variable name="IN2"> |
|
426 <type> |
|
427 <BOOL/> |
|
428 </type> |
|
429 </variable> |
|
430 <variable name="IN3"> |
|
431 <type> |
|
432 <BOOL/> |
|
433 </type> |
|
434 </variable> |
|
435 <variable name="IN4"> |
|
436 <type> |
|
437 <BOOL/> |
|
438 </type> |
|
439 </variable> |
|
440 <variable name="IN5"> |
|
441 <type> |
|
442 <BOOL/> |
|
443 </type> |
|
444 </variable> |
|
445 </inputVars> |
|
446 </interface> |
|
447 <actions> |
|
448 <action name="ACT1"> |
|
449 <body> |
|
450 <ST> |
|
451 IF IN1 THEN |
|
452 IN2 := 1; |
|
453 ELSE |
|
454 IN3 := 1; |
|
455 END_IF; |
|
456 </ST> |
|
457 </body> |
|
458 </action> |
|
459 </actions> |
|
460 <transitions> |
|
461 <transition name="TR1"> |
|
462 <body> |
|
463 <ST>:= AND(IN1, IN2, IN3);</ST> |
|
464 </body> |
|
465 </transition> |
|
466 </transitions> |
|
467 <body> |
|
468 <SFC> |
|
469 <step localId="1" height="31" width="46" initialStep="true" name="Start"> |
|
470 <position y="46" x="82"/> |
|
471 <connectionPointOut formalParameter=""> |
|
472 <relPosition y="31" x="23"/> |
|
473 </connectionPointOut> |
|
474 </step> |
|
475 <transition localId="2" height="2" width="20"> |
|
476 <position y="102" x="95"/> |
|
477 <connectionPointIn> |
|
478 <relPosition y="0" x="10"/> |
|
479 <connection refLocalId="1"> |
|
480 <position y="102" x="105"/> |
|
481 <position y="77" x="105"/> |
|
482 </connection> |
|
483 </connectionPointIn> |
|
484 <connectionPointOut> |
|
485 <relPosition y="2" x="10"/> |
|
486 </connectionPointOut> |
|
487 <condition> |
|
488 <reference name="TR1"/> |
|
489 </condition> |
|
490 </transition> |
|
491 <step localId="3" height="27" width="29" initialStep="false" name="Init"> |
|
492 <position y="129" x="91"/> |
|
493 <connectionPointIn> |
|
494 <relPosition y="0" x="14"/> |
|
495 <connection refLocalId="2"> |
|
496 <position y="129" x="105"/> |
|
497 <position y="104" x="105"/> |
|
498 </connection> |
|
499 </connectionPointIn> |
|
500 <connectionPointOut formalParameter=""> |
|
501 <relPosition y="27" x="14"/> |
|
502 </connectionPointOut> |
|
503 <connectionPointOutAction formalParameter=""> |
|
504 <relPosition y="13" x="29"/> |
|
505 </connectionPointOutAction> |
|
506 </step> |
|
507 <selectionDivergence localId="4" height="1" width="287"> |
|
508 <position y="181" x="105"/> |
|
509 <connectionPointIn> |
|
510 <relPosition y="0" x="0"/> |
|
511 <connection refLocalId="3"> |
|
512 <position y="181" x="105"/> |
|
513 <position y="156" x="105"/> |
|
514 </connection> |
|
515 </connectionPointIn> |
|
516 <connectionPointOut formalParameter=""> |
|
517 <relPosition y="1" x="0"/> |
|
518 </connectionPointOut> |
|
519 <connectionPointOut formalParameter=""> |
|
520 <relPosition y="1" x="133"/> |
|
521 </connectionPointOut> |
|
522 <connectionPointOut formalParameter=""> |
|
523 <relPosition y="1" x="287"/> |
|
524 </connectionPointOut> |
|
525 </selectionDivergence> |
|
526 <transition localId="5" height="2" width="20"> |
|
527 <position y="207" x="95"/> |
|
528 <connectionPointIn> |
|
529 <relPosition y="0" x="10"/> |
|
530 <connection refLocalId="4"> |
|
531 <position y="207" x="105"/> |
|
532 <position y="182" x="105"/> |
|
533 </connection> |
|
534 </connectionPointIn> |
|
535 <connectionPointOut> |
|
536 <relPosition y="2" x="10"/> |
|
537 </connectionPointOut> |
|
538 <condition> |
|
539 <inline name=""> |
|
540 <ST>IN2 AND IN3</ST> |
|
541 </inline> |
|
542 </condition> |
|
543 </transition> |
|
544 <step localId="6" height="27" width="48" initialStep="false" name="Step1"> |
|
545 <position y="234" x="81"/> |
|
546 <connectionPointIn> |
|
547 <relPosition y="0" x="24"/> |
|
548 <connection refLocalId="5"> |
|
549 <position y="234" x="105"/> |
|
550 <position y="209" x="105"/> |
|
551 </connection> |
|
552 </connectionPointIn> |
|
553 <connectionPointOut formalParameter=""> |
|
554 <relPosition y="27" x="24"/> |
|
555 </connectionPointOut> |
|
556 </step> |
|
557 <transition localId="7" height="2" width="20"> |
|
558 <position y="207" x="228"/> |
|
559 <connectionPointIn> |
|
560 <relPosition y="0" x="10"/> |
|
561 <connection refLocalId="4"> |
|
562 <position y="207" x="238"/> |
|
563 <position y="182" x="238"/> |
|
564 </connection> |
|
565 </connectionPointIn> |
|
566 <connectionPointOut> |
|
567 <relPosition y="2" x="10"/> |
|
568 </connectionPointOut> |
|
569 <condition> |
|
570 <inline name=""> |
|
571 <ST>IN3</ST> |
|
572 </inline> |
|
573 </condition> |
|
574 </transition> |
|
575 <step localId="8" height="27" width="48" initialStep="false" name="Step2"> |
|
576 <position y="234" x="214"/> |
|
577 <connectionPointIn> |
|
578 <relPosition y="0" x="24"/> |
|
579 <connection refLocalId="7"> |
|
580 <position y="234" x="238"/> |
|
581 <position y="209" x="238"/> |
|
582 </connection> |
|
583 </connectionPointIn> |
|
584 <connectionPointOut formalParameter=""> |
|
585 <relPosition y="27" x="24"/> |
|
586 </connectionPointOut> |
|
587 </step> |
|
588 <transition localId="9" height="2" width="20"> |
|
589 <position y="207" x="382"/> |
|
590 <connectionPointIn> |
|
591 <relPosition y="0" x="10"/> |
|
592 <connection refLocalId="4"> |
|
593 <position y="207" x="392"/> |
|
594 <position y="182" x="392"/> |
|
595 </connection> |
|
596 </connectionPointIn> |
|
597 <connectionPointOut> |
|
598 <relPosition y="2" x="10"/> |
|
599 </connectionPointOut> |
|
600 <condition> |
|
601 <inline name=""> |
|
602 <ST>IN4</ST> |
|
603 </inline> |
|
604 </condition> |
|
605 </transition> |
|
606 <step localId="10" height="27" width="48" initialStep="false" name="Step3"> |
|
607 <position y="234" x="368"/> |
|
608 <connectionPointIn> |
|
609 <relPosition y="0" x="24"/> |
|
610 <connection refLocalId="9"> |
|
611 <position y="234" x="392"/> |
|
612 <position y="209" x="392"/> |
|
613 </connection> |
|
614 </connectionPointIn> |
|
615 <connectionPointOut formalParameter=""> |
|
616 <relPosition y="27" x="24"/> |
|
617 </connectionPointOut> |
|
618 <connectionPointOutAction formalParameter=""> |
|
619 <relPosition y="13" x="48"/> |
|
620 </connectionPointOutAction> |
|
621 </step> |
|
622 <transition localId="11" height="2" width="20"> |
|
623 <position y="286" x="95"/> |
|
624 <connectionPointIn> |
|
625 <relPosition y="0" x="10"/> |
|
626 <connection refLocalId="6"> |
|
627 <position y="286" x="105"/> |
|
628 <position y="261" x="105"/> |
|
629 </connection> |
|
630 </connectionPointIn> |
|
631 <connectionPointOut> |
|
632 <relPosition y="2" x="10"/> |
|
633 </connectionPointOut> |
|
634 <condition> |
|
635 <inline name=""> |
|
636 <ST>IN5</ST> |
|
637 </inline> |
|
638 </condition> |
|
639 </transition> |
|
640 <jumpStep localId="12" height="13" width="12" targetName="Start"> |
|
641 <position y="313" x="99"/> |
|
642 <connectionPointIn> |
|
643 <relPosition y="0" x="6"/> |
|
644 <connection refLocalId="11"> |
|
645 <position y="313" x="105"/> |
|
646 <position y="288" x="105"/> |
|
647 </connection> |
|
648 </connectionPointIn> |
|
649 </jumpStep> |
|
650 <actionBlock localId="13" height="30" width="100"> |
|
651 <position y="127" x="145"/> |
|
652 <connectionPointIn> |
|
653 <relPosition y="15" x="0"/> |
|
654 <connection refLocalId="3"> |
|
655 <position y="142" x="145"/> |
|
656 <position y="142" x="120"/> |
|
657 </connection> |
|
658 </connectionPointIn> |
|
659 <action qualifier="N"> |
|
660 <reference name="ACT1"/> |
|
661 </action> |
|
662 </actionBlock> |
|
663 <transition localId="14" height="2" width="20"> |
|
664 <position y="286" x="228"/> |
|
665 <connectionPointIn> |
|
666 <relPosition y="0" x="10"/> |
|
667 <connection refLocalId="8"> |
|
668 <position y="286" x="238"/> |
|
669 <position y="261" x="238"/> |
|
670 </connection> |
|
671 </connectionPointIn> |
|
672 <connectionPointOut> |
|
673 <relPosition y="2" x="10"/> |
|
674 </connectionPointOut> |
|
675 <condition> |
|
676 <inline name=""> |
|
677 <ST>IN5</ST> |
|
678 </inline> |
|
679 </condition> |
|
680 </transition> |
|
681 <transition localId="15" height="2" width="20"> |
|
682 <position y="316" x="382"/> |
|
683 <connectionPointIn> |
|
684 <relPosition y="0" x="10"/> |
|
685 <connection refLocalId="10"> |
|
686 <position y="316" x="392"/> |
|
687 <position y="261" x="392"/> |
|
688 </connection> |
|
689 </connectionPointIn> |
|
690 <connectionPointOut> |
|
691 <relPosition y="2" x="10"/> |
|
692 </connectionPointOut> |
|
693 <condition> |
|
694 <inline name=""> |
|
695 <ST>IN5</ST> |
|
696 </inline> |
|
697 </condition> |
|
698 </transition> |
|
699 <selectionConvergence localId="16" height="1" width="154"> |
|
700 <position y="343" x="238"/> |
|
701 <connectionPointIn> |
|
702 <relPosition y="0" x="0"/> |
|
703 <connection refLocalId="14"> |
|
704 <position y="343" x="238"/> |
|
705 <position y="288" x="238"/> |
|
706 </connection> |
|
707 </connectionPointIn> |
|
708 <connectionPointIn> |
|
709 <relPosition y="0" x="154"/> |
|
710 <connection refLocalId="15"> |
|
711 <position y="343" x="392"/> |
|
712 <position y="318" x="392"/> |
|
713 </connection> |
|
714 </connectionPointIn> |
|
715 <connectionPointOut> |
|
716 <relPosition y="1" x="78"/> |
|
717 </connectionPointOut> |
|
718 </selectionConvergence> |
|
719 <jumpStep localId="19" height="13" width="12" targetName="Init"> |
|
720 <position y="369" x="310"/> |
|
721 <connectionPointIn> |
|
722 <relPosition y="0" x="6"/> |
|
723 <connection refLocalId="16"> |
|
724 <position y="369" x="316"/> |
|
725 <position y="344" x="316"/> |
|
726 </connection> |
|
727 </connectionPointIn> |
|
728 </jumpStep> |
|
729 <actionBlock localId="20" height="60" width="100"> |
|
730 <position y="232" x="441"/> |
|
731 <connectionPointIn> |
|
732 <relPosition y="15" x="0"/> |
|
733 <connection refLocalId="10"> |
|
734 <position y="247" x="441"/> |
|
735 <position y="247" x="416"/> |
|
736 </connection> |
|
737 </connectionPointIn> |
|
738 <action qualifier="N"> |
|
739 <reference name="ACT1"/> |
|
740 </action> |
|
741 <action qualifier="S"> |
|
742 <reference name="IN1"/> |
|
743 </action> |
|
744 </actionBlock> |
|
745 </SFC> |
|
746 </body> |
|
747 </pou> |
|
748 <pou name="STTest" pouType="functionBlock"> |
|
749 <interface> |
|
750 <inputVars> |
|
751 <variable name="Collision"> |
|
752 <type> |
|
753 <BOOL/> |
|
754 </type> |
|
755 </variable> |
|
756 <variable name="Gate"> |
|
757 <type> |
|
758 <BOOL/> |
|
759 </type> |
|
760 </variable> |
|
761 <variable name="Pump"> |
|
762 <type> |
|
763 <BOOL/> |
|
764 </type> |
|
765 </variable> |
|
766 <variable name="Temp"> |
|
767 <type> |
|
768 <INT/> |
|
769 </type> |
|
770 </variable> |
|
771 </inputVars> |
|
772 <outputVars> |
|
773 <variable name="Speed"> |
|
774 <type> |
|
775 <INT/> |
|
776 </type> |
|
777 </variable> |
|
778 <variable name="PumpSpeed"> |
|
779 <type> |
|
780 <INT/> |
|
781 </type> |
|
782 </variable> |
|
783 <variable name="Brakes"> |
|
784 <type> |
|
785 <BOOL/> |
|
786 </type> |
|
787 </variable> |
|
788 <variable name="Control_State"> |
|
789 <type> |
|
790 <BOOL/> |
|
791 </type> |
|
792 </variable> |
|
793 </outputVars> |
|
794 </interface> |
|
795 <body> |
|
796 <ST> |
|
797 IF Collision THEN |
|
798 Speed := 0; |
|
799 Brakes := ON; |
|
800 END_IF; |
|
801 |
|
802 IF (Gate = CLOSED) AND |
|
803 (Pump = ON) AND (Temp > 200.0) THEN |
|
804 Control_State := Active; |
|
805 ELSE |
|
806 Control_State := Hold; |
|
807 PumpSpeed := 10.0; |
|
808 END_IF; |
|
809 </ST> |
|
810 </body> |
|
811 </pou> |
|
812 </pous> |
|
813 </types> |
|
814 <instances> |
|
815 <configurations> |
|
816 <configuration name="ConfigTest"> |
|
817 <resource name="ResourceTest"> |
|
818 <task interval="10ms" name="Toto" priority="6"> |
|
819 <pouInstance type="SFCTest" name="Program1"/> |
|
820 </task> |
|
821 <globalVars> |
|
822 <variable name="Titi" address="M30"> |
|
823 <type> |
|
824 <INT/> |
|
825 </type> |
|
826 </variable> |
|
827 </globalVars> |
|
828 </resource> |
|
829 <globalVars> |
|
830 <variable name="Toto" address="M10"> |
|
831 <type> |
|
832 <INT/> |
|
833 </type> |
|
834 </variable> |
|
835 <variable name="Tutu" address="M20"> |
|
836 <type> |
|
837 <BOOL/> |
|
838 </type> |
|
839 </variable> |
|
840 </globalVars> |
|
841 </configuration> |
|
842 <configuration name="ConfigTest2"/> |
|
843 </configurations> |
|
844 </instances> |
|
845 </project> |