1、根據實際的裝置及組裝順序進行組态。下圖是我實際添加裝置。
x

2、建立兩個程式組織單元,PLC_PRG和POU。在程式組織單元PLC_PRG下添加兩個動作“跑馬燈”和“跑馬燈2”,然後再将程式組織單元POU添加進任務當中。
在動作“跑馬燈”下編寫程式:
flag := flag +1;
IF flag = 2 THEN
flag := 0;
ivar := ROL(ivar, 1);
END_IF
在動作“跑馬燈2”下編寫程式:
flag_1 := flag_1 +1; //計時标志,加1表示500ms
IF flag_1 = 2 THEN //計時1s時間到
flag_1 := 0; //标志清零
ivar_1 := ROL(ivar_1, 1); //循環左移1位
END_IF
在程式組織單元PLC_PRG建立變量,并調用動作“跑馬燈”:
//變量聲明
PROGRAM PLC_PRG
VAR
ivar : BYTE := 1;
flag : BYTE := 0;
ivar_1 : BYTE := 1;
flag_1 : BYTE := 0;
END_VAR
//程式
跑馬燈();
在程式組織單元中POU中調用程式組織單元PLC_PRG和動作“跑馬燈2”:
//動作均建立在PLC_PRG程式組織單元下
PLC_PRG(); //先在PLC_PRG中調用動作“跑馬燈”,然後在POU中調用PLC_PRG
PLC_PRG.跑馬燈2(); //直接在POU中調用動作"跑馬燈2"
因為在PLC_PRG中已經調用了“跑馬燈”,是以在POU中調用既可以運作“跑馬燈”程式,但無法運作“跑馬燈2” 。也可以在POU中直接調用“跑馬燈2”程式。
最後将變量映射到IO上即可。