歐姆龍PLC功能指令
圖13 SFT指令
7、通道移位指令WSFT(FUN 16)
WSFT指令在梯形圖中的符號如圖14所示。
圖14 WSFT指令在梯形圖中的指令
WSFT是通道移位指令,也稱(chēng)為并行移位指令,它以通道(16位)為單位進(jìn)行移位,所以必須設置兩個(gè)數據:開(kāi)始通道號D1和結束通道號D2。WSFT可使用的通道為輸出繼電器通道、 內部輔助繼電器通道、保持繼電器通道及數據存儲通道。開(kāi)始通道和結束通道必須是同一類(lèi)通道,并要保證開(kāi)始通道號小于結束通道號。(http://www.diangon.com/版權所有)當移位條件變?yōu)镺N時(shí),CPU每掃描一次程序就執行一次WSFT指令,進(jìn)行一次通道移位,執行WSFT時(shí),開(kāi)始通道的內容移到其下一通道(同時(shí)開(kāi)始通道的內容變?yōu)?),下一通道的內容又移到其下一通道……結束通道的內容被其上一通道覆蓋。如果只想執行一次通道移位操作,應該使用DIFU或DIFD命令?!∪鐖D15所示。
圖15 WSFT指令
圖15中,設在執行WSFT指令之前10、11和12通道的內容分別為:
8、十進(jìn)制→二進(jìn)制轉換指令BIN(FUN 23)和二進(jìn)制→十進(jìn)制轉換指令BCD(FUN 24)
BIN和BCD指令在梯形圖中的符號如圖16所示。
圖16 BIN和BCD指令在梯形圖中的符號
BIN指令的功能是將源通道S中的4位十進(jìn)制數(BCD碼)轉換成16位二進(jìn)制數,再存放到目的通道D中。
BCD指令的功能是將源通道S中的16位二進(jìn)制數轉換成4位十進(jìn)制數(BCD碼),存放到目的通道D中去。
BIN和BCD指令可使用的源通道為:輸入繼電器通道、輸出繼電器通道、定時(shí)器/計數器通道、保持繼電器通道和數據存儲器通道,可使用的目的通道為:輸出繼電器通道、保持繼電器通道和數據存儲器通道。執行BIN或BCD指令時(shí),如轉換的結果為“0”,則1906為ON。
圖17所示是當0002為ON時(shí),將10通道中的4位十進(jìn)制數(BCD碼形式)轉換為16位二進(jìn)制數,存放到HR1通道中去。如執行BIN指令前10通道存放的數據為3721(見(jiàn)表1),則執行BIN指令后HR1如表2所示。
圖17 BIN指令
表1 CH10
表2 HR1
9、比較指令CMP(FUN 20)
CMP指令在梯形圖中的符號如果18所示。
圖18 CMP指令在梯形圖中的符號
CMP為比較指令,其功能是將一個(gè)通道的內容或一個(gè)4位十六進(jìn)制常數(S1)與另一個(gè)通道的內容或4位十六進(jìn)制常數(S2)進(jìn)行比較。S1和S2中至少要有一個(gè)是通道內容,不能兩個(gè)都是常數。
CMP指令可使用的通道或常數為輸入/輸出繼電器通道、 內部輔助繼電器通道、保持繼電器通道、定時(shí)器/計數器通道數據存儲通道及0000~FFFF的常數。
比較后,如果S1>S2,則專(zhuān)用內部輔助繼電器1905為ON;如果S1=S2,則專(zhuān)用內部輔助繼電器1906為ON;如果S1 圖19 CMP指令 10、傳送指令MOV(FUN 21)和取反傳送指令MVN(FUN 22) MOV和MVN指令在梯形圖中的符號如圖20所示。 MOV指令將源通道S中的內容或一個(gè)4位十六進(jìn)制常數傳送到目的通道D中去;而MVN指令則是先將源通道S中的內容取反后(即0→1,1→0)再傳送到目的通道中去。MOV及MVN指令使用的通道和常數如表3所示。 圖20 MOV和MVN指令在梯形圖中的符號 表3 MOV及MVN指令使用的通道和常數 執行MOV指令時(shí),如果源通道S中的內容全為“0”,或執行MVN指令時(shí)源通道S中的內容全為“1”,則專(zhuān)用內部輔助繼電器1906(零標志)為ON。 圖21中,當0002為ON時(shí),CPU每掃描一次程序,就執行一次MOV及MVN指令,如果希望0002每得電(ON)一次只進(jìn)行一次傳送,應使用DIFU或DIFD指令。 圖21 MOV、MVN指令 應用傳送指令還可以實(shí)現在程序運行時(shí)改變定時(shí)器和計數器的設定值(此時(shí)通道內容必須是4位BCD碼,否則1903為ON,使MOV指令不能執行),如圖22所示。 圖22 用MOV指令改變定時(shí)器的設定值 圖22所示是把HR1通道的內容作為定時(shí)器TIM01的設定值,當0002為ON時(shí),TIM01的設定值為10 s,10 s后輸出繼電器0500變?yōu)镺N。當0003為ON時(shí),TIM01的設定值為30 s,30 s 之后0500變?yōu)镺N。如果0002和0003同時(shí)為ON,TIM01不動(dòng)作。 11、置進(jìn)位標志指令STC(FUN 40)和清進(jìn)位標志指令CLC(FUN 41) STC和CLC指令在梯形圖中的符號如圖23所示。 STC指令把進(jìn)位標志1904置為ON。 CLC指令把進(jìn)位標志1904置為OFF。在執行ADD和SUB指令前需用CLC指令對進(jìn)位標志位進(jìn)行清零。 圖23 STC和CLC指令在梯形圖中的符號 12. 加法指令ADD(FUN 30)和減法指令SUB(FUN 31) ADD和SUB指令在梯形圖中的符號如圖24所示。 圖24 ADD和SUB指令在梯形圖中的符號 加法指令ADD用于兩個(gè)4位數的相加,即將被加數通道S1中的內容加上加數通道S2中的內容或一個(gè)常數,其結果送到和通道D。 減法指令SUB用于兩個(gè)4位數的相減,即將被減數通道S1中的內容減去減數通道S2中的內容或一個(gè)常數,其結果送到差通道D。 ADD及SUB指令使用的通道和常數如表4所示。 表4 ADD及SUB指令使用的通道和常數 使用ADD及SUB指令時(shí)應注意如下問(wèn)題: (1)要求通道內容須為BCD碼,否則1903變?yōu)镺N,ADD及SUB指令不能執行。 (2)在執行ADD或SUB指令前,必須先用CLC指令對進(jìn)(借)位標志位1904進(jìn)行清零,否則進(jìn)位標志位也要參加運算。 (3)ADD和SUB指令都是在條件滿(mǎn)足時(shí)CPU每掃描程序一次就執行一次,如果要求只執行一次加、 減法操作,應使用DIFU或DIFD指令。 兩個(gè)4位數相加后,其結果可能是4位或5位數,如果進(jìn)位標志位(1904)為ON,則其和為5位數,可用傳送指令MOV將進(jìn)位標志位存放待用,如圖25所示。
評論