外部設(shè)備( SER)有8條指令(FNC80~FNC89),外部設(shè)備指令如表4-17所示。
表4-17 外部設(shè)備指令
(1)八進制數(shù)據(jù)傳送指令
八進制數(shù)據(jù)傳送指令(D) PRUN (P) (FNC81)是用于八進制數(shù)的傳送。
示例及使用:如圖4-69所示,當(dāng)X10為ON時,將X0 - X17內(nèi)容送至M0 - M7和M10- M17(因為X為八進制,故M9和M8的內(nèi)容不變)。當(dāng)X11為ON時,則將M0 - M7送Y0 - Y7,M10 - M17送Y10 - Y17。源操作數(shù)可取KnX、KnM,目標(biāo)操作數(shù)取KnY、KnM,n=1 -8,16位和32位運算分別占5個和9個程序步。
(2)十六進制數(shù)與ASCII轉(zhuǎn)換指令
有HEX→ASCII轉(zhuǎn)換指令A(yù)SCI (FNC82)、ASCII→HEX轉(zhuǎn)換指令HEX (FNC83)兩條指令。
HEX→ASCII轉(zhuǎn)換指令A(yù)SCI (P)的功能是將源操作數(shù)[S.]中的內(nèi)容(十六進制數(shù))轉(zhuǎn)換成ASCII碼,放入目標(biāo)操作數(shù)[D.]中。
示例及使用:如圖4-70所示,n表示要轉(zhuǎn)換的字符數(shù)(n =1 -256)。M8161控制采用16位模式還是8位模式。16位模式時每4個HEX占用1個數(shù)據(jù)寄存器,轉(zhuǎn)換后每兩個ASCII碼占用一個數(shù)據(jù)寄存器;8位模式時,轉(zhuǎn)換結(jié)果傳送到[D.]低8位,其高8位為0。PLC運行時M8000為ON,M8161為OFF,此時為16位模式。當(dāng)X0為ON時,則執(zhí)行ASCII。如果放在D100中的4個字符為OABCH,則執(zhí)行后將其轉(zhuǎn)換為ASCII碼送入D200和D201中,D200高位放A的ASCII碼41H,低位放0的ASCII碼30H,D201則放BC的ASCII碼,C放在高位。該指令的源操作數(shù)可取所有數(shù)據(jù)類型,目標(biāo)操作數(shù)可取KnY、KnM、KnS、T、C和D。只有16位運算,占用7個程序步。
圖4-69 八進制數(shù)據(jù)傳送指令的使用
圖4-70 HEX→ASCII轉(zhuǎn)換指令的使用
ASCII→HEX指令HEX (P)的功能與ASCII指令相反,是將ASCII表示的信息轉(zhuǎn)換成十六進制的信息。
示例及使用:如圖4-71所示,將源操作數(shù)D200 - D203中放的ASCII轉(zhuǎn)換成十六進制放入目標(biāo)操作數(shù)D100和D101中。只有16位運算,占7個程序步。源操作數(shù)為K、H、KnX、KnY、KnM、KnS、T、C和D,目標(biāo)操作數(shù)為KnY、KnM、KnS、T、C、D、V和Z。
(3)校驗碼指令
校驗碼指令CCD (P) (FNC84)的功能是對一組數(shù)據(jù)寄存器中的十六進制數(shù)進行總校驗和奇偶校驗。
示例及使用:如圖4-72所示,是將源操作數(shù)[S.]指定的D100 - D102共6個字節(jié)的8位二進制數(shù)求和并“異或”,結(jié)果分別放在目標(biāo)操作數(shù)D0和D1中。通信過程中可將數(shù)據(jù)和、“異或”結(jié)果隨同發(fā)送,對方接收到信息后,先將傳送的數(shù)據(jù)求和并“異或”,再與收到的和及“異或”結(jié)果比較,以此判斷傳送信號的正確與否。源操作數(shù)可取KnX、KnY、KnM、KnS、T、C和D,目標(biāo)操作數(shù)可取KnM、KnS、T、C和D,n可用K、H或D,n=1- 256。為16位運算指令,占7個程序步。
圖4-71 ASCII→HEX指令的使用
圖4-72 校驗碼指令的使用
以上PRUN、ASCII、HEX、CCD常應(yīng)用于串行通信中,配合RS指令。
(4)模擬量輸入指令
模擬量輸入指令VRRD (P) (FNC85)是用來對FX2N - 8AV - BD模擬量的功能擴展板中的電位器數(shù)值進行讀操作。
示例及使用:如圖4-73所示,當(dāng)X0為ON時,讀出FX2N - 8AV - BD中0號模擬量的值(由K0決定),將其送入D0作為T0的設(shè)定值。源操作數(shù)可取K、H,它用來指定模擬量口的編號,取值范圍為0-7;目標(biāo)操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。該指令只有16位運算,占5個程序步。
圖4-73 模擬量輸入指令的使用
(5)模擬量開關(guān)設(shè)定指令
模擬量開關(guān)設(shè)定指令VRSC (P) (FNC86)的作用是將FX - 8AV中電位器讀出的數(shù)四舍五入整量化后以0 -10之間的整數(shù)值存放在目標(biāo)操作數(shù)中。它的源操作數(shù)[S.]可取K和H,用來指定模擬量口的編號,取值范圍為0 -7;目標(biāo)操作數(shù)[D.]的類型與VRRD指令相同。該指令為16位運算,占9個程序步。