此場景利用IEC61331-3 SCL語法撰寫,程式代碼共26行。

現在很多大品牌的PLC 都支持國際電工委員會 IEC61131 標準中規範的五種程式語言的混合編程,即梯形圖(LD)、結構化文本(ST)、流程圖(SFC)、指令表(IL)和功能塊(FB)。

西門子所講的SCL就是ST語法。此語法也是近似於C#語言,因此很適合推廣給對結構化程式有興趣的人使用。

 

---------------------------------------------------------------------------------------------------------------------------

程式代碼

DATA_BLOCK "F"
{InstructionName := 'F_TRIG';
LibVersion := '1.0';
S7_Optimized_Access := 'TRUE' }
AUTHOR : SIMATIC
FAMILY : BIT
NAME : F_TRIG
VERSION : 1.0
NON_RETAIN
F_TRIG

BEGIN

END_DATA_BLOCK

DATA_BLOCK "R"
{InstructionName := 'R_TRIG';
LibVersion := '1.0';
S7_Optimized_Access := 'TRUE' }
AUTHOR : SIMATIC
FAMILY : BIT
NAME : R_TRIG
VERSION : 1.0
NON_RETAIN
R_TRIG

BEGIN

END_DATA_BLOCK

FUNCTION "SCL_FC" : Void
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1

BEGIN
"R"(CLK := "At exit");
"F"(CLK := "Vision sensor" > 0);
IF "Auto" AND ("Start" OR "R".Q) THEN
"Entry conveyor" := 1;
END_IF;
IF "F".Q THEN
"Entry conveyor" := 0;
END_IF;
IF "Vision sensor" > 0 AND "Entry conveyor" = 1 THEN
"Exit conveyor" := 1;
END_IF;
IF "Vision sensor" = 1 OR "Vision sensor" = 4 AND "Exit conveyor" = 1 THEN
"Sorter 1 turn" := "Sorter 1 belt" := 1;
END_IF;
IF "Vision sensor" = 2 OR "Vision sensor" = 5 AND "Exit conveyor" = 1 THEN
"Sorter 2 turn" := "Sorter 2 belt" := 1;
END_IF;
IF "Vision sensor" = 3 OR "Vision sensor" = 6 AND "Exit conveyor" = 1 THEN
"Sorter 3 turn" := "Sorter 3 belt" := 1;
END_IF;
IF "R".Q THEN
"Sorter 1 belt" := "Sorter 1 turn" := "Sorter 2 belt" := "Sorter 2 turn" := "Sorter 3 belt" := "Sorter 3 turn" := 0;
END_IF;
IF "Emergency stop" = 0 OR "Stop" = 0 THEN
"Entry conveyor" := "Exit conveyor" := "Sorter 1 belt" := "Sorter 1 turn" := "Sorter 2 belt" := "Sorter 2 turn" := "Sorter 3 belt" := "Sorter 3 turn" := 0;
END_IF;
END_FUNCTION

 

 

分格線---------------------------------------------------------------------------------------------------------------------------

我是Bob, 一起討論Siemens SIMATIC TIA portal PLC S7-400 S7-300 S7-1500 S7-1200 ET200SP S7-200 LOGO HMI Panel I4.0 西門子 自動化 工業4.0 HMS Ewon Anybus Codesys

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Bob 的頭像
    Bob

    鮑伯的PLC事件 (Bob's Blog)

    Bob 發表在 痞客邦 留言(0) 人氣()