三菱slmp报文格式 (三菱内置以太网口实际通讯速率)

一、FX5u网口规格

1.1支持的底层协议:TCP/IP、UDP/IP、cc-link ie 现场网络basic

1.2可在底层协议上面开发:1)SLMP 2)MELSOFT连接 3)Socket通信 4)、FTP服务器

5)MODBUS/TCP 6)SNTP客户端 7)Web服务器(HTTP)

8))简单CPU通信

1.3通讯速度:100M bps

1.4通讯距离:PLC与集线器之间100M,可加两个集线器延长为300M(需向集线器厂家确认)

1.5连接数:最新的固件可连接16台走CC-LINK IE basic 的设备和8台其他协议的设备

建议不要加太多,5u网口只有100mbps,太多会影响通讯速度

可添加以太网模块,以太网模块最多可连接32台

1.6 IP地址:默认192.168.3.250

二、SLMP

2.1 SLMP:第三方的触摸屏或软件跟5u的PLC通讯通常采用SLMP协议通讯

2.2 用FX5U做服务器,用以太网调试助手做客户端

2.3.1通过ASCII代码或二进制码进行通讯,有1E帧跟3E帧两种

2.3.2与利用ASCII代码的数据进行的通信相比,利用二进制代码的数据进行的通信的通信数据量仅约为一半,因此能

够缩短通信时间。

2.3.3通讯时间:

利用个人计算机间进行TCP/IP通信,利用SLMP的通信从本站的数据寄存器(D)中以二进制代码的数据读取32点的数据时从接收个人计算机的请求数据到完成处理的时间(单位: ms)

安装站扫描时间为40ms。

Tfs=1+(0.001×32)+40×1+对象设备的ACK处理时间

2.3.4报文格式:

2.3.5帧头:自动附加TCP/IP和UDP/IP用帧头,无需用户设置

三菱学习笔记--以太网口1-SLMP协议通信

2.3.6 副帧头

三菱学习笔记--以太网口1-SLMP协议通信

2.3.7 二进制码进行通讯:(ASCII码类似,参考手册)

对象设备从CPU模块读取数据的情况下

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

从对象设备向CPU模块写入数据的情况下

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

2.3.8请求目标网络编号,请求目标站号:1)连接站:网络编号:00H 目标站号:FFH;

2.3.9请求目标模块I/O编号: 本站 03FFH

2.3.10请求目标多点站号:未指定多点连接的SLMP对应设备的情况下,设置00H。

2.3.11请求数据长:以16进制数指定“保留”~“请求数据”的合计大小。(单位: 字节)

2.3.12保留:0000H

2.3.13指令、子指令:

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

1)起始软元件编号--软元件代码--软元件点数-------数据

000000(三位) 参考下图 0000(2位------根据点数设置(注意数据长)

2)软元件代码:

三菱学习笔记--以太网口1-SLMP协议通信

2.3.15实际样例:

1)位读取/写入

500000FFFF03000C00000001040100640000900800 位读取M100~M108

500000FFFF0300100000000114010064000090080011111111 位写入M100~M108

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

1.1)具体报文格式

1.2)批量读取指令

50 00 副帧头

00 请求目标网络编号

FF 请求目标站号

FF03 请求目标模块I/O编号

00 请求目标多点站号

0C00 请求数据长

0000 保留

0104 指令(读取0401二进制低位在前)

0100 子指令(1个位为单位0001二进制低位在前)

640000 起始软元件编号(以100编号开始)

90 软元件代码(M*)

0800 软元件点数M100-M107共8位状态

1.3)位软元件批量写入指令(16进制)

50 00 副帧头

00 请求目标网络编号

FF 请求目标站号

FF 03 请求目标模块I/O编号

00 请求目标多点站号

10 00 请求数据长

00 00 保留

01 14 指令(写入取1401二进制低位在前)

01 00 子指令(1个位为单位0001二进制低位在前)

64 00 00 起始软元件编号(以100编号开始)

90 软元件代码(M*)

08 00 软元件点数 8位

11 11 11 11 赋值 M100~M107=ON)

2)字写入位

500000FFFF03000E000000011400000000009D0100FFFF 字写入Y0~Y17置ON

2.1)字软元件批量写入指令(16进制)

50 00 副帧头

00 请求目标网络编号

FF 请求目标站号

FF 03 请求目标模块I/O编号

00 请求目标多点站号

0E 00 请求数据长

00 00 保留

01 14 指令(写入取1401二进制低位在前)

00 00 子指令(1个字即16位为单位)

00 00 00 起始软元件编号(以0编号开始)

9D 软元件代码(M*)

01 00 软元件点数 16位

FF FF (写入数据值:Y0~Y17=ON)

500000FFFF030010000000011401000000009D080011111111 位写入Y0~Y8=ON

500000FFFF030010000000011401000000009D080000000000 位写入Y0~Y8=OFF

3)字读取\写入

500000FFFF03000C00000001040000640000A80200 读取D100 D101

500000FFFF03001000000001140000640000A8020034127856 写入D100 D101

三菱学习笔记--以太网口1-SLMP协议通信

三菱学习笔记--以太网口1-SLMP协议通信

3.1)字软元件批量读取指令(16进制)

正常响应 D0 00 00 FF FF 03 00 02 00 00 00

异常响应 D0 00 00 FF FF 03 00 0B 00 61 C0 00 FF FF 03 00 01 04 01 00

红色部分为报错代码:C061(数据长度异常)

50 00 副帧头

00 请求目标网络编号

FF 请求目标站号

FF 03 请求目标模块I/O编号

00 请求目标多点站号

0C 00 请求数据长

00 00 保留

01 04 指令(读取取0401二进制低位在前)

00 00 子指令(1个字即16位为单位)

64 00 00 起始软元件编号(以100编号开始)

A8 软元件代码(D*)

02 00 软元件点数 2点 D100、D101的值

3.2)字软元件批量写入指令(16进制)

50 00 副帧头

00 请求目标网络编号

FF 请求目标站号

FF 03 请求目标模块I/O编号

00 请求目标多点站号

10 00 请求数据长

00 00 保留

01 14 指令(写入取1401二进制低位在前)

00 00 子指令(1个字即16位为单位)

64 00 00 起始软元件编号(以100编号开始)

A8 软元件代码(D*)

02 00 软元件点数 2点 D100 D101 的值

34 12 78 56(写入数据值:D100=1234H、D101=5678H:plc内部的寄存器是高位在前,

低位在后因此需要调换一下)