下表提供了一个逻辑程序可用的指令列表。支持逻辑程序的机型可以使用所有这些指令。这些指令可分为如下9个类别:(1)基本,(2)定时器,(3)计数器,(4)读/写,(5)运算,(6)函数,(7)比较,(8)转换,(9)I/O驱动程序指令。
不能在功能块中使用具有脉冲设置的指令。
类别 |
指令名称 |
指令 |
逻辑 |
功能 块 | |
---|---|---|---|---|---|
基本指令 |
位基本 |
常开 |
NO |
O |
O |
常闭 |
NC |
O |
O | ||
输出 |
OUT |
O |
O | ||
负输出 |
OUTN |
O |
O | ||
置位 |
SET |
O |
O | ||
复位 |
RST |
O |
O | ||
脉冲基本 |
上升沿 |
PT |
O |
X | |
下降沿 |
NT |
O |
X | ||
程序控制 |
跳转 |
JMP |
O |
X | |
跳转至子程序 |
JSR |
O |
X | ||
返回 |
RET |
O |
X | ||
循环处理 |
FOR |
O |
X | ||
NEXT |
O |
X | |||
反转 |
INV |
O |
X | ||
退出 |
EXIT |
O |
X | ||
母线控制开始 |
PBC |
O |
X | ||
母线控制复位 |
PBR |
O |
X | ||
逻辑等待 |
LWA |
O |
X | ||
定时器指令 |
— |
ON延时定时器 |
TON |
O |
O |
OFF延时定时器 |
TOF |
O |
O | ||
脉冲定时器 |
TP |
O |
O | ||
累计ON延时定时器 |
TONA |
O |
O | ||
累计OFF延时定时器 |
TOFA |
O |
O | ||
计数器指令 |
— |
加计数器 |
CTU |
O |
O |
减计数器 |
CTD |
O |
O | ||
加/减计数器 |
CTUD |
O |
O | ||
读/写指令 |
时间读/写 |
时间读取 |
JRD |
O |
O |
时间设置 |
JSET |
O |
O | ||
日期读/写 |
日期读取 |
NRD |
O |
O | |
日期设置 |
NSET |
O |
O | ||
运算指令 |
运算指令 |
加 |
ADD |
O |
O |
减 |
SUB |
O |
O | ||
乘 |
MUL |
O |
O | ||
除 |
DIV |
O |
O | ||
取模 |
MOD |
O |
O | ||
加1 |
INC |
O |
O | ||
减1 |
DEC |
O |
O | ||
时间运算 |
时间加 |
JADD |
O |
O | |
时间减 |
JSUB |
O |
O | ||
逻辑运算 |
逻辑与 |
AND |
O |
O | |
逻辑或 |
OR |
O |
O | ||
逻辑异或 |
XOR |
O |
O | ||
逻辑非 |
NOT |
O |
O | ||
传送 |
传送(复制) |
MOV |
O |
O | |
块传送(块复制) |
BLMV |
O |
O | ||
多点传送(多点复制) |
FLMV |
O |
O | ||
交换 |
XCH |
O |
O | ||
移位 |
左移 |
SHL |
O |
O | |
右移 |
SHR |
O |
O | ||
算术左移 |
SAL |
O |
O | ||
算术右移 |
SAR |
O |
O | ||
循环移位 |
循环左移 |
ROL |
O |
O | |
循环右移 |
ROR |
O |
O | ||
带进位循环左移 |
RCL |
O |
O | ||
带进位循环右移 |
RCR |
O |
O | ||
函数指令 |
计算函数 |
求和 |
SUM |
O |
O |
平均值 |
AVE |
O |
O | ||
平方根 |
SQRT |
O |
O | ||
位计数 |
BCNT |
O |
O | ||
PID |
PID |
O |
O | ||
三角函数 |
正弦 |
SIN |
O |
O | |
余弦 |
COS |
O |
O | ||
正切 |
TAN |
O |
O | ||
反正弦 |
ASIN |
O |
O | ||
反余弦 |
ACOS |
O |
O | ||
反正切 |
ATAN |
O |
O | ||
余切 |
COT |
O |
O | ||
其它函数 |
自然指数 |
EXP |
O |
O | |
自然对数 |
LN |
O |
O | ||
常用对数 |
LG10 |
O |
O | ||
比较指令 |
算术比较 |
算术比较(=) |
EQ |
O |
O |
算术比较(>) |
GT |
O |
O | ||
算术比较(<) |
LT |
O |
O | ||
算术比较(>=) |
GE |
O |
O | ||
算术比较(<=) |
LE |
O |
O | ||
算术比较(<>) |
NE |
O |
O | ||
时间比较 |
时间比较 (=) |
JEQ |
O |
O | |
时间比较 (>) |
JGT |
O |
O | ||
时间比较 (<) |
JLT |
O |
O | ||
时间比较 (>=) |
JGE |
O |
O | ||
时间比较(<=) |
JLE |
O |
O | ||
时间比较 (<>) |
JNE |
O |
O | ||
日期比较 |
日期比较 (=) |
NEQ |
O |
O | |
日期比较 (>) |
NGT |
O |
O | ||
日期比较 (<) |
NLT |
O |
O | ||
日期比较 (>=) |
NGE |
O |
O | ||
日期比较 (<=) |
NLE |
O |
O | ||
日期比较 (<>) |
NNE |
O |
O | ||
转换指令 |
数据转换 |
BCD转换 |
BCD |
O |
O |
BIN转换 |
BIN |
O |
O | ||
编码 |
ENCO |
O |
O | ||
解码 |
DECO |
O |
O | ||
转换至弧度 |
RAD |
O |
O | ||
转换至角度 |
DEG |
O |
O | ||
缩放 |
SCL |
O |
O | ||
类型转换 |
整型至浮点型转换 |
I2F |
O |
O | |
整型至实型转换 |
I2R |
O |
O | ||
浮点型至整型转换 |
F2I |
O |
O | ||
浮点型至实型转换 |
F2R |
O |
O | ||
实型至整型转换 |
R2I |
O |
O | ||
实型至浮点型转换 |
R2F |
O |
O | ||
时至秒转换 |
H2S |
O |
O | ||
秒至时转换 |
S2H |
O |
O | ||
I/O驱动程序指令 |
CAN |
SDO读取 |
SDOR |
O |
O |
SDO写入 |
SDOW |
O |
O | ||
主站诊断 |
DGMT |
O |
O | ||
从站诊断 |
DGSL |
O |
O | ||
STD |
更改脉冲输出参数 |
PLSX |
O |
O | |
更改加速/减速脉冲输出参数 |
PLSY |
O |
O | ||
读取脉冲输出参数 |
PLSG |
O |
O | ||
启动脉冲输出 |
PLS |
O |
O | ||
停止脉冲输出 |
PLSQ |
O |
O | ||
更改PWM输出参数 |
PWMX |
O |
O | ||
读取PWM输出参数 |
PWMG |
O |
O | ||
启动PWM输出 |
PWM |
O |
O | ||
停止PWM输出 |
PWMQ |
O |
O | ||
更改高速计数器参数 |
HSCX |
O |
O | ||
读取高速计数器参数 |
HSCG |
O |
O | ||
启动高速计数器 |
HSC |
O |
O | ||
停止高速计数器 |
HSCQ |
O |
O | ||
确认脉冲捕捉输入 |
PCH |
O |
O | ||
清除脉冲捕捉输入 |
PCHQ |
O |
O |