應(yīng)用領(lǐng)域 | 環(huán)保,地礦,能源,電子,交通 |
---|
6ES7214-1HF40-0XB0
SIMATIC S7-1200,CPU 1214 FC, 緊湊型 CPU,DC/DC/繼電器, 機(jī)載 I/O: 14 個(gè) 24V DC 數(shù)字輸入;10 DO 繼電器 2A; 2 AI 0-10V DC, 電源:直流 20.4-28.8V DC, 程序存儲(chǔ)器/數(shù)據(jù)存儲(chǔ)器 125 KB
![]() |
參考價(jià) | 面議 |
更新時(shí)間:2023-07-18 10:23:45瀏覽次數(shù):795
聯(lián)系我們時(shí)請(qǐng)說(shuō)明是化工儀器網(wǎng)上看到的信息,謝謝!
西門(mén)子S7-1200,CPU 1214 FC, 緊湊型 CPU
![]() | 6ES7214-1HF40-0XB0 SIMATIC S7-1200,CPU 1214 FC, 緊湊型 CPU,DC/DC/繼電器, 機(jī)載 I/O: 14 個(gè) 24V DC 數(shù)字輸入;10 DO 繼電器 2A; 2 AI 0-10V DC, 電源:直流 20.4-28.8V DC, 程序存儲(chǔ)器/數(shù)據(jù)存儲(chǔ)器 125 KB |
SCL 表達(dá)式和運(yùn)算
構(gòu)造 SCL 表達(dá)式
SCL 表達(dá)式是用于計(jì)算值的公式。表達(dá)式由操作數(shù)和運(yùn)算符(如 *、/、+ 或 -)組成。操作數(shù)可以是變量、常量或表達(dá)式。
表達(dá)式的計(jì)算按一定的順序進(jìn)行,具體由以下因素決定:
表達(dá)式的結(jié)果可用于將值分配給程序使用的變量、用作由控制語(yǔ)句使用的條件、用作其它 SCL 指令的參數(shù)或者用于調(diào)用代碼塊。
列表: SCL 中的運(yùn)算符
類(lèi)型 | 操作 | 操作員 | 優(yōu)先級(jí) |
---|---|---|---|
圓括號(hào) | (表達(dá)式) | ( , ) | 1 |
數(shù)學(xué) | 乘方 | ** | 2 |
符號(hào)(一元加號(hào)) | + | 3 | |
符號(hào)(一元減號(hào)) | - | 3 | |
倍增 | * | 4 | |
除法 | / | 4 | |
取模 | MOD | 4 | |
加法 | + | 5 | |
減法 | - | 5 | |
比較 | 小于 | < | 6 |
小于或等于 | <= | 6 | |
大于 | > | 6 | |
大于或等于 | >= | 6 | |
等于 | = | 7 | |
不等于 | <> | 7 | |
位邏輯 | 取反(一元) | NOT | 3 |
AND 邏輯運(yùn)算 | AND 或 & | 8 | |
異或邏輯運(yùn)算 | XOR | 9 | |
OR 邏輯運(yùn)算 | OR | 10 | |
賦值 | 賦值 | := | 11 |
作為一種高級(jí)編程語(yǔ)言,SCL 使用標(biāo)準(zhǔn)語(yǔ)句實(shí)現(xiàn)基本任務(wù):
以下示例顯示了用法不同的各種表達(dá)式:
"C" := #A+#B; | 將兩個(gè)局部變量之和賦值給一個(gè)變量 |
"Data_block_1".Tag := #A; | 為數(shù)據(jù)塊變量賦值 |
IF #A > #B THEN "C" := #A; | IF-THEN語(yǔ)句的條件 |
"C" := SQRT (SQR (#A) + SQR (#B)); | SQRT指令的參數(shù) |
算術(shù)運(yùn)算符可以處理各種數(shù)值數(shù)據(jù)類(lèi)型。結(jié)果的數(shù)據(jù)類(lèi)型取決于有效操作數(shù)的數(shù)據(jù)類(lèi)型。例如,使用 INT 操作數(shù)和 REAL 操作數(shù)的乘法運(yùn)算會(huì)產(chǎn)生 REAL 結(jié)果值。
控制語(yǔ)句
控制語(yǔ)句是 SCL 表達(dá)式的一種類(lèi)型,可用于執(zhí)行以下任務(wù):
SCL 控制語(yǔ)句包括 IF-THEN、CASE-OF、FOR-TO-DO、WHILE-DO、REPEAT-UNTIL、CONTINUE、GOTO 和 RETURN。
一條語(yǔ)句通常占一行代碼。可以在一行中輸入多條語(yǔ)句,或者可將一條語(yǔ)句斷開(kāi)成多行代碼以使代碼易于閱讀。分隔符(如制表符、換行符和多余空格)在語(yǔ)法檢查期間會(huì)被忽略。END 語(yǔ)句可終止控制語(yǔ)句。
以下示例顯示的是 FOR-TO-DO 控制語(yǔ)句。(兩種形式的代碼在語(yǔ)法上均有效。)
FOR x := 0 TO max DO sum := sum + value(x); END_FOR;
FOR x := 0 TO max DO sum := sum + value(x); END_FOR;
還可以為控制語(yǔ)句提供標(biāo)簽。用語(yǔ)句前的逗點(diǎn)將標(biāo)簽隔開(kāi):
Label: <Statement>;
有關(guān)完整的 SCL 編程語(yǔ)言參考,請(qǐng)參見(jiàn) STEP 7 在線幫助。
條件
條件是一個(gè)比較表達(dá)式或邏輯表達(dá)式,其結(jié)果為 BOOL 類(lèi)型(值為 TRUE 或 FALSE)。以下示例顯示了各種類(lèi)型的條件:
#Temperature > 50 #Counter <= 100 #CHAR1 < 'S' | 關(guān)系表達(dá)式 |
(#Alpha <> 12) AND NOT #Beta | 比較和邏輯表達(dá)式 |
5 + #Alpha | 算術(shù)表達(dá)式 |
條件可以使用算術(shù)表達(dá)式:
從 SCL 程序中調(diào)用其它代碼塊
要調(diào)用用戶(hù)程序中的其它代碼塊,只需使用參數(shù)輸入 FB 或 FC 的名稱(chēng)(或地址)。對(duì)于 FB,還必須提供 FB 待調(diào)用的背景數(shù)據(jù)塊。
<DB 名稱(chēng)> (參數(shù)列表) | 作為單個(gè)背景調(diào)用 |
<#背景名稱(chēng)> (參數(shù)列表) | 作為多重背景調(diào)用 |
"MyDB"(MyInput:=10, MyInOut:="Tag1");
<FC 名稱(chēng)> (參數(shù)列表) | 標(biāo)準(zhǔn)調(diào)用 |
<操作數(shù)>:=<FC 名稱(chēng)> (參數(shù)列表) | 在表達(dá)式中調(diào)用 |
"MyFC"(MyInput:=10, MyInOut:="Tag1");
還可將塊從導(dǎo)航樹(shù)中拖動(dòng)到 SCL 程序編輯器中,然后完成參數(shù)分配。
將塊注釋添加到 SCL 代碼
可通過(guò)在 (* 和 *) 之間加入注釋文本,將塊注釋添加到 SCL 代碼中??稍?(* 和 *) 之間添加任意數(shù)目的注釋行。SCL 程序塊可能包括多個(gè)塊注釋。為方便編程,SCL 編輯器包括一個(gè)塊注釋按鈕和通用控制語(yǔ)句:
尋址
與 LAD 和 FBD 一樣,SCL 允許用戶(hù)在用戶(hù)程序中使用變量地址(符號(hào)尋址)或地址。SCL 還允許使用變量作為數(shù)組索引。
尋址 | |
%I0.0 | 在地址之前加上“%”符號(hào)。沒(méi)有“%”,STEP 7 將在編譯時(shí)生成未定義的變量錯(cuò)誤。 |
%MB100 |
符號(hào)尋址 | |
"PLC_Tag_1" | PLC 變量表中的變量 |
"Data_block_1".Tag_1 | 數(shù)據(jù)塊中的變量 |
"Data_block_1".MyArray[#i] | 數(shù)據(jù)塊數(shù)組中的數(shù)組元素 |
西門(mén)子S7-1200,CPU 1214 FC, 緊湊型 CPU