收藏 分销(赏)

标准modbus协议文本模板.doc

上传人:天**** 文档编号:9513979 上传时间:2025-03-29 格式:DOC 页数:10 大小:873.54KB
下载 相关 举报
标准modbus协议文本模板.doc_第1页
第1页 / 共10页
标准modbus协议文本模板.doc_第2页
第2页 / 共10页
点击查看更多>>
资源描述
ISCS与子接口协议 版本: V 1.1 南京南瑞集团企业 修订统计 版本 日期 起草 审阅 交叉审阅 备注 V1.0 -07-27 陆艮峰 初稿 1 通信接口 基于以太网MODBUS TCP/IP协议 ISCS系统FEP(前端处理器)配置为主机, 子系统通讯设备配置为从机。ISCS系统每500ms向子系统 发送一次轮询报文。 2 MODBUS TCP/IP 协议 2.1 协议概述 MODBUS TCP/IP协议在应用层采取MODBUS信息定义, 在传输层和网络层采取TCP/IP, 用于以太网通讯。MODBUS TCP/IP协议和OSI各层之间对应关系由下图表示: (图片起源于MODBUS.org: 参考OSI模型应用层模型) 19世纪70年代MODBUS协议首次公布, 至今已经在工业自动化领域广泛应用。MODBUS协议获取简便(访问.com), 且便于实现。 MODBUS协议本身没有改变, 但对报文发送方法和速率作了改变, 以满足工业应用实时性需求。MODBUS/TCP由此产生。 MODBUS TCP/IP就是简单地将MDOBUS帧嵌入到TCP帧中。TCP/IP请求/应答机制能和MODBUS本身主/从机制很好配合工作。 2.2 报文格式组成(标准MODBUS TCP/IP) 报文格式组成: 报头 功效码 数据 报头描述: 字段 用户端 服务端 事务标识 由用户端初始化 服务端从接收到请求中拷贝 协议标识 由用户端初始化 服务端从接收到请求中拷贝 长度 由用户端初始化 服务端初始化 (应答) 单元标识 由用户端初始化 服务端从接收到请求中拷贝 事务标识: 用于事务配对。MODBUS服务端在应答时拷贝来自用户端请求事务标识。 请求和应答经过事务标识相对应。所以, 在同一时间, TCP连接事务标识必需是唯一。有多个方法应用事务标识。比如简单计数“TCP次序号”, 每次请求时加1。 协议标识: 用于系统内多元标识。MODBUS协议用‘0’标识。 长度: 长度字段以字节计数, 包含单元标识和数据字段。 单元标识: 该字段用于系统内路由。其经典应用为请求和服务器应答报文返回值在该字段值必需相同。 在一些情况下, 单元标识携带远程设备MODBUS从机地址。但在TCP/IP层, MODBUS服务端用其IP地址寻址, 所以MODBUS单元标识就没有实际意义。此时该字段值为0xFF。 次序号应用: Ø 对于每个信息, MODBUS MASTER (ISCS FEP) 会给MODBUS SLAVE (子系统)初始化/制造次序号; Ø MODBUS SLAVE (子系统)响应信息应使用从MODBUS MASTER (ISCS FEP)发出相同次序号; Ø ISCS FEP应确定从子系统收到次序号与之前发送给子系统次序号相同; ISCS FEP增加次序号数值标准: Ø 次序号应用两个字节来储存; Ø 次序号范围应是(0-65535)或(0x0000 to 0xFFFF); Ø 次序号初始数值应是0; Ø 对于每个发出信息,包含用于正常轮询、 故障轮询、 重试信息或控制, ISCS FEP应把次序号数值增加1; Ø 假如ISCS FEP发觉子系统响应信息次序号有错误, 应不理会该信息, 并宣告通讯状态欠佳。 2.3 报文详述 本文中定义寄存器地址将依据子系统供给商最终提供IO点类表作对应修改。 2.3.1 功效码0x04(读输入寄存器) 比如: ISCS向子系统发送查询帧, 获取子系统设备状态: Description 描述 Size(Byte)长度(字节) Definition含义 Header报头 Transaction Identifier 事务标识 2 TCP SEQUENCE NUMBER TCP 次序号 Protocol Identifier协议标识 2 0x0000(Modbus Tcp为0) Length长度 2 0x0006 Unit Identifier单元标识 1 0xFF (Modbus Tcp总为0xFF) Modbus Data Modbus数据 Function Code功效码 1 0x04 Starting Address起始地址 2 0x XXXX (依据实际情况定义) Number of Registers寄存器数量 2 N(最大为125个寄存器) 子系统向ISCS返回响应 Description描述 Size(Byte)长度(字节) Definition含义 Header 报头 Transaction Identifier 事务标识 2 TCP 次序号(从用户端请求中拷贝) Protocol Identifier协议标识 2 0x0000(从用户端请求中拷贝) Length长度 2 2*N+3 Unit Identifier 单元标识 1 0xFF Modbus Data Modbus数据 Function Code 功效码 1 0x04 Byte Count 字节个数 1 2*N(N最大为125个寄存器) 子系统发送到ISCS数据假如超出125个寄存器, ISCS能够轮询数次。 Data (as requested)请求数据 2*N 0xXX………XX(依据实际点表定义) 注: 本表中N、 X出现部分将依据实际点表定义。 2.3.2 功效码0x10(预置多寄存器) 比如: ISCS向子系统发送信息: Description 描述 Size(Byte) 长度(字节) Definition含义 Header报头 Transaction Identifier 事务标识 2 TCP SEQUENCE NUMBER TCP 次序号 Protocol Identifier 协议标识 2 0x0000 Length 长度 2 2*N+7(最大为125个寄存器) Unit Identifier 单元标识 1 0xFF Modbus Data Modbus数据 Function Code 功效码 1 0x10 Write Starting Address 写起始地址 2 0x XXXX(依据实际点表定义) NUMBER OF REGISTERS 寄存器个数 2 N(最大为125个寄存器) Byte Count 字节个数 1 2*N(N最大为125个寄存器) 子系统发送到ISCS数据假如超出125个寄存器, ISCS能够轮询数次。 Data 数据 2*N 0xXX………XX(依据实际点表定义) 子系统向ISCS返回响应: Description 描述 Size(Byte) Definition 含义 Header报头 Transaction Identifier 事务标识 2 TCP 次序号(从用户端请求中拷贝) Protocol Identifier 协议标识 2 0x0000(从用户端请求中拷贝) Length 长度 2 0x0006 Unit Identifier 单元标识 1 0xFF(从用户端请求中拷贝) Modbus Data Modbus数据 Function Code 功效码 1 0x10 Write Starting Address 写起始地址 2 0x XXXX(和用户端请求地址一致) NUMBER OF REGISTERS 寄存器个数 2 N(和用户端请求寄存器数一致) 注: 本表中N、 X出现部分将依据实际点表定义。 2.3.3异常处理 异常处理目是: 当通讯故障时, 向用户端提供与故障相关信息。 Ø 响应功效码=请求功效码+ 0x80; Ø 错误功效码用于提醒错误原因。 现在使用异常码是: 01, 02, 03和04。 异常码 名称 含义 01 ILLEGAL FUNCTIAON 服务端不支持请求报文所要求功效。 原因可能是: 此功效仅仅适适用于新型设备, 目前使用设备不含有此功效。 此功效码也表明: 服务端(从站)处于故障状态, 无法处理用户端请求。比如, 服务端还未被初始化, 就被要求返回数据。 02 ILLEGAL ADDRESS 服务端不支持请求报文中数据地址。 在一些特定条件下, 数据个数和数据长上度有可能不对应, 从而产生此错误。 假如一个控制器总共有100个寄存器。用户端请求数据包中, 假如寄存器起始地址是96, 数据长度为4, 这是许可。不过, 假如寄存器起始地址是96, 数据长度是5, 异常发生。因为, 96+5 = 101, 已经超出了控制器最大寄存器数量。 03 ILLEGAL DATA VALUE 服务端发觉 : 用户端发送数据中, 包含有没有效数据。 此异常表明: 服务端接收到数据包含错误。 此异常并不一定意味着: 服务端接收数据包中, 某个数据越限。因为, Modbus协议对特定寄存器含义不作处理。 04 SLAVE DEVICE FAILURE 当服务端实施对应功效时: 发生了无法恢复错误。 2.3.4功效码0x04(读输入寄存器)异常响应 比如: ISCS向子系统发送查询帧, 获取子系统设备状态: Description 描述 Size(Byte)长度(字节) Definition含义 Header报头 Transaction Identifier 事务标识 2 TCP SEQUENCE NUMBER TCP 次序号 Protocol Identifier协议标识 2 0x0000(Modbus Tcp为0) Length长度 2 0x0006 Unit Identifier单元标识 1 0xFF (Modbus Tcp总为0xFF) Modbus Data Modbus数据 Function Code功效码 1 0x04 Starting Address起始地址 2 0x XXXX (假设起始地址+寄存器数量超出了服务端最大地址) Number of Registers寄存器数量 2 N(最大为125个寄存器) 子系统向ISCS返回异常响应 Description描述 Size(Byte)长度(字节) Definition含义 Header 报头 Transaction Identifier 事务标识 2 TCP 次序号(从用户端请求中拷贝) Protocol Identifier协议标识 2 0x0000(从用户端请求中拷贝) Length长度 2 0x03 Unit Identifier 单元标识 1 0xFF Modbus Data Modbus数据 Function Code 功效码 1 0x84(响应功效码) Illegal Function Code 错误功效码 1 0x02 (非法地址, 详见异常码表) 注: 本表中N、 X出现部分将依据实际点表定义。 2.3.5 功效码0x10(预置多寄存器) 异常响应 比如: ISCS向子系统发送信息: Description 描述 Size(Byte) 长度(字节) Definition含义 Header报头 Transaction Identifier 事务标识 2 TCP SEQUENCE NUMBER TCP 次序号 Protocol Identifier 协议标识 2 0x0000 Length 长度 2 2*N+7(N最大为125个寄存器) Unit Identifier 单元标识 1 0xFF Modbus Data Modbus数据 Function Code 功效码 1 0x10 Write Starting Address 写起始地址 2 0x XXXX(假设起始地址+寄存器数量超出了服务端最大地址) NUMBER OF REGISTERS 寄存器个数 2 N(最大为125个寄存器) Byte Count 字节个数 1 2*N(N最大为125个寄存器) Data 数据 2*N 0xXX………XX(依据实际点表定义) 子系统向ISCS返回异常响应 Description描述 Size(Byte)长度(字节) Definition含义 Header 报头 Transaction Identifier 事务标识 2 TCP 次序号(从用户端请求中拷贝) Protocol Identifier协议标识 2 0x0000(从用户端请求中拷贝) Length长度 2 0x03(实际长度) Unit Identifier 单元标识 1 0xFF(从用户端请求中拷贝) Modbus Data Modbus数据 Function Code 功效码 1 0x90(响应功效码) Illegal Function Code 错误功效码 1 0x02 (非法地址, 详见异常码表) 注: 本表中N、 X出现部分将依据实际点表定义。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服