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