三菱常用指令目录
基本指令和功能指令
1、LD 取指令
2、OUT 输出指令
3、AND 触电串联指令【完成逻辑与运算】
4、ANI / LDI常闭触电
5、OR 触电并联指令
6、ORI 或非指令
7、SET 置位指令
8、RST 复位指令
9、ZRST 批量复位指令
10、LDP 触电形式的上升沿
11、LDF触点形式的下降沿
12、PLF 指令形式的上升沿
13、PLS 指令形式的下降沿
14、INV 反指令(执行该指令后,将原来的运算结果取反)
15、MC/MCR主控指令(用于公共串联触电的连接)
16、STL 步进指令(步进的指令触电)/RET(步进返回指令)
17、(16位)MOV 传送指令(32位)DMOVE
18、CML取反传送指令
19、XCH数据交换指令
20、SWAP高低字节交换指令(该指令是把高位和地位进行交换)
21、BMOV 块传送指令(目前理解上有欠缺,需要重新梳理)
22、FMOV 多点传送指令(多点传送指令用于初始化的清零动作)
23、CMP比较指令
24、ZCP区间比较指令
移位指令
25、SFTR位右移
26、SFTL位左移
27、ROL 左循环
28、ROR 右循环
数据运算指令
29、ADD 加法指令
30、SUB 减法指令
31、MUL 乘法指令
32、DIV 除法指令
33、INC 递增指令
34、DEC 递减指令
35、字逻辑运算指令(WAND,WOR,WXOR)
36、NEG求补指令
37、SQR 求平方根指令
38、SUM 置一位总数指令
39、MEAN 求平均数指令功能
40、ANS 信号报警设置
高速处理指令
41、HSCS 高速计数器比较置位指令
42、HSCR 高速计数器比较复位指令
43、HSZ 高速计数器区间比较指令
44、SPD 脉冲速度检测指令
方便指令
45、ALT交替输出指令
时钟指令
46、TRD 读取时钟指令
47、TCMP 时钟数据比较指令
48、TZCP 时钟数据区间比较指令
顺序流指令
49、FOR循环指令
50、NEXT 循环结束指令(NEXT指令不能用在FEND和END指令之后)
51、CJ 条件跳转指令
52、FEND 主程序结束指令
53、CALL 子程序调用指令
54、SRET 子程序返回指令
55、EI 允许中断
56、DI 禁止中断
定位控制指令
57、PLSY 脉冲输出指令
58、PLSV 可变速脉冲输出指令
59、ZRN 原点回归指令
60、DSZR 原点回归指令
61、DRVI 相对定位指令
62、DRVA 绝对定位指令
模拟量和PID
特殊模块读写指令
63、FROM 读指令
64、TO 写指令
65、RS 使用RS485同行扩展板以及特殊适配器进行发送接受的指令。
66、HIOEN 控制高速输入输出功能的开始/停止。
----HIOEN 【S1】【S2】【S3】
S1:开始/停止的功能编号
S2:设置已启用功能的通道编号的位
S3:设置已停止功能的通道编号的位
66、DHCMOVP 以高速计数器/脉冲宽度测定/PWM/定位用特殊寄存器为对象,进行读取或写入(更新)操作时使用该指令。
------DHCMOVP 【S1】【S2】【S3】
(s)传送源的软元件编号位
(d)传送目标软元件编号位
(n)传送后,显示的传送源软元件的清除提示K0、K1
67、DHSCR 比较复位
68、DHSCS 比较设置
69、DHSZ 频带比较
70、HCMOV 高速计数器传送
71、HCMOVP 高速计数器传送

FX藏用的串口通信主要有以下几种
1、N:N网络通信(最多8台PLC之间互联)
2、并联连接(PLC之间1:1连接)
3、Modbus通信协议
4、自由口通信
CC_LINK 以太网
232 422 485 三种标准
N:N网络通信

基本指令和功能指令
1、LD 取指令
2、OUT 输出指令

3、AND 触电串联指令【完成逻辑与运算】
4、ANI / LDI常闭触电
5、OR 触电并联指令
6、ORI 或非指令

7、SET 置位指令
8、RST 复位指令
9、ZRST 批量复位指令

10、LDP 触电形式的上升沿
11、LDF触点形式的下降沿
12、PLF 指令形式的上升沿
13、PLS 指令形式的下降沿

14、INV 反指令(执行该指令后,将原来的运算结果取反)
15、MC/MCR主控指令(用于公共串联触电的连接)

16、STL 步进指令(步进的指令触电)/RET(步进返回指令),步进指令只有与状态继电器s配合才有步进功能,使用STL指令的状态继电器的常开触电,称为STL触电,没有常闭触点
1、STL指令没有触点,直接连接左母线。

