对三菱plc指令的理解解析.docx
《对三菱plc指令的理解解析.docx》由会员分享,可在线阅读,更多相关《对三菱plc指令的理解解析.docx(23页珍藏版)》请在冰豆网上搜索。
对三菱plc指令的理解解析
基本逻辑指令
FN2NM8000-M8255特殊继电器
M8000:
运行监视器(在plc运行中一直接通)M8001:
与M8000相反的逻辑
M8002:
初始脉冲(仅在运行开始时瞬间接通)M8003:
与M8002相反逻辑
M8011:
10msM8012:
100msM8013:
1sM8014:
1min(开一半时间关一半的时间)
T0~T199200点100msT200~T24546点10ms
T246~T2494点10ms累计型T250~T2555点100ms累计型
定时器的范围是0~32767
C0~C99100点C100~199100点累计型C200~C21920点C220~C23415点累计型
16位0~3276732位-2147483648~+2147483647
计算器NO
方向切换
计算器NO
方向切换
计算器NO
方向切换
计算器NO
方向切换
C200
M8200
C209
M8209
C218
M8218
C226
M8226
C201
M8201
C210
M8210
C219
M8219
C227
M8227
C202
M8202
C211
M8211
~
~
C228
M8228
C203
M8203
C212
M8212
C220
M8220
C229
M8229
C204
M8204
C213
M8213
C221
M8221
C230
M8230
C205
M8205
C214
M8214
C222
M8222
C231
M8231
C206
M8206
C215
M8215
C223
M8223
C232
M8232
C207
M8207
C216
M8216
C224
M8224
C233
M8233
C208
M8208
C217
M8217
C225
M8225
C234
M8234
FX2NFX2NC系列每个寄存器都是16bit(最高位为正、负符号位)
也可用两个数据寄存器合并起来存储32bit(最高位为正、负符号位)
D0~D199200点D200~D511312点D512~D79997488点D8000~D8255256点
[MOVK3D1]是把3传到D1里(K表示常数H表示十六进制的常数,在plc里不能直接的写一个数值,要写数据前面加K或者H)
[DMOVK50000D4]是把K50000传送到D4,D5面
[MOVD10D4]是把D10里的数据传送到D4里
[DMOVD20D22]是把(D20,D21)(是一个32位数据)里的数据传送到(D22,D23)里去
MOV:
传送(可以传送32位的数据,可脉冲)
案例
X、Y、M、S...是位软元件
T、C、D、V...是字软元件
K1X3K1表示1组(即4位)X3表示起始位即使从X3开始的4位X3X4X5X6的信号K2Y1K2表示2组(即8位)Y1表示起始位即使从Y1开始的8位~~
LD:
读取常开点。
LDI:
读取常闭点。
OUT:
线圈输出
AND:
串入常开点ANI:
串入常闭点
OR:
并入常开点ORI:
并入常闭点
ANB:
电路块串联ORB:
电路块并联
SET:
线圈保持(set指令的执行对象:
Y,M,S其功能与自锁类似)
RST:
清除线圈输入(rst指令的执行对象是:
Y,M,S,T,C,D,V,Z让对象清楚动作,寄存器的值清0)
ZRST:
成批复位
PLS:
上升沿输入脉冲PLF:
下降沿输入脉冲
上升延输出指令PLS仅在执行条件由OFF→ON时,驱动一次输出[PLSM0]
下降延输出指令PLF仅在执行条件由ON→OFF时,驱动一次输出[PLFM1]
LDP:
读取上升沿LDF:
读取下降沿
触点上升延是检测到触点上升延时为ON
触点下降延是检测到触点下降延时为ON
ANDP:
上升沿接通,串联连接。
ANDF:
下升沿接通,串联连接。
ALT:
交替指令NOP:
空操作
ORP:
上升沿接通,并联连接ORF:
下升沿接通,并联连接
MC:
主控MCR主控结束
CMP:
比较(可32可脉冲全支持)
ZCP:
区域比较(可32可脉冲全可用)
CML:
取反传送
BCD:
BIN向BCD转换BIN:
BCD向BIN转换
ADD:
加法(可32可脉冲全可用)
SUB:
减法(可32可脉冲全可用)
MUL:
乘法(可32可脉冲全可用)
DIV:
除法(可32可脉冲全可用)
INC:
自加1运算(可32可脉冲全可用)
DEC:
自减1运算(可32可脉冲全可用)
案例
逻辑指令的相关格式
逻辑与指令WAND
逻辑或指令WOR
逻辑异或指令WXOR
案例
DECMP:
二进制浮点数比较DEZCP:
二进制浮点数区间比较
DEBCD:
二进制浮点数向十进制浮点数转换DEBIN:
十进制浮点数向二进制浮点数转换
DEADD:
二进制浮点数加法DESUB:
二进制浮点数减法DEMUL:
二进制浮点数乘法
DEDIV:
二进制浮点数除法DESQR:
二进制浮点数开方
INT:
二进制浮点数取整FLT:
整数转换为二进制浮点数
求平均值指令MEAN
WAND:
字与运算(按位)WOR:
字或运算(按位)WXOR字异或运算(按位)
译码DECO指令
译码指令说明
注:
当D1的值较小时,(1-15)D1的纸是前4位的2进制
编码指令ENCO
指令说明
案例
循环指令
ROR:
循环右移
说明
ROL:
循环左移
指令说明
案例
位右移指令SFTR
指令说明
位左移SFTL
指令说明
案例
NEG:
取补运算
指令用法
RCR:
带进位循环右移RCL:
带进位循环左移
SQR:
开方运算INV:
运算触点取反EMD:
结束程序
MPS:
压栈MRD:
读栈MPP:
出栈
CJ:
条件跳转CALL:
子程序调用SRET:
子程序返回
FENN:
主程序结束FOR:
循环开始NEXT:
循环结束
LD=:
读取“等于比较节点”
LD>:
读取“大于比较节点”
LD<:
读取“小于比较节点”
LD<>:
读取“不等于比较节点”
LD<=:
读取“小于等于比较点”
LD>=:
读取“大于等于比较节点”
AND=:
串联“等于比较节点”
AND>:
串联“大于比较节点”
AND<:
串联“小于比较节点”
AND<>:
串联“不等于比较节点”
AND<=:
串联“小于等于比较节点”
AND>=:
串联“不等于比较节点”
OR=:
并联“等于比较节点”
OR>:
并联“大于比较节点”
OR<:
并联“小于比较节点”
OR<>:
并联“不等于比较节点”
OR<=:
并联“小于等于比较节点”
OR>=:
并联“大于等于比较节点”
案例