西門子AE08模擬量輸入模塊
SCL 表達(dá)式和運(yùn)算
構(gòu)造 SCL 表達(dá)式
SCL 表達(dá)式是用于計(jì)算值的公式。表達(dá)式由操作數(shù)和運(yùn)算符(如 *、/、+ 或 -)組成。操作
數(shù)可以是變量、常量或表達(dá)式。
表達(dá)式的計(jì)算按一定的順序進(jìn)行,具體由以下因素決定:
●
每個運(yùn)算符均具有預(yù)定義的優(yōu)先級,首先執(zhí)行優(yōu)先級的運(yùn)算。
●
按從左至右的順序處理優(yōu)先級相同的運(yùn)算符。
●
可使用圓括號要一起計(jì)算的一系列運(yùn)算符。
西門子AE08模擬量輸入模塊
表達(dá)式的結(jié)果可用于將值分配給程序使用的變量、用作由控制語句使用的條件、用作其它
SCL 指令的參數(shù)或者用于調(diào)用代碼塊。
或輸出。
控制語句
控制語句是 SCL 表達(dá)式的一種類型,可用于執(zhí)行以下任務(wù):
●
程序分支
●
重復(fù) SCL 編程代碼的某些部分
●
跳轉(zhuǎn)到 SCL 程序的其它部分
●
按條件執(zhí)行
SCL 控制語句包括 IF-THEN、CASE-OF、FOR-TO-DO、WHILE-DO、REPEAT-UNTIL、
CONTINUE、GOTO 和 RETURN。
一條語句通常占一行代碼??梢栽谝恍兄休斎攵鄺l語句,或者可將一條語句斷開成多行代碼
以使代碼易于閱讀。分隔符(如制表符、換行符和多余空格)在語法檢查期間會被忽略。
END 語句可終止控制語句。 使用 PEEK 和 POKE 指令進(jìn)行索引尋址
SCL 提供 PEEK 和 POKE 指令,可用來從數(shù)據(jù)塊、I/O 或存儲器中讀取內(nèi)容或是向其中寫
入內(nèi)容。而您提供操作中具體字節(jié)偏移量或位偏移量的參數(shù)。
說明
與數(shù)據(jù)塊一起使用 PEEK 和 POKE 指令時,必須使用標(biāo)準(zhǔn)(未優(yōu)化的)數(shù)據(jù)塊。同時需要
注意 PEEK 和 POKE 指令僅用于傳輸數(shù)據(jù)。它們無法識別地址中的數(shù)據(jù)類型。
LAD、FBD 和 SCL 的 EN 和 ENO
確定指令的“能流”(EN 和 ENO)
特定指令(如數(shù)學(xué)和移動指令)為 EN 和 ENO 提供參數(shù)。 這些參數(shù)與 LAD 或 FBD 中的能
流有關(guān)并確定在該掃描期間是否執(zhí)行指令。 SCL 還允許用戶為代碼塊設(shè)置 ENO 參數(shù)。
● EN(使能輸入)是布爾輸入。 要執(zhí)行功能框指令,能流 (EN = 1) 必須出現(xiàn)在此輸入端。
如果 LAD 框的 EN 輸入直接連接到左側(cè)電源線,將始終執(zhí)行該指令。
● ENO(使能輸出)是布爾輸出。 如果該功能框在 EN 輸入端有能流且正確執(zhí)行了其功能,
則 ENO 輸出會將能流 (ENO = 1) 傳遞到下一個元素。 如果執(zhí)行功能框指令時檢測到錯
誤,則在產(chǎn)生該錯誤的功能框指令處終止該能流 (ENO = 0)。