功能指令
17、(16位)MOV 传送指令(mov传送指令有两个参数,K123为源操作数,需要被传送的数据,D0是需要将源操作数存放的地址)

(32位)DMOVE(数据为32位时,传送指令就必须使用Dmov,比如高速计数器)

18、CML取反传送指令(共计有两个参数,第一个为源操作数,CML指令先将源操作数转化为2进制,然后将2进制的每一位都进行取反,如图所示)
使用场景:需要交替出现(比如需要控制灯交替闪烁)
在这里插入图片描述
在这里插入图片描述

19、XCH数据交换指令(该指令有两个参数,将两个寄存器中的数值进行变更,使用该指令,必须要使用沿触发,不然会一直处于变更状态)
交换前数据
交换后数据
20、SWAP高低字节交换指令(该指令是把高位和地位进行交换)
例如:K4M10由16位数据寄存器,其中K2M10为低字节,K2M18为高字节,高低字节交换不是交换存储器的位置,而是将高低字节的内容进行交换。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

21、BMOV 块传送指令(块传送指令共有三个参数,第一个为源操作数的起始位置,第二个为操作地址的起始位置,第三个为需要操作多少位)
BMOV(s)(d)(n)
在这里插入图片描述
在这里插入图片描述

22、FMOV 多点传送指令(多点传送指令用于初始化的清零动作)该指令共有三个参数,第一个为常数或者常数地址,第二个为操作地址的起始位置,第三个参数为需要操作的位数。
在这里插入图片描述
在这里插入图片描述

比较指令按功能分为三类,触点比较指令,CMP比较指令,ZCP区间比较指令
BMOV和FMOV一起使用。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

23、CMP比较指令,该指令共有三个参数,前两个为常数或者常数地址,第三个为最终的存储结果。
S1>S2
在这里插入图片描述

S1=S2
在这里插入图片描述

S1<S2[当小于时不输出值]
在这里插入图片描述

24、ZCP区间比较指令(共计有四个参数,第一和第二为固定数值,第三个为变量,第四个为m0存储比较值,最终结果是用第三个值和第一第二值进行比较。)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

移位指令【移位指令是使原件中的状态向左向右移动】,移位指令的目标操作数为x,y,m,s。没有32位的移位指令。
25、SFTR位右移
在这里插入图片描述

26、SFTL位左移
在这里插入图片描述
在这里插入图片描述

27、ROL 左循环
28、ROR 右循环
在这里插入图片描述

数据运算指令
29、ADD 加法指令
在这里插入图片描述

30、SUB 减法指令
在这里插入图片描述

31、MUL 乘法指令
在这里插入图片描述

32、DIV 除法指令
在这里插入图片描述

33、INC 递增指令
在这里插入图片描述

34、DEC 递减指令
在这里插入图片描述

35、字逻辑运算指令(WAND,WOR,WXOR)
36、NEG求补指令【该指令和CML指令有点类似,只是NEG指令在最终的取反之后需要+1】
初始D1
在这里插入图片描述

赋值后的D1
在这里插入图片描述

执行指令后的d1

在这里插入图片描述

37、SQR 求平方根指令 —SQR [s1] [d1] S1为操作数,D1位处理后的数据存放地址[该指令目前操作不出来,不清楚是哪儿的问题,需要找老师看看]
38、SUM 置一位总数指令 —SUM [S] [D] 是将源操作数S中的每个为为1的总量和传送到目标D中
步骤一:D1中的二进制
在这里插入图片描述

步骤二:
在这里插入图片描述
在这里插入图片描述

BON 置一位判断指令 ----BON 【S】 【D】 【N】
指定源操作数S中16位的第N位进行判断,最终将判断结果输出到D中,若是1则输出,若为0则不输出。
步骤一:32767
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

39、MEAN 求平均数指令功能 —MEAN 【S】 【D】 【N】
将源操作数S开始的N个数相加,把相加得到的结果除以N得到的商传送给目标操作数,余数自动舍弃。K超出64会报错。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

40、ANS 信号报警设置/ANR信号报警复位指令
高速处理指令
41、HSCS 高速计数器比较置位指令 -----HSCS 【S1】【S2】【D】
S1 固定值,S2高速计数器输出值,D目标位原件
在这里插入图片描述

42、HSCR 高速计数器比较复位指令 -----HSCS 【S1】【S2】【D】
S1 固定值,S2高速计数器输出值,D目标位原件
在这里插入图片描述

HSCS和HSCR,前者是当高速计数器的值大于预设值时,y0输出,而后者则是复位。
43、HSZ 高速计数器区间比较指令 ----HSZ 【S1】【S2】【S】【D】S1和S2为常数,S为高速计数器,D位输出组件(Y)
在这里插入图片描述

