tauchbad.awlpro 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2. <!-- Awlsim project file generated by awlsim-0.66.0-pre -->
  3. <awlsim_project date_create="2015-03-19 19:32:01.899746"
  4. date_modify="2018-07-08 18:00:11.892656"
  5. format_version="1">
  6. <!-- CPU core configuration -->
  7. <cpu>
  8. <!-- CPU core feature specification -->
  9. <specs call_stack_size="256"
  10. nr_accus="2"
  11. nr_counters="256"
  12. nr_flags="2048"
  13. nr_inputs="128"
  14. nr_localbytes="1024"
  15. nr_outputs="128"
  16. nr_timers="256"
  17. parenthesis_stack_size="7" />
  18. <!-- CPU core configuration -->
  19. <config clock_memory_byte="-1"
  20. cycle_time_limit_us="1000000"
  21. ext_insns_enable="0"
  22. mnemonics="0"
  23. ob_startinfo_enable="0"
  24. run_time_limit_us="-1" />
  25. </cpu>
  26. <!-- AWL/STL language configuration -->
  27. <language_awl>
  28. <!-- AWL/STL source code -->
  29. <source enabled="1"
  30. name="OB1"
  31. type="0"><![CDATA[
  32. ORGANIZATION_BLOCK OB 1
  33. VAR_TEMP
  34. OB1_EV_CLASS : BYTE; // Bits 0-3 = 1 (Coming event), Bits 4-7 = 1 (Event class 1)
  35. OB1_SCAN_1 : BYTE; // 1 (Cold restart scan 1 of OB 1), 3 (Scan 2-n of OB 1)
  36. OB1_PRIORITY : BYTE; // Priority of OB execution
  37. OB1_OB_NUMBR : BYTE; // 1 (Organization block 1, OB 1)
  38. OB1_RESERVED_1 : BYTE;
  39. OB1_RESERVED_2 : BYTE;
  40. OB1_PREV_CYCLE : INT; // Cycle time of previous OB 1 scan (milliseconds)
  41. OB1_MIN_CYCLE : INT; // Minimum cycle time of OB 1 (milliseconds)
  42. OB1_MAX_CYCLE : INT; // Maximum cycle time of OB 1 (milliseconds)
  43. OB1_DATE_TIME : DATE_AND_TIME; // Date and time OB 1 started
  44. END_VAR
  45. BEGIN
  46. CALL "tauchbad_aufruf", DB 1
  47. END_ORGANIZATION_BLOCK
  48. ]]></source>
  49. <!-- AWL/STL source code -->
  50. <source enabled="1"
  51. name="Tauchbad"
  52. type="0"><![CDATA[
  53. FUNCTION_BLOCK "tauchbad"
  54. TITLE =
  55. VERSION : 0.1
  56. VAR_INPUT
  57. anlage_aus : BOOL ;
  58. taster_korb : BOOL ;
  59. endlage_oben : BOOL ;
  60. endlage_unten : BOOL ;
  61. anzahl_tauchvorgaenge : INT ;
  62. verweilzeit : TIME ;
  63. END_VAR
  64. VAR_OUTPUT
  65. korb_ab : BOOL ;
  66. korb_auf : BOOL ;
  67. auto_aktiv : BOOL ;
  68. END_VAR
  69. VAR
  70. zaehler : "CTD";
  71. zeit_TON : "TON";
  72. abfahrt : BOOL ;
  73. automatik : BOOL ;
  74. END_VAR
  75. VAR_TEMP
  76. anzahl_erreicht : BOOL ;
  77. zeit_abgelaufen : BOOL ;
  78. END_VAR
  79. BEGIN
  80. NETWORK
  81. TITLE =Zaehler der Tauchvorgaenge
  82. UN #anlage_aus;
  83. U #endlage_unten;
  84. = L 1.0;
  85. BLD 103;
  86. UN #anlage_aus;
  87. U #endlage_oben;
  88. U #taster_korb;
  89. = L 1.1;
  90. BLD 103;
  91. CALL #zaehler (
  92. CD := L 1.0,
  93. LOAD := L 1.1,
  94. PV := #anzahl_tauchvorgaenge,
  95. Q := #anzahl_erreicht);
  96. NOP 0;
  97. NETWORK
  98. TITLE =Verweilzeit an unterer Endlage
  99. UN #anlage_aus;
  100. U #endlage_unten;
  101. = L 1.0;
  102. BLD 103;
  103. CALL #zeit_TON (
  104. IN := L 1.0,
  105. PT := #verweilzeit,
  106. Q := #zeit_abgelaufen);
  107. NOP 0;
  108. NETWORK
  109. TITLE =Signalerzeugung: Korb abfahrt/auffahrt
  110. U( ;
  111. UN #anlage_aus;
  112. U #taster_korb;
  113. U #endlage_oben;
  114. U #anzahl_erreicht;
  115. O ;
  116. UN #anlage_aus;
  117. U #endlage_oben;
  118. UN #anzahl_erreicht;
  119. ) ;
  120. S #abfahrt;
  121. UN #anlage_aus;
  122. U #endlage_unten;
  123. U #zeit_abgelaufen;
  124. R #abfahrt;
  125. NOP 0;
  126. NETWORK
  127. TITLE =Ausgangszuweisung: Abfahrt/Auffahrt
  128. U #abfahrt;
  129. = L 1.0;
  130. U L 1.0;
  131. UN #anlage_aus;
  132. = #korb_ab;
  133. UN L 1.0;
  134. UN #anlage_aus;
  135. = #korb_auf;
  136. NETWORK
  137. TITLE =Signalerzeugung: Anzeige Automatikbetrieb
  138. U( ;
  139. U #anzahl_erreicht;
  140. U #endlage_oben;
  141. O #anlage_aus;
  142. ) ;
  143. R #automatik;
  144. UN #anlage_aus;
  145. U #taster_korb;
  146. U #endlage_oben;
  147. S #automatik;
  148. U #automatik;
  149. = #auto_aktiv;
  150. END_FUNCTION_BLOCK
  151. FUNCTION_BLOCK "tauchbad_aufruf"
  152. TITLE =
  153. VERSION : 0.1
  154. VAR
  155. bad1 : "tauchbad";
  156. bad2 : "tauchbad";
  157. bad3 : "tauchbad";
  158. END_VAR
  159. BEGIN
  160. NETWORK
  161. TITLE =
  162. U E 1.0;
  163. = L 0.0;
  164. BLD 103;
  165. U E 1.1;
  166. = L 0.1;
  167. BLD 103;
  168. U E 2.1;
  169. = L 0.2;
  170. BLD 103;
  171. U E 3.1;
  172. = L 0.3;
  173. BLD 103;
  174. CALL #bad1 (
  175. anlage_aus := L 0.0,
  176. taster_korb := L 0.1,
  177. endlage_oben := L 0.2,
  178. endlage_unten := L 0.3,
  179. anzahl_tauchvorgaenge := EW 10,
  180. verweilzeit := T#5S,
  181. korb_ab := A 4.1,
  182. korb_auf := A 4.4,
  183. auto_aktiv := A 5.1);
  184. NOP 0;
  185. NETWORK
  186. TITLE =
  187. U E 1.0;
  188. = L 0.0;
  189. BLD 103;
  190. U E 1.2;
  191. = L 0.1;
  192. BLD 103;
  193. U E 2.2;
  194. = L 0.2;
  195. BLD 103;
  196. U E 3.2;
  197. = L 0.3;
  198. BLD 103;
  199. CALL #bad2 (
  200. anlage_aus := L 0.0,
  201. taster_korb := L 0.1,
  202. endlage_oben := L 0.2,
  203. endlage_unten := L 0.3,
  204. anzahl_tauchvorgaenge := EW 12,
  205. verweilzeit := T#10S,
  206. korb_ab := A 4.2,
  207. korb_auf := A 4.5,
  208. auto_aktiv := A 5.2);
  209. NOP 0;
  210. NETWORK
  211. TITLE =
  212. U E 1.0;
  213. = L 0.0;
  214. BLD 103;
  215. U E 1.3;
  216. = L 0.1;
  217. BLD 103;
  218. U E 2.3;
  219. = L 0.2;
  220. BLD 103;
  221. U E 3.3;
  222. = L 0.3;
  223. BLD 103;
  224. CALL #bad3 (
  225. anlage_aus := L 0.0,
  226. taster_korb := L 0.1,
  227. endlage_oben := L 0.2,
  228. endlage_unten := L 0.3,
  229. anzahl_tauchvorgaenge := EW 14,
  230. verweilzeit := T#15S,
  231. korb_ab := A 4.3,
  232. korb_auf := A 4.6,
  233. auto_aktiv := A 5.3);
  234. NOP 0;
  235. END_FUNCTION_BLOCK
  236. ]]></source>
  237. <!-- AWL/STL source code -->
  238. <source enabled="1"
  239. name="DB"
  240. type="0"><![CDATA[
  241. DATA_BLOCK DB 1
  242. "tauchbad_aufruf"
  243. BEGIN
  244. END_DATA_BLOCK
  245. ]]></source>
  246. </language_awl>
  247. <!-- Symbol table configuration -->
  248. <symbols>
  249. <!-- symbol table source code -->
  250. <source enabled="1"
  251. name="symbol table"
  252. type="3"><![CDATA[
  253. 126,array_db DB 60 DB 60
  254. 126,array_uebung FC 60 FC 60
  255. 126,BLKMOV SFC 20 SFC 20 Copy Variables
  256. 126,CREAT_DB SFC 22 SFC 22 Create Data Block
  257. 126,CTD SFB 1 SFB 1 Count Down
  258. 126,CTU SFB 0 SFB 0 Count Up
  259. 126,date_and_time_db DB 20 DB 20
  260. 126,date_and_time_uebung FC 8 FC 8
  261. 126,db_dynamisch FC 20 FC 20
  262. 126,db_zugriff FC 7 FC 7
  263. 126,dbtest_fb FB 40 FB 40
  264. 126,dbtest_fc FC 10 FC 10
  265. 126,DEL_DB SFC 23 SFC 23 Delete Data Block
  266. 126,DELETE FC 104 FC 104 Delete String
  267. 126,DT_DAY FC 107 FC 107 DT to DAY
  268. 126,flankenerkennung FB 20 FB 20
  269. 126,impulszaehler FB 30 FB 30
  270. 126,impulszaehler_aufruf FB 31 FB 31
  271. 126,laufbandsteuerung FC 3 FC 3
  272. 126,laufbandsteuerung_aufrufFC 4 FC 4
  273. 126,Motor UDT 99 UDT 99
  274. 126,multiinst_aufruf FB 100 FB 100
  275. 126,pufferspeicher FC 5 FC 5
  276. 126,pufferspeicher_aufruf FC 6 FC 6
  277. 126,READ_CLK SFC 1 SFC 1 Read System Clock
  278. 126,Rollfeld_Motor_aufruf FC 53 FC 53
  279. 126,Rollfeld_Motor_FC FC 52 FC 52
  280. 126,Rollfeld_Motoren DB 51 DB 51
  281. 126,SB_DT_DT FC 34 FC 34 Subtract DT - DT
  282. 126,stoeranzeige_fb FB 1 FB 1
  283. 126,stoeranzeige_fc FC 1 FC 1
  284. 126,string_db DB 50 DB 50
  285. 126,string_uebung FC 50 FC 50
  286. 126,taktgenerator FB 15 FB 15
  287. 126,taktgenerator_aufruf FB 16 FB 16
  288. 126,tauchbad FB 10 FB 10
  289. 126,tauchbad_aufruf FB 11 FB 11
  290. 126,TEST_DB SFC 24 SFC 24 Test Data Block
  291. 126,TON SFB 4 SFB 4 Generate an On Delay
  292. 126,TP SFB 3 SFB 3 Generate a Pulse
  293. 126,zaehler_fc FC 2 FC 2
  294. ]]></source>
  295. </symbols>
  296. <!-- Core server link configuration -->
  297. <core_link>
  298. <!-- Locally spawned core server -->
  299. <spawn_local enable="1"
  300. interpreters="$DEFAULT"
  301. port_range_begin="4183"
  302. port_range_end="8278" />
  303. <!-- Remote server connection -->
  304. <connect host="localhost"
  305. port="4151"
  306. timeout_ms="3000" />
  307. <!-- Transport tunnel -->
  308. <tunnel local_port="-1"
  309. type="0">
  310. <ssh executable="ssh"
  311. port="22"
  312. user="pi" />
  313. </tunnel>
  314. </core_link>
  315. <!-- Graphical user interface configuration -->
  316. <gui>
  317. <editor autoindent="1"
  318. paste_autoindent="1"
  319. validation="1" />
  320. </gui>
  321. </awlsim_project>