LB.<>、HB.<>D.<>不等于比較開關,分16位/32位/低字節/高字節√>LB.>、HB.>D.>大于比較開關,分16位/32位/低字">
Haiwell海為PLC應用指令列表
指令類型 | 指令名稱 | 8位模式 | 32位模式 | 指令功能 | 支持語言 | ||
LD | FBD | IL | |||||
比較開關 | = | LB.=、HB.= | D.= | 等于比較開關,分16位/32位/低字節/高字節 | √ | ||
<> | LB.<>、HB.<> | D.<> | 不等于比較開關,分16位/32位/低字節/高字節 | √ | |||
> | LB.>、HB.> | D.> | 大于比較開關,分16位/32位/低字節/高字節 | √ | |||
>= | LB.>=、HB.>= | D.>= | 大于等于比較開關,分16位/32位/低字節/高字節 | √ | |||
< | LB.<、HB.< | D.< | 小于比較開關,分16位/32位/低字節/高字節 | √ | |||
<= | LB.<=、HB.<= | D.<= | 小于等于比較開關,分16位/32位/低字節/高字節 | √ | |||
F.= | 浮點數等于比較開關 | √ | |||||
F.<> | 浮點數不等于比較開關 | √ | |||||
F.> | 浮點數大于比較開關 | √ | |||||
F.>= | 浮點數大于等于比較開關 | √ | |||||
F.< | 浮點數小于比較開關 | √ | |||||
F.<= | 浮點數小于等于比較開關 | √ | |||||
步進指令 | STL | 步開始 | √ | ||||
SFROM | 步合并 | √ | |||||
STO | 步轉移 | √ | |||||
位指令 | AND | 邏輯與 | √ | √ | |||
OR | 邏輯或 | √ | √ | ||||
XOR | 邏輯異或 | √ | √ | ||||
OUT | 線圈輸出 | √ | √ | √ | |||
SET | 置位保持 | √ | √ | √ | |||
RST | 復位 | √ | √ | √ | |||
ALT | ON/OFF交替輸出 | √ | √ | √ | |||
ZRST | 批量復位 | √ | √ | √ | |||
ENO | 取ENO輸出 | √ | |||||
計時器 | TON | 延時開 | √ | √ | √ | ||
TOF | 延時關 | √ | √ | √ | |||
TP | 脈沖計時器 | √ | √ | √ | |||
計數器 | CTU | D.CTU | 加計數器 | √ | √ | √ | |
CTD | D.CTD | 減計數器 | √ | √ | √ | ||
CTUD | D.CTUD | 加減計數器 | √ | √ | √ | ||
高速控制指令 | RESH | IO更新 | √ | √ | √ | ||
SHC | 單點高速計數器 | √ | √ | √ | |||
HHSC | 高速計數器 | √ | √ | √ | |||
HCWR | 寫高速計數器 | √ | √ | √ | |||
SPD | 速度偵測 | √ | √ | √ | |||
PWM | 脈寬調制 | √ | √ | √ | |||
PLSY | D.PLSY | 脈沖輸出 | √ | √ | √ | ||
PLSR | D.PLSR | 加減速脈沖輸出 | √ | √ | √ | ||
ZRN | 原點回歸 | √ | √ | √ | |||
SETZ | 設置電氣原點 | √ | √ | √ | |||
PPMR | 直線插補 | √ | √ | √ | |||
CIMR | 圓弧插補 | √ | √ | √ | |||
SPLS | 單點脈沖輸出 | √ | √ | √ | |||
MPTO | 多段脈沖輸出 | √ | √ | √ | |||
SYNP | 隨動脈沖輸出 | √ | √ | √ | |||
PSTOP | 停止脈沖輸出 | √ | √ | √ | |||
DVIT | 中斷定位脈沖輸出 | √ | √ | √ | |||
ECAM | 電子凸輪 | √ | √ | √ | |||
JOGP | 點動脈沖輸出 | √ | √ | √ | |||
比較指令 | CMP | D.CMP | 比較指令 | √ | √ | √ | |
ZCP | D.ZCP | 區域比較 | √ | √ | √ | ||
MATC | D.MATC | 數值匹配 | √ | √ | √ | ||
ABSC | D.ABSC | 絕對凸輪比較 | √ | √ | √ | ||
BON | ON位判定 | √ | √ | √ | |||
BONC | D.BONC | ON位數量 | √ | √ | √ | ||
MAX | D.MAX | 最大值 | √ | √ | √ | ||
MIN | D.MIN | 最小值 | √ | √ | √ | ||
SEL | D.SEL | 條件選擇 | √ | √ | √ | ||
MUX | D.MUX | 多路選擇 | √ | √ | √ | ||
移動指令 | LBST | 低字節賦值 | √ | √ | √ | ||
HBST | 高字節賦值 | √ | √ | √ | |||
MOV | D.MOV | 移動 | √ | √ | √ | ||
BMOV | 塊移動 | √ | √ | √ | |||
FILL | 填充 | √ | √ | √ | |||
XCH | 字節交換 | √ | √ | √ | |||
BXCH | 塊交換 | √ | √ | √ | |||
SHL | 位左移 | √ | √ | √ | |||
SHR | 位右移 | √ | √ | √ | |||
WSHL | 字左移 | √ | √ | √ | |||
WSHR | 字右移 | √ | √ | √ | |||
ROL | 位循環左移 | √ | √ | √ | |||
ROR | 位循環右移 | √ | √ | √ | |||
WROL | 字循環左移 | √ | √ | √ | |||
WROR | 字循環右移 | √ | √ | √ | |||
BSHL | 字節左移 | √ | √ | √ | |||
BSHR | 字節右移 | √ | √ | √ | |||
ATBL | 添加到隊列 | √ | √ | √ | |||
FIFO | 先進先出 | √ | √ | √ | |||
LIFO | 后進先出 | √ | √ | √ | |||
SORT | 數據排序 | √ | √ | √ | |||
數據轉換指令 | ENCO | 編碼器 | √ | √ | √ | ||
DECO | 譯碼器 | √ | √ | √ | |||
BTOW | 位轉換為字 | √ | √ | √ | |||
WTOB | 字轉換為位 | √ | √ | √ | |||
HEX | HEX.LB | ASCII轉換為16進制 | √ | √ | √ | ||
ASCI | ASCI.LB | 16進制轉換為ASCII | √ | √ | √ | ||
BUNB | 離散位組合到連續位 | √ | √ | √ | |||
BUNW | 離散位組合到連續字 | √ | √ | √ | |||
WUNW | 離散字組合到連續字 | √ | √ | √ | |||
BDIB | 連續位分散到離散位 | √ | √ | √ | |||
WDIB | 連續字分散到離散位 | √ | √ | √ | |||
WDIW | 連續字分散到離散字 | √ | √ | √ | |||
BCD | D.BCD | BIN轉換為BCD | √ | √ | √ | ||
BIN | D.BIN | BCD轉換為BIN | √ | √ | √ | ||
ITOL | 整數轉換為長整數 | √ | √ | √ | |||
GRAY | BIN轉換為GRAY碼 | √ | √ | √ | |||
GBIN | GRAY碼轉換為BIN | √ | √ | √ | |||
字符指令 | GHLB | 得出高低字節 | √ | √ | √ | ||
GETB | 截取字節串 | √ | √ | √ | |||
BCMP | BCMP.LB | 字節串比較 | √ | √ | √ | ||
ITOC | D.ITOC | 整數轉換為字符 | √ | √ | √ | ||
CTOI | 字符轉換為整數 | √ | √ | √ | |||
FTOC | 浮點數轉換為字符 | √ | √ | √ | |||
CTOF | 字符轉換為浮點數 | √ | √ | √ | |||
數學運算指令 | WNOT | D.WNOT | 取反 | √ | √ | √ | |
WAND | D.WAND | 與運算 | √ | √ | √ | ||
WOR | D.WOR | 或運算 | √ | √ | √ | ||
WXOR | D.WXOR | 異或運算 | √ | √ | √ | ||
ADD | D.ADD | 加法 | √ | √ | √ | ||
SUB | D.SUB | 減法 | √ | √ | √ | ||
INC | D.INC | 加1 | √ | √ | √ | ||
DEC | D.DEC | 減1 | √ | √ | √ | ||
MUL | D.MUL | 乘法 | √ | √ | √ | ||
DIV | D.DIV | 除法 | √ | √ | √ | ||
ACCU | D.ACCU | 累加 | √ | √ | √ | ||
AVG | D.AVG | 平均值 | √ | √ | √ | ||
ABS | D.ABS | 絕對值 | √ | √ | √ | ||
NEG | D.NEG | 求2的補碼 | √ | √ | √ | ||
浮點數指令 | FCMP | 浮點數比較 | √ | √ | √ | ||
FZCP | 浮點數區域比較 | √ | √ | √ | |||
FMOV | 浮點數移動指令 | √ | √ | √ | |||
FADD | 浮點數加法 | √ | √ | √ | |||
FSUB | 浮點數減法 | √ | √ | √ | |||
FMUL | 浮點數乘法 | √ | √ | √ | |||
FDIV | 浮點數除法 | √ | √ | √ | |||
FACCU | 浮點數累加 | √ | √ | √ | |||
FAVG | 浮點數平均值 | √ | √ | √ | |||
FMAX | 浮點數最大值 | √ | √ | √ | |||
FMIN | 浮點數最小值 | √ | √ | √ | |||
FTOI | 浮點數轉換為整數 | √ | √ | √ | |||
ITOF | D.ITOF | 整數轉換為浮點數 | √ | √ | √ | ||
FABS | 浮點數絕對值 | √ | √ | √ | |||
FSQR | 浮點數平方根 | √ | √ | √ | |||
FSIN | 正弦值 | √ | √ | √ | |||
FCOS | 余弦值 | √ | √ | √ | |||
FTAN | 正切值 | √ | √ | √ | |||
FASIN | 反正弦 | √ | √ | √ | |||
FACOS | 反余弦 | √ | √ | √ | |||
FATAN | 反正切 | √ | √ | √ | |||
FLN | 自然對數 | √ | √ | √ | |||
FLOG | 以10為底的對數 | √ | √ | √ | |||
FEXP | 自然指數 | √ | √ | √ | |||
FRAD | 角度轉換為弧度 | √ | √ | √ | |||
FDEG | 弧度轉換為角度 | √ | √ | √ | |||
FXY | 指數指令 | √ | √ | √ | |||
時鐘指令 | TCMP | 實時時鐘比較 | √ | √ | √ | ||
TACCU | 時間累計 | √ | √ | √ | |||
SCLK | 設置時鐘 | √ | √ | √ | |||
TIME | 時間開關 | √ | √ | √ | |||
DATE | 日期開關 | √ | √ | √ | |||
INVT | 倒計時 | √ | √ | √ | |||
通訊指令 | SUM | SUM.LB | SUM累加和校驗 | √ | √ | √ | |
BCC | BCC.LB | BCC校驗 | √ | √ | √ | ||
CRC | CRC.LB | CRC校驗 | √ | √ | √ | ||
LRC | LRC.LB | LRC校驗 | √ | √ | √ | ||
COMM | COMM.LB | 串行通訊 | √ | √ | √ | ||
MODR | Modbus讀 | √ | √ | √ | |||
MODW | Modbus寫 | √ | √ | √ | |||
HWRD | Haiwellbus讀 | √ | √ | √ | |||
HWWR | Haiwellbus寫 | √ | √ | √ | |||
RCV | 接收通訊數據 | √ | √ | √ | |||
XMT | XMT.LB | 發送通訊數據 | √ | √ | √ | ||
FROM | 擴展模塊CR數據讀取 | √ | √ | √ | |||
TO | 擴展模塊CR數據寫入 | √ | √ | √ | |||
TCPMDR | Modbus TCP讀 | √ | √ | √ | |||
TCPMDW | Modbus TCP寫 | √ | √ | √ | |||
TCPHWR | Haiwellbus TCP讀 | √ | √ | √ | |||
TCPHWW | Haiwellbus TCP寫 | √ | √ | √ | |||
中斷指令 | ATCH | 中斷綁定 | √ | √ | √ | ||
DTCH | 中斷釋放 | √ | √ | √ | |||
ENI | 允許中斷 | √ | √ | √ | |||
DISI | 禁止中斷 | √ | √ | √ | |||
程序控制指令 | MC | 主控 | √ | √ | √ | ||
MCR | 主控清除 | √ | √ | √ | |||
FOR | 循環指令 | √ | √ | √ | |||
NEXT | 循環結束 | √ | √ | √ | |||
WAIT | 延時等待 | √ | √ | √ | |||
CALL | 調用子程序 | √ | √ | √ | |||
EXIT | 條件返回 | √ | √ | √ | |||
REWD | 掃描時間復位 | √ | √ | √ | |||
JMPC | 條件跳轉 | √ | √ | √ | |||
LBL | 跳轉標號 | √ | √ | √ | |||
特殊功能指令 | GPWM | 通用脈寬調制 | √ | √ | √ | ||
FTC | 模糊溫度控制 | √ | √ | √ | |||
PID | PID控制 | √ | √ | √ | |||
HAL | D.HAL | 上限報警 | √ | √ | √ | ||
LAL | D.LAL | 下限報警 | √ | √ | √ | ||
LIM | D.LIM | 范圍限制 | √ | √ | √ | ||
SC | D.SC | 線性變換 | √ | √ | √ | ||
VC | 閥門控制 | √ | √ | √ | |||
TTC | 溫度曲線控制 | √ | √ | √ | |||
APID | 自整定PID | √ | √ | √ |
指令通用說明
● En使能輸入:En為指令的使能輸入端,只有當En有電(ON)時,指令被執行,否則指令不執行。
● Eno使能輸出:Eno為指令的使能輸出端,指示該指令是否被正確執行。當En有電(ON)并且指令被正確執行時那么Eno輸出有電(ON),當En沒有電(OFF)或者指令在執行時出現錯誤(例如:指令參數不正確)那么Eno輸出沒有電(OFF)。在LD、FBD語言的應用指令中,大部分的指令均有Eno使能輸出端,所有IL指令均無Eno輸出端,由專用于IL語言的ENO指令代替。
● LD語言無AND、OR、XOR三個指令,由邏輯鏈路代替。
● 32位指令在16位指令名稱前加“D.”,表示使用2個連續的寄存器。如加法指令ADD,16位加法為ADD,32位加法為D.ADD。
● 8位指令在16位指令名稱后面加“.LB”,表示只使用寄存器的低字節。如串行通訊指令COMM,16位指令為COMM,8位指令為COMM.LB。
● 對于一些指令的參數端將自動占用幾個連續元件的情況,在編寫程序時要特別注意,應避免元件被重用而使程序執行不正確。
注:
除了CV48~CV79為32位寄存器外(共32個),Haiwell(海為)PLC的其他寄存器(AI、AQ、V、SV、LV、TV、CV、P)都是16位寄存器,一個16位寄存器由2個字節組成,一個32位寄存器由2個連續的16位寄存器組成。
海為公眾號
海為云APP
廈門海為科技有限公司
0592-3278716 (技術) | 4000-360-362 (商務)
海為總部:廈門市集美區軟件園三期C03棟13-14層 | 制造中心:廈門市翔安區火炬高新區(翔安)產業區垵邊南路336-2號4樓