SPD 脉冲速度检测指令 ----SPD【S1】【S2】【D】
备注:在指定的时间内,检测编码器的脉冲个数,并计算速度。
44、
(s1)脉冲输入位/字ANY_ELEMENTARY*1
(s2)测定时间(单位:ms)-32768~+32767有符号BIN16位ANY16
(d)存储测定结果的软元件起始编号有符号BIN16位ANY16
在这里插入图片描述

方便指令
45、ALT交替输出指令
时钟指令
46、TRD 读取时钟指令
47、TCMP 时钟数据比较指令
48、TZCP 时钟数据区间比较指令
顺序流指令
49、FOR循环指令
50、NEXT 循环结束指令(NEXT指令不能用在FEND和END指令之后)
51、CJ 条件跳转指令
52、FEND 主程序结束指令
53、CALL 子程序调用指令
54、SRET 子程序返回指令
55、EI 允许中断
56、DI 禁止中断
定位控制指令
57、PLSY 脉冲输出指令 -----PLSY 【s】【n】【d】
在这里插入图片描述

S:输出脉冲个数
N:输出脉冲个数
D:轴数
在这里插入图片描述
在这里插入图片描述

58、PLSV 可变速脉冲输出指令(该指令用于输出带旋转方向输出的变速脉冲。
在这里插入图片描述
在这里插入图片描述

D0:转动速度,y0脉冲输出端口,y4旋转方向。
59、ZRN 原点回归指令
60、DSZR 原点回归指令
在这里插入图片描述
在这里插入图片描述

K1 = x3
61、DRVI 相对定位指令
62、DRVA 绝对定位指令
模拟量和PID
(s1)存储目标值 (SV)的软元件编号-32768~+32767有符号BIN16位ANY161
(s2)存储测量值 (PV)的软元件编号-32768~+32767有符号BIN16位ANY16
1
(s3)存储参数的软元件编号1~32767有符号BIN16位ANY161
(d)存储输出值(MV)的软元件编号-32768~+32767有符号BIN16位ANY16
1
EN执行条件位BOOL
ENO执行结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

特殊模块读写指令
63、FROM 读指令
在这里插入图片描述

M1:模块的编号(用K表示,0号模块用K0表示……,模块的编号最多为K0-K7)
M2:BMF的首地址(K0-K31)
S:PLC存储地址首地址
N:传送数据字数
64、TO 写指令
在这里插入图片描述

M1:模块的编号(用K表示,0号模块用K0表示……,模块的编号最多为K0-K7)
M2:BMF的首地址(K0-K31)
S:PLC存储地址首地址
N:传送数据字数
A-D
【使用TO指令启动A\D,使用from指令将A\D转换的结果读出】
转换结果数据在模块缓冲寄存器中的储存地址如下:
BFM 0 的bit0-bit7 转换结果数据的低八位
BFM 1 的bit0-bit3 转换结果数据的高四位
A|D转换控制信号在模块缓冲存储器BFM中的存储地址如下
BFM 17 的bit0 通道选择,为0时,选择通道1,为1时选择通道2
BFM17 的bit1 A|D转换启动信号,上肾炎是启动A|D转换
D-A
BFM 16 的bit0-bit7 转换数据当前值(8位)【低8位+高4位】
BFM 17 通道的选择和启动信号
BFM 17 的bit0 当潜质从1-0,通道2转换开始。
BFM 17 的bit1 当潜质从1-0,通道1转换开始。
BFM 17 的bit1 当前值从1到0 下端8位数据保持。
在这里插入图片描述

问题:
1、是不是只有扩展模块才需要启动?
2、所有的启动方式是否全部一样?
3、第三个参数为啥是H1,而非K1

模拟量
FX5U共有两对输入,一对输出。
在这里插入图片描述

一通道的值存放在SD6020中,二通道的值存放在SD6060中。
在这里插入图片描述

电压接法,如果两个通道只使用一个通道,那需要把V2和V-并联起来。
输出
V+接变频器的AVI
V-接变频器的GND
模拟量的输出存在SD6180中
备注:
一、如果使用pid进行调节变频器的场景。
1、先使用SPD检测到当前转速。—采集值
2、使用mov设置一个常量,作为目标值
3、使用pid计算出输出值。
4、将输出值读取到模拟量输出模块中
5、模拟量和变频器连接开始工作。
二、使用温度传感器控制变频器转速的案例。
1、将温度传感器连接到温度变送器,然后连接到输入模拟量端子。
2、使用to命令选择/启用模拟量输入模块
3、通过from命令将温度写入到plc进行计算,并将最终结果写入到寄存器D100中。
4、使用mov D100 k3m100
5、将K3m100中的值使用to命令写入到输出模拟量
6、连接变频器开始工作。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