6SL3210-5BE22-2UV0现货西门子代理
6SL3210-5BE22-2UV0现货西门子代理
6SL3210-5BE22-2UV0现货西门子代理
【原创分享】三菱FX5U系列PLC和西门子MM420系列变频器实现USS协议串口通信
一
通信必备硬件
1、三菱FX5U系列PLC一台;
2、西门子MM420系列变频器一台;
3、USB转RS485电缆一根;
4、通信电缆两根;
5、网线一根;
6、电源线若干。
二
通信实现目的
1、三菱FX5U系列PLC通过通信方式对西门子MM420系列变频器实现启动操作;
2、三菱FX5U系列PLC通过通信方式对西门子MM420系列变频器实现停止操作;
3、三菱FX5U系列PLC通过通信方式对西门子MM420系列变频器实现给定频率;
二
通信硬件连接
1、三菱FX5U通道1(内置RS485通信口)端口定义:
如下图所示:

SDA:RS485发送+信号;
RDA:RS485接收+信号;
SDB:RS485发送-信号;
RDB:RS485接收-信号;
SG:信号地。
那么:
SDA和RDA短接后即为RS485发送/接收+信号;
SDB和RDB短接后即为RS485发送/接收-信号;
SG:信号地。
2、西门子MM420系列变频器本体自带RS485通信口端口定义:
如下图所示:

14#端子(P+)即为RS485发送/接收+信号;
15#端子(N-)即为RS485发送/接收-信号。
3、USB转RS485电缆端口定义:
A+:RS485发送/接收+信号;
B-:RS485发送/接收-信号。
4、接线方法:
PLC内置RS485口SDA和RDA短接后 接 变频器之14#端子 接 USB转RS485电缆之A+端;
PLC内置RS485口SDB和RDB短接后 接 变频器之15#端子 接 USB转RS485电缆之B-端;
这里给RS485通信线并接USB转RS485电缆主要是为了后续使用串口调试助手调试变频器或者PLC方便。
四
三菱FX5U系列PLC通道1(内置RS485通信口)通信参数设置:
约定PLC通信参数如下所示:
数据位:8位;
校验位:偶校验;
停止位:1位;
波特率:9600bps
详细设置如下图所示:


五
西门子MM420系列变频器本体自带RS485通信口参数设置:
约定的变频器通信参数如下所示:
数据位:8位;
校验位:偶校验;
停止位:1位;
波特率:9600bps
站号:1
详细参数设置如下:

P0003:设置为3,专家级,只供专家使用

P0010:设置为0,准备。

P0700:设置为5,即就是变频器启动、停止等操作通过COM链路的USS设置。

P1000:设置为5,即就是变频器频率设定值通过COM链路的USS设定。

P2009[0]:设置为1,即就是频率给定值是实际值,分辨率为0.01情况下,赋值4500,即就是给定频率为45Hz

P2010[0]:设置为6,即就是COM链路的串行接口的通信速率为9600bps。

P2011[0]:设置为1,即就是COM链路的串行接口默认站号为1,也就是说西门子MM420变频器本体自带RS485口做USS协议从站时的站号为1。

P2012[0]:设置为2,即就是COM链路的串行接口USS协议的PZD过程数据长度为2。

P2013[0]:设置为4,即就是COM链路的串行接口USS协议的PKW过程数据长度为4。

P2014[0]:设置为0,即就是COM链路的串行接口USS报文的停止传输时间为0。

P1082:设置为50.00,即就是高频率为50HZ。

P2000:设置为50.00,即就是基准频率为50HZ。
六
西门子MM420系列变频器USS协议详解:
由官方USS通信协议文档结合参数设置时我们设置的PKW区长度和PZD区长度可知西门子MM420系列变频器基本通信格式如下所示:

STX:起始符,固定为16进制02;
LGE:从ADR到BCC的字节数,我们这里设置的PKW区长度为4和PZD区长度为2,决定了LGE为16进制0E;
ADR:变频器站地址,这里我们设置为1;
PKW区个字PKE和第二个字IND的信息是关于主站请求的任务或者从站应答报文的类型;
PKW区第三个字PWE1和第四个字PWE2是被访问参数的数值。
其中PKE区含义如下所示:

其中IND区含义如下所示:

基本参数号补充说明:

任务识别标记ID:



正确应答识别标记ID:

错误应答识别标记ID:



其中PWE1含义如下所示:


其中PWE2含义如下所示:


PZD区主要是为控制变频器而设计的,亦可监测变频器相关参数。
PZD个字作为任务报文时标记为STW,即为控制字,通过对其控制字赋值可实现变频器启动和停止,其控制字含义如下所示:


PZD个字作为应答报文时标记为ZSW,即为状态字,通过对其状态字分析可知晓变频器启动和停止等相关状态,其状态字含义如下所示:


PZD第二个字作为任务报文时标记为HSW,即为主设定值,通过对主设定值赋值即可修改变频器频率,由于P2009参数修改为1,那么给定值即为实际频率值。
PZD第二个字作为应答报文时标记为HIW,即为运行参数实际值,通常该参数返回的是变频器实际频率输出值。
BCC:校验码,由STX到PZD所有字节异或结果。
七
西门子MM420系列变频器通信测试
1、通信初始化测试:
通信初始化报文分析如下所示:
启动、停止、给定频率等操作时,如果不需要读取参数,则PKW区可全部填充0;
STW:16进制047E为控制字,具体含义可参考第六部分有关控制字各位定义;
HSW:16进制0000为主设定值,即就是此时给定频率为0Hz。

串口调试助手发送:02 0E 01 00 00 00 00 00 00 00 00 04 7E 00 00 77
变频器返回报文为:02 0E 01 00 00 00 00 00 00 00 00 FB 11 00 00 E7
变频器返回报文分析如下所示:
ZSW:16进制FB11为状态字,具体含义可参考第六部分有关状态字各位定义;
HIW:16进制0000为实际输出频率。

2、启动变频器测试:
启动变频器并给定40Hz频率报文分析如下所示:
STW:16进制047F为控制字,具体含义可参考第六部分有关控制字各位定义;
HSW:16进制0FA0为主设定值,换算为10进制即为4000,即就是给定40HZ。

串口调试助手发送:02 0E 01 00 00 00 00 00 00 00 00 04 7F 0F A0 D9
变频器返回报文为:02 0E 01 00 00 00 00 00 00 00 00 FB B4 0F 9F D2
变频器返回报文分析如下所示:
ZSW:16进制FBB4为状态字,具体含义可参考第六部分有关状态字各位定义;
HIW:16进制0F9F为实际输出频率。

3、启动后读取输出电压测试:
启动后读取输出电压并保持变频器起停状态报文分析如下所示:
PKE:16进制1019为任务识别标记的输出电压参数号,具体含义可参考第六部分定义;
IND:16进制0000,无参数下标。

串口调试助手发送:02 0E 01 10 19 00 00 00 00 00 00 04 7F 0F A0 D0
变频器返回报文为:02 0E 01 20 19 00 00 43 39 A1 64 FB B4 0F 9F 54
变频器返回报文分析如下所示:
PKE:16进制2019为正确应答识别标记输出电压参数号,具体可参考第六部分定义;
IND:16进制0000,无参数下标;
PWE1和PWE2:16进制4339A164组成的浮点数即为实际输出电压。

4、停止变频器测试:
停止变频器报文分析如下所示:
STW:16进制047A为控制字,具体含义可参考第六部分有关控制字各位定义;
HSW:16进制0000为主设定值,即就是停止变频器时给定频率为0HZ。

串口调试助手发送:02 0E 01 00 00 00 00 00 00 00 00 04 7A 00 00 73
变频器返回报文分析如下所示:
ZSW:16进制FB11为状态字,具体含义可参考第六部分有关状态字各位定义;
HIW:16进制0000为实际输出频率。

八
三菱FX5U系列PLC通信编程
RS2指令发送区使用D1~D16寄存器,其含义如下:

RS2指令接收区使用D17~D32寄存器,其含义如下:

主程序中使用的寄存器含义如下所示:
M0:变频器初始化
M1:变频器启动
M2:变频器停止
M3:变频器改频率
M4:改频率辅助
M5:预先写操作辅助位
M6:执行写操作标志位
D0:上位机预写频率值0~5000对应0~50Hz
D300:写频率值辅助用寄存器
D1~D16:写操作发送缓冲区
D17~D32:写操作接收缓冲区
K4M20:分解频率值用
P0子程序占用寄存器含义如下所示:
K4M40:辅助用
D129:参与异或校验的数据个数
D131~D145:要参与异或校验的数据区
D130:终的异或校验值
程序分段讲解如下:
初始化将上位机预写频率值寄存器和写频率值辅助用寄存器清零:

RS2指令发送缓冲区初始化赋值:



通信初始化:
D12、D13分别赋值H04、H7E,即就是控制字赋值16#047E
D14、D15分别赋值H00、H00,即就是主设定值赋值16#0000



启动变频器命令段:
D0:上位机预写频率值0~5000对应0~50Hz
D300:写频率值辅助用寄存器
D12、D13分别赋值H04、H7F,即就是控制字赋值16#047F
D14、D15为上位机预写频率值



停止变频器程序段:
D12、D13分别赋值H04、H7A,即就是控制字赋值16#047A
D14、D15分别赋值H00、H00,即就是主设定值赋值16#0000,即就是停止操作时给定变频器频率为0Hz。


给定频率判断程序段:
当启动变频器后,此时上位机给D0寄存器赋值,当D0不等于D300时,将D0送入D300,且把M3置位,为写入频率做好准备。

给定频率程序段:
D12、D13分别赋值H04、H7F,即就是控制字赋值16#047F,给定频率时要保持启动状态
D300:写频率值辅助用寄存器
D14、D15为上位机预写频率值


延时命令段:
写操作辅助信号M5接通后,延时10ms后将写操作执行标志位M6置位,开始执行RS2指令

RS2指令段:
M6接通允许执行RS2指令,发送缓冲区首地址为D1,发送字节计数为16、接收缓冲区首地址为D17,接收字节计数为16,这均来自USS协议发送与接收规定;
M6上升沿将三菱FX5U通道1(内置RS485通信口)发送请求标志位SM8561置位,则开始发送数据;
当三菱FX5U通道1(内置RS485通信口)接收结束标志位SM8562置位后,接收完成,转存接收到的数据至D147~D162里;
接收完成标志位SM8562被置位或者超时判断标志位SM8565被置位时复位各个标志位,完成一次收发控制。


P0子程序:计算D1~D15低8位异或校验值
入口参数:D131开始的寄存器为要参与异或校验的数据,低8位有效;
入口参数:D129参与异或校验的数据个数;
出口参数:D130终异或校验值,低8位有效。


九
三菱FX5U系列PLC通信程序测试
编译程序,将程序下载至PLC后,关闭变频器电源,打开串口调试助手,设置好串口调试助手通信参数,开始测试PLC通信程序:
接通M0,通信初始化,则串口调试助手收到:
02 0E 01 00 00 00 00 00 00 00 00 04 7E 00 00 77
接通M1,启动变频器,则串口调试助手收到:
02 0E 01 00 00 00 00 00 00 00 00 04 7F 00 00 76
给D0赋值4000,给定频率,则串口调试助手收到:
02 0E 01 00 00 00 00 00 00 00 00 04 7F 0F A0 D9
接通M2,停止变频器,则串口调试助手收到:
02 0E 01 00 00 00 00 00 00 00 00 04 7A 00 00 73
经分析,上述初始化、启动、给定频率、停止变频器等报文正确。
十
三菱FX5U和西门子MM420系统联调
按照第三部分所讲,完成三菱FX5U通道1(内置RS485通信口)和西门子MM420本体RS485通信口硬件连接,依次上电,经过测试,三菱FX5U通信程序可以完成对西门子MM420变频器启动、停止和给定频率操作。