STEP7基本指令
STEP 7位邏輯指令可以分為位邏輯運算指令、定時(shí)器指令、計數器指令、位測試指令。
(1)位邏輯運算指令
位邏輯運算指令是對“0”和“1”的布爾操作數進(jìn)行掃描,經(jīng)過(guò)相應的位邏輯運算,將邏輯運算結果“0”和“1”送到狀態(tài)字的RLO位,包括AND、OR、RS觸發(fā)器等與S7-200基本類(lèi)似。
(2)定時(shí)器指令
定時(shí)器可以提供等待時(shí)間控制,還可產(chǎn)生一定寬度的脈沖,也可以測量時(shí)間。它是一種由位和字組成的復合單元,定時(shí)器的觸點(diǎn)由位表示,其定時(shí)時(shí)間值存儲在字存儲器中。STEP 7定時(shí)器可分為以下5種,如表3-4所示。
S7定時(shí)器可以用以下任一格式預裝入時(shí)間值:
◆W#16#wxyz,其中w = 時(shí)間基準(即時(shí)間間隔或分辨率);此處xyz = 以二進(jìn)制編碼的十進(jìn)制格式表示的時(shí)間值
◆S5T#aH_bM_cS_dMS,其中H = 小時(shí),M = 分鐘,S = 秒,MS = 毫秒;a、b、c、d由用戶(hù)定義。如自動(dòng)選擇時(shí)間基準,其值舍入為具有該時(shí)間基準的下一個(gè)較小的數字。
S7定時(shí)器可以輸入的最大時(shí)間值是9990s或2H_46M_30S,具體如:
S5TIME#4S = 4秒 s5t#2h_15m = 2小時(shí)15分鐘 S5T#1H_12M_18S = 1小時(shí)12分鐘18秒
(3)計數器指令
S7計數器用于對RLO正跳沿計數,計數器字中的0至11位包含二進(jìn)制代碼形式的計數值,當設置某個(gè)計數器時(shí),計數值移至計數器字,計數值的范圍為0至999,如圖1所示。
圖1 計數器的組成
可使用三種計數器指令在此范圍內改變計數值:S_CUD為雙向計數器;S_CD為降值計數器;S_CU為升值計數器。
2、數據指令
對于復雜的開(kāi)關(guān)量控制,尤其是點(diǎn)數多、過(guò)程復雜的項目來(lái)說(shuō),還必須了解STEP 7數據指令。STEP 7位數據指令可以分為裝載與傳送指令、比較指令、算術(shù)運算指令、數據邏輯運算指令、移位和循環(huán)移位指令、數據塊指令。
常見(jiàn)的數據包括:
(1)BCD碼。單個(gè)的十進(jìn)制數需要用4位二進(jìn)制數進(jìn)行編碼。之所以需要4位二進(jìn)制數表示是因為十進(jìn)制的最大數9需要至少4位二進(jìn)制數表示(1001)。為了用BCD碼表示十進(jìn)制數的 0-9,使用與二進(jìn)制數的相同表示方法。4位二進(jìn)制數共有16 可能組合,其中6種沒(méi)有使用。這些組合稱(chēng)作偽4位二進(jìn)制編碼。
(2)整數。數據類(lèi)型 INT 是整數 (16 位)。符號位 (第15位) 表示所處理的是正數還是負數(“0” = 正數, “1” = 負數)。整數的表示范圍是 -32 768~ +32 767。整數占用存儲器的一個(gè)字。用二進(jìn)制表示,一個(gè)整數的負數用其正數的補碼表示。所有的位取反加 “1” 可以得到正數的補碼。
(3)實(shí)數。實(shí)數 (也稱(chēng)浮點(diǎn)數) 是用十進(jìn)制數(例如 0.339 或 -11.32)表示的正數或負數。為了表示10的乘方次數,可以用冪的形式表示實(shí)數。例如: 1024 可以表示為1.024E3。實(shí)數占用存儲器的兩個(gè)字,最高位是符號位。其余的位代表指數和尾數。
評論