CoDeSys+*Œ €@@2.3.10.0@?@Й:N +@^:Nq:\eigene dateien\summerst\Ц@qE:\TWINCAT\PLC\LIB\STANDARD.LIB@CONCATSTR1§џSTR2§џCONCATФн66€џџџџCTDM§џ Variable for CD Edge DetectionCD§џ Count Down on rising edge LOAD§џ Load Start Value PV§џ Start Value Q§џ  Counter reached 0 CV§џ  Current Counter Value Фн66€џџџџCTUM§џ Variable for CU Edge Detection CU§џ Count Up RESET§џ Reset Counter to 0 PV§џ Counter Limit Q§џ  Counter reached the Limit CV§џ  Current Counter Value Фн66€џџџџCTUDMU§џ Variable for CU Edge Detection MD§џ Variable for CD Edge Detection CU§џ Count Up CD§џ Count Down RESET§џ  Reset Counter to Null LOAD§џ  Load Start Value PV§џ  Start Value / Counter Limit QU§џ Counter reached Limit QD§џ Counter reached Null CV§џ Current Counter Value Фн66€џџџџDELETESTR§џLEN§џPOS§џDELETEФн66€џџџџF_TRIGM§џ CLK§џ Signal to detect Q§џ Edge detected Фн66€џџџџFINDSTR1§џSTR2§џFINDФн66€џџџџINSERTSTR1§џSTR2§џPOS§џINSERTФн66€џџџџLEFTSTR§џSIZE§џLEFTФн66€џџџџLENSTR§џLENФн66€џџџџMIDSTR§џLEN§џPOS§џMIDФн66€џџџџR_TRIGM§џ CLK§џ Signal to detect Q§џ Edge detected Фн66€џџџџREPLACESTR1§џSTR2§џL§џP§џREPLACEФн66€џџџџRIGHTSTR§џSIZE§џRIGHTФн66€џџџџRSSET§џRESET1§џQ1§џ Фн66€џџџџSEMAX§џCLAIM§џ RELEASE§џ BUSY§џ Фн66€џџџџSRSET1§џRESET§џQ1§џ Фн66€џџџџTOFM§џ  internal variable StartTime§џ internal variable IN§џ? starts timer with falling edge, resets timer with rising edge PT§џ time to pass, before Q is set Q§џ 2 is FALSE, PT seconds after IN had a falling edge ET§џ  elapsed time Фн66€џџџџTONM§џ  internal variable StartTime§џ internal variable IN§џ? starts timer with rising edge, resets timer with falling edge PT§џ time to pass, before Q is set Q§џ 0 is TRUE, PT seconds after IN had a rising edge ET§џ  elapsed time Фн66€џџџџTP StartTime§џ  internal variable IN§џ! Trigger for Start of the Signal PT§џ' The length of the High-Signal in 10ms Q§џ The pulse ET§џ & The current phase of the High-Signal Фн66€џџџџR@MACHINEX_pos!Y_pos!Counter!INIT_INITGO_RIGHT _GO_RIGHTGO_DOWN_GO_DOWNGO_LEFT_GO_LEFTGO_UP_GO_UPCOUNT_COUNTЙ:N@џџџџMAINTrig1 R_TRIG Trig2 F_TRIG Timer2 TON Timer1 TOF Й:N@џџџџ Ћ !%"&'()(єKKKK3@+КЛlocalhostуТТw)Јѓ@имж|и”\Уwp СwџџџџуТТw>3єјЈѓ@Јѓ@@­РЌзрЋР`рЋРшЋРGиџџhеазДз щ|р‘|џџџџл‘|єјЈѓ@єјЈѓ@ф’у`”Oџџџџ|иф’уx”OџџџџˆиН8у,,K@Й:N/*BECKCONFI3*/ !@@€€3 Standard Й:NVAR_GLOBAL END_VAR "Standard MAINџџџџџџџџЙ:N$ћџџџStandard^:N ^:N Й:NVAR_CONFIG END_VAR ',sU,Global_VariablesЙ:N Й:NesVaabs UVAR_GLOBAL Observer: BOOL; Warning: BOOL; Stop: BOOL; Start: BOOL; END_VAR ' дVariable_ConfigurationЙ:N Й:N so2VAR_CONFIG END_VAR €|0|0@v@TMS Sans Serif@ HH':'mm':'ssdd'-'MM'-'yyyydd'-'MM'-'yyyy HH':'mm':'ssѓџџџњџџџџЬ3џџџџџџџDEFAULTSystem€|0|0@v@TMS Sans Serif@ HH':'mm':'ssdd'-'MM'-'yyyydd'-'MM'-'yyyy HH':'mm':'ssѓџџџ HH':'mm':'ssdd'-'MM'-'yyyy'!,Vќџщ)MachineЙ:N Й:Nib*.b@crIPROGRAM Machine VAR X_pos: INT; Y_pos: INT; Counter: INT; END_VAR Init#Дrџџ Action InitЏ:N;StartGo_Right"ДrџџAction Go_RightЏ:NX_pos :=X_pos+1;  X_pos = 100Go_Down%ДrџџAction Go_DownЏ:NY_pos:=Y_pos+1; Y_pos = 100Go_Left&ДrџџAction Go_LeftЏ:NX_pos := X_pos -1;  X_pos = 0Go_Up'Дrџџ Action Go_UpЏ:NY_pos := Y_pos-1;  Y_pos = 0Count(Дrџџ Action CountЏ:NCounter := Counter +1; TRUEInitd ,џџћџQrMAINЙ:N Й:NZPROGRAM MAIN VAR Trig1: R_TRIG; Trig2: F_TRIG; Timer2: TON; Timer1: TOF; END_VAR…Timer1Trig1AObserverR_TRIGETrig2AObserverF_TRIGORAT#10sTOFWarningTimer2WarningAT#5sTONStopStop???џMachined ),1@ПB OBSERVATIONЙ:N @†ЉKN d @((AзДџџџџџџџѓџ@ @<<-eДP€џ  .ObserverOKѓџ .Observer@ @T(mзрџџџџџџџѓџ@ @h<OeлPџ€.StartStartѓџ.Start@ @n–ћДзџ€€џ.WarningWarningѓџ@ @n,ћЏДmџ€€џ.StopStop ѓџ@ @| EёрШџџџџџџMachine.Counter Counter :%s ѓџ@ @hЭ7š€џџџџ Machine.X_pos Machine.Y_pos ѓџ@џџџџџџџџџРРР€€€€€€€€€€€€§џџџ,ћџу"STANDARD.LIB 5.6.98 11:03:02@FДw5CONCAT@ CTD@ CTU@ CTUD@ DELETE@ F_TRIG@ FIND@ INSERT@ LEFT@ LEN@ MID@ R_TRIG@ REPLACE@ RIGHT@RS@ SEMA@SR@ TOF@ TON@TP@Global Variables 0@2џџџџџџџџџџџџџџџџ њџџџˆ>ŒЋјџџџPOUsMachine!MAIN џџџџ Data typesџџџџVisualizations Observation)џџџџGlobal VariablesGlobal_VariablesVariable_Configuration џџџџ^:N localhostP localhostP localhostPС…a