您好,欢迎来到易妖游戏网。
搜索
您的当前位置:首页MODBUS TCP/IP通信协议及测试方法

MODBUS TCP/IP通信协议及测试方法

来源:易妖游戏网

1 前言

MODBUS是一项应用层报文传输协议,是一个请求/应答协议,提供功能码规定的服务,用于在通过不同类型的总线或网络连接的设备之间的客户机/服务器通信。
本文介绍如何使用格西调试精灵(原格西烽火)通信测试软件编写测试项目,进行调试和测试Modbus TCP/IP通信节点。

2 通信协议

2.1 术语

MODBUS通信协议
MODBUS是OSI 模型第7层上的应用层报文传输协议,它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信。

2.2 通信接口

支持以太网接口,支持多点连接,支持TCP/IP协议,保留502端口访问Modbus。

2.3 数据链路层

MODBUS TCP/IP协议是一个主-从协议。子节点之间从不会互相通信。主节点在同一时刻可以发起多个Modbus事务处理。MODBUS TCP/IP 的通信系统可以包括不同类型的设备:
1)连接至TCP/IP网络的MODBUS TCP/IP 客户机和服务器设备;
2)互连设备,例如:在TCP/IP 网络和串行链路子网之间互连的网桥、路由器或网关,联接,该子网允许将MODBUS 串行链路客户机和服务器终端设备连接起来。

MODBUS TCP/IP 通信结构

2.3.1 帧格式

Modbus应用协议定义了简单的于其下面通信层的协议数据单元(PDU-Protocol Data Unit)。

在不同总线或网络的Modbus协议映射在协议数据单元之外引入了一些附加的域。发起Modbus事务处理的客户端构造Modbus PDU,然后添加附加的域以构造适当的通信PDU。

TCP/IP网络上的MODBUS应用数据单元。

在TCP/IP 上使用一种专用报文头识别MODBUS 应用数据单元。将这种报文头称为MBAP 报文头(MODBUS 协议报文头)。MBAP 报文头包括下列域:

2.4 应用层

MODBUS有三类功能码。它们是:
公共功能码:是较好地被定义的功能码,保证是唯一的,MODBUS组织可改变的,公开证明的,具有可用的一致性测试,MB IETF RFC 中证明的,包含已被定义的公共指配功能码和未来使用的未指配保留供功能码。
用户定义功能码:有两个用户定义功能码的定义范围,即65至72和100至110,用户没有 MODBUS 组织的任何批准就可以选择和实现一个功能码,不能保证被选功能码的使用是唯一的。
保留功能码:一些公司对传统产品通常使用的功能码,并且对公共使用是无效的功能码。

公共功能码定义如下表所示。

2.4.1 功能码描述

请求PDU

正确响应PDU

错误响应PDU

这是一个请求读离散量输出20-38的实例。

3 测试项目编制

3.1 基本协议编制

3.1.1 协议项分类

利用格西调试精灵软件的协议激励的功能,把通信规约按照树形结构分类组织,使得管理上更加有条理,查找也更加方便。
根据Modbus通信协议功能码进行协议编辑。

3.1.2 协议项编制

根据协议帧格式,为了方便控制和显示,把协议项的数据固定拆分为事务处理标识符、协议标识符、长度、单元标识符、功能码5个部分,动态增减的部分是数据域,可以根据具体命令进行进一步拆分。
下面以“(0x01)读线圈”命令为例说明协议项编制方法。

主站请求帧

从站正常应答帧

从站异常应答帧

3.1.3 公共协议库

通过对基本协议项的编写、测试和验证,建立一个由基本协议项组成的公共协议库。

3.2 测试用例编制

测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。通信协议测试属于黑盒测试,可以采用黑盒测试常用的等价类划分法、边界值分析法、错误推测法、因果图法等基本方法来设计测试用例。

测试方案设计完成后,格西调试精灵软件能够利用编制完成的公共协议库,采用搭积木的方式,通过复制和粘贴命令即可非常快捷的创建测试用例。测试用例的组织方式通常是根据测试方案的设计层次采用树形结构分类组织。

4 测试方法

4.1 测试系统构成

4.2 单项测试与整体测试

格西调试精灵软件支持单项测试和整体测试,一次测试一个测试项或者整个测试集。执行的方法是选中需要测试的测试项或者测试集,然后执行激励命令即可。
下面以执行“(0x01)读线圈”测试项为例说明。

协议数据解析界面

4.3 单次测试与循环测试

格西调试精灵软件支持单次测试和循环测试,能很好满足各种调试测试和性能测试的需求。执行的方法是选中需要测试的测试项或者测试集,然后执行激励或循环激励命令即可。

4.4 脚本控制测试

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- vipyiyao.com 版权所有 湘ICP备2023022495号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务