三菱PLC功能指令詳解
本文詳細介紹三菱plc功能指令。包含FX0N、FX1S、FX1N、FX2N、FX3NC 等三菱PLC的功能指令。
類 | FNC NO. | 指令助記符 | 功能說明 | 對應不同型號的PLC | ||||
FX0S | FX0N | FX1S | FX1N | FX2N FX2NC | ||||
程 序 流 程 | 00 | CJ | 條件跳轉 | √ | √ | √ | √ | √ |
01 | CALL | 子程序調用 | × | × | √ | √ | √ | |
02 | SRET | 子程序返回 | × | × | √ | √ | √ | |
03 | IRET | 中斷返回 | √ | √ | √ | √ | √ | |
04 | EI | 開中斷 | √ | √ | √ | √ | √ | |
05 | DI | 關中斷 | √ | √ | √ | √ | √ | |
06 | FEND | 主程序結束 | √ | √ | √ | √ | √ | |
07 | WDT | 監視定時器刷新 | √ | √ | √ | √ | √ | |
08 | FOR | 循環的起點與次數 | √ | √ | √ | √ | √ | |
09 | NEXT | 循環的終點 | √ | √ | √ | √ | √ | |
傳 送 與 比 較 | 10 | CMP | 比較 | √ | √ | √ | √ | √ |
11 | ZCP | 區間比較 | √ | √ | √ | √ | √ | |
12 | MOV | 傳送 | √ | √ | √ | √ | √ | |
13 | SMOV | 位傳送 | × | × | × | × | √ | |
14 | CML | 取反傳送 | × | × | × | × | √ | |
15 | BMOV | 成批傳送 | × | √ | √ | √ | √ | |
16 | FMOV | 多點傳送 | × | × | × | × | √ | |
17 | XCH | 交換 | × | × | × | × | √ | |
18 | BCD | 二進製轉換成BCD碼 | √ | √ | √ | √ | √ | |
19 | BIN | BCD碼轉換成二進製 | √ | √ | √ | √ | √ | |
算 術 與 邏 輯 運 算 | 20 | ADD | 二進製加法運算 | √ | √ | √ | √ | √ |
21 | SUB | 二進製減法運算 | √ | √ | √ | √ | √ | |
22 | MUL | 二進製乘法運算 | √ | √ | √ | √ | √ | |
23 | DIV | 二進製除法運算 | √ | √ | √ | √ | √ | |
24 | INC | 二進製加1運算 | √ | √ | √ | √ | √ | |
25 | DEC | 二進製減1運算 | √ | √ | √ | √ | √ | |
26 | WAND | 字邏輯與 | √ | √ | √ | √ | √ | |
27 | WOR | 字邏輯或 | √ | √ | √ | √ | √ | |
28 | WXOR | 字邏輯異或 | √ | √ | √ | √ | √ | |
29 | NEG | 求二進製補碼 | × | × | × | × | √ | |
循 環 與 移 位 | 30 | ROR | 循環右移 | × | × | × | × | √ |
31 | ROL | 循環左移 | × | × | × | × | √ | |
32 | RCR | 帶進位右移 | × | × | × | × | √ | |
33 | RCL | 帶進位左移 | × | × | × | × | √ | |
34 | SFTR | 位右移 | √ | √ | √ | √ | √ | |
35 | SFTL | 位左移 | √ | √ | √ | √ | √ | |
36 | WSFR | 字右移 | × | × | × | × | √ | |
37 | WSFL | 字左移 | × | × | × | × | √ | |
38 | SFWR | FIFO(先入先出)寫入 | × | × | √ | √ | √ | |
39 | SFRD | FIFO(先入先出)讀出 | × | × | √ | √ | √ | |
數 據 處 理 | 40 | ZRST | 區間複位 | √ | √ | √ | √ | √ |
41 | DECO | 解碼 | √ | √ | √ | √ | √ | |
42 | ENCO | 編碼 | √ | √ | √ | √ | √ | |
43 | SUM | 統計ON位數 | × | × | × | × | √ | |
44 | BON | 查詢位某狀態 | × | × | × | × | √ | |
45 | MEAN | 求平均值 | × | × | × | × | √ | |
46 | ANS | 報警器置位 | × | × | × | × | √ | |
47 | ANR | 報警器複位 | × | × | × | × | √ | |
48 | SQR | 求平方根 | × | × | × | × | √ | |
49 | FLT | 整數與浮點數轉換 | × | × | × | × | √ | |
高 速 處 理 | 50 | REF | 輸入輸出刷新 | √ | √ | √ | √ | √ |
51 | REFF | 輸入濾波時間調整 | × | × | × | × | √ | |
52 | MTR | 矩陣輸入 | × | × | √ | √ | √ | |
53 | HSCS | 比較置位(高速計數用) | × | √ | √ | √ | √ | |
54 | HSCR | 比較複位(高速計數用) | × | √ | √ | √ | √ | |
55 | HSZ | 區間比較(高速計數用) | × | × | × | × | √ | |
56 | SPD | 脈衝密度 | × | × | √ | √ | √ | |
57 | PLSY | 指定頻率脈衝輸出 | √ | √ | √ | √ | √ | |
58 | PWM | 脈寬調製輸出 | √ | √ | √ | √ | √ | |
59 | PLSR | 帶加減速脈衝輸出 | × | × | √ | √ | √ | |
方 便 指 令 | 60 | IST | 狀態初始化 | √ | √ | 82 | ASCI | 16進製數轉換成ASCI碼 |
83 | HEX | ASCI碼轉換成16進製數 | × | √ | √ | √ | √ | |
84 | CCD | 校驗 | × | √ | √ | √ | √ | |
85 | VRRD | 電位器變量輸入 | × | × | √ | √ | √ | |
86 | VRSC | 電位器變量區間 | × | × | √ | √ | √ | |
87 | - | - | ||||||
88 | PID | PID運算 | × | × | √ | √ | √ | |
89 | - | - | ||||||
浮 點 數 運 算 | 110 | ECMP | 二進製浮點數比較 | × | × | × | × | |
111 | EZCP | 二進製浮點數區間比較 | × | × | × | × | ||
118 | EBCD | 二進製浮點數→十進製浮點數 | × | × | × | × | √ | |
119 | EBIN | 十進製浮點數→二進製浮點數 | × | × | × | × | √ | |
120 | EADD | 二進製浮點數加法 | × | × | × | × | √ | |
121 | EUSB | 二進製浮點數減法 | × | × | × | × | √ | |
122 | EMUL | 二進製浮點數乘法 | × | × | × | × | √ | |
123 | EDIV | 二進製浮點數除法 | × | × | × | × | √ | |
127 | ESQR | 二進製浮點數開平方 | × | × | × | × | √ | |
129 | INT | 二進製浮點數→二進製整數 | × | × | × | × | √ | |
130 | SIN | 二進製浮點數Sin運算 | × | × | × | × | √ | |
131 | COS | 二進製浮點數Cos運算 | × | × | × | × | √ | |
132 | TAN | 二進製浮點數Tan運算 | × | × | × | × | √ | |
147 | SWAP | 高低字節交換 | × | × | × | × | √ | |
定 位 | 155 | ABS | ABS當前值讀取 | × | × | √ | √ | × |
156 | ZRN | 原點回歸 | × | × | √ | √ | × | |
157 | PLSY | 可變速的脈衝輸出 | × | × | √ | √ | × | |
158 | DRVI | 相對位置控製 | × | × | √ | √ | × | |
159 | DRVA | 絕對位置控製 | × | × | √ | √ | × | |
時 鍾 運 算 | 160 | TCMP | 時鍾數據比較 | × | × | √ | √ | √ |
161 | TZCP | 時鍾數據區間比較 | × | × | √ | √ | √ | |
162 | TADD | 時鍾數據加法 | × | × | √ | √ | √ | |
163 | TSUB | 時鍾數據減法 | × | × | √ | √ | √ | |
166 | TRD | 時鍾數據讀出 | × | × | √ | √ | √ | |
167 | TWR | 時鍾數據寫入 | × | × | √ | √ | √ | |
169 | HOUR | 計時儀 | × | × | √ | √ | ||
外 圍 設 備 | 170 | GRY | 二進製數→格雷碼 | × | × | × | × | √ |
171 | GBIN | 格雷碼→二進製數 | × | × | × | × | √ | |
176 | RD3A | 模擬量模塊(FX0N-3A)讀出 | × | √ | × | √ | × | |
177 | WR3A | 模擬量模塊(FX0N-3A)寫入 | × | √ | × | √ | × | |
觸 點 比 較 | 224 | LD= | (S1)= (S2)時起始觸點接通 | × | × | √ | √ | √ |
225 | LD> | (S1)> (S2)時起始觸點接通 | × | × | √ | √ | √ | |
226 | LD< | (S1)< (S2)時起始觸點接通 | × | × | √ | √ | √ | |
228 | LD<> | (S1)<> (S2)時起始觸點接通 | × | × | √ | √ | √ | |
229 | LD≦ | (S1)≦ (S2)時起始觸點接通 | × | × | √ | √ | √ | |
230 | LD≧ | (S1)≧ (S2)時起始觸點接通 | × | × | √ | √ | √ | |
232 | AND= | (S1)= (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
233 | AND> | (S1)> (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
234 | AND< | (S1)< (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
236 | AND<> | (S1)<> (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
237 | AND≦ | (S1)≦ (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
238 | AND≧ | (S1)≧ (S2)時串聯觸點接通 | × | × | √ | √ | √ | |
240 | OR= | (S1)= (S2)時並聯觸點接通 | × | × | √ | √ | √ | |
241 | OR> | (S1)> (S2)時並聯觸點接通 | × | × | √ | √ | √ | |
242 | OR< | (S1)< (S2)時並聯觸點接通 | × | × | √ | √ | √ | |
244 | OR<> | (S1)<> (S2)時並聯觸點接通 | × | × | √ | √ | √ | |
245 | OR≦ | (S1)≦ (S2)時並聯觸點接通 | × | × | √ | √ | √ | |
246 | OR≧ | (S1)≧ (S2)時並聯觸點接通 | × | × | √ | √ | √ |
再介紹FX係列三菱PLC功能指令的數據格式。
1.位元件與(yu) 字元件
象X、Y、M、S等隻處理ON/OFF信息的軟元件稱為(wei) 位元件;而象T、C、D等處理數值的軟元件則稱為(wei) 字元件,一個(ge) 字元件由16位二進製數組成。
位元件可以通過組合使用,4個(ge) 位元件為(wei) 一個(ge) 單元,通用表示方法是由Kn加起始的軟元件號組成,n為(wei) 單元數。例如K2 M0表示M0~M7組成兩(liang) 個(ge) 位元件組(K2表示2個(ge) 單元),它是一個(ge) 8位數據,M0為(wei) 最低位。如果將16位數據傳(chuan) 送到不足16位的位元件組合(n<4)時,隻傳(chuan) 送低位數據,多出的高位數據不傳(chuan) 送,32位數據傳(chuan) 送也一樣。在作16位數操作時,參與(yu) 操作的位元件不足16位時,高位的不足部分均作0處理,這意味著隻能處理正數(符號位為(wei) 0),在作32位數處理時也一樣。被組合的元件首位元件可以任意選擇,但為(wei) 避免混亂(luan) ,建議采用編號以0結尾的元件,如S10,X0,X20等。
2.數據格式
在FX係列PLC內(nei) 部,數據是以二進製(BIN)補碼的形式存儲(chu) ,所有的四則運算都使用二進製數。二進製補碼的最高位為(wei) 符號位,正數的符號位為(wei) 0,負數的符號位為(wei) 1。FX係列PLC可實現二進製碼與(yu) BCD碼的相互轉換。
為(wei) 更精確地進行運算,可采用浮點數運算。在FX係列PLC中提供了二進製浮點運算和十進製浮點運算,設有將二進製浮點數與(yu) 十進製浮點數相互轉換的指令。二進製浮點數采用編號連續的一對數據寄存器表示,例D11和D10組成的32位寄存器中,D10的16位加上D11的低7位共23位為(wei) 浮點數的尾數,而D11中除最高位的前8位是階位,最高位是尾數的符號位(0為(wei) 正,1是負)。10進製的浮點數也用一對數據寄存器表示,編號小數據寄存器為(wei) 尾數段,編號大的為(wei) 指數段,例如使用數據寄存器(D1,D0)時,表示數為(wei)
10進製浮點數=〔尾數D0〕×10〔指數D1〕
其中:D0,D1的最高位是正負符號位。