如何使用 Bittly 实现多个Modbus设备自动化测试

18天前     90

Bittly 提供了强大的 Modbus 自动化测试功能,支持 Modbus RTU、RTU-ASCII、TCP 和 UDP 协议。您可以通过 Bittly 便捷地管理多个 Modbus 设备,无需繁琐的手动操作,即可实现批量测试、数据监控和分析。Bittly 具备直观的界面和丰富的功能模块,如设备自动发现、属性自动发现、寄存器批量读取、数据自动刷新等,使测试流程更加高效。重要的是,Bittly 支持通过拖拽的方式任意组合测试步骤来实现根据需求编写测试逻辑而实现自动化测试,适用于复杂的设备调试和长期测试需求,从而大幅提升调试和验证效率。

测试计划

首先我们需要制定一下测试计划。 作为说明我们使用一个温湿度传感器和一个数码管显示屏。 我们需要从温湿度传感器上读取当前温度值,并验证温度是否在一个合理的范围内, 如果验证成功则将温度显示在数码管显示屏上。 并且我们循环5次,每次间隔1秒钟。 那么, 通过后我们得到的测试用例如下:

Bittly功能测试示例

连接到Modbus设备

在创建测试用例之前,我们需要先将设备与 Bittly 进行连接, 这样我们才可以在测试用例中使用设备。

以温湿度传感器为例, 我们需要在通讯连接中新建一个 Modbus 连接 :

Bittly通讯连接建立

接着,在新建的 Modbus 通讯连接中配置连接到设备的信息:

Bittly通讯连接Modbus串口配置

如果我们不知道设备ID, 我们可以在配置完成串口连接之后对串口进行扫描来自动搜索设备ID,例如:

Bittly自动扫描Modbus设备ID

到这里,我们便完成了Modbus设备的连接, 下面我们需要对设备属性进行配置。

配置Modbus设备属性

配置完成连接后,我们可以定义设备属性列表,从而快速查看和编辑属性内容。

如果我们没有设备文档, 我们可以通过 Bittly 的属性扫描器来自动识别出设备属性,这里我们以温湿度传感器的保持寄存器为例来扫描设备中的属性。 首先我们切换到保持寄存器标签, 并选择底部工具栏中的 “自动扫描属性列表” 操作 :

Bittly自动扫描Modbus寄存器

这样 Bittly 便可以通过已经配置完成的通讯连接信息来扫描温湿度传感器的所有保持寄存器 :

Bittly自动扫描Modbus寄存器

扫描完成后,我们可以直接应用到设备属性列表,这样就省去了手动编辑属性的操作。

当然,自动扫描出来的属性只能单个寄存器配置, 而对于温湿度传感器来说,如果我们需要读取温度值,我们可能需要组合多个寄存器的值来获取。 以本文示例的温湿度传感器为例, 其温度值存储于 0x20 和 0x21 两个寄存器组成的浮点数值。 那么我们可以进行如下配置:

Bittly配置Modbus寄存器到指定数据类型

这样我们便可以通过温度属性直接读物温度数值。

我们打开连接,并刷新属性列表来查看属性值:

Bittly显示Modbus属性值

需要注意的是,在默认情况下, Bittly 的 Modbus 连接并不启用自动刷新操作,所以这里需要手动刷新后才能够看到温度属性值。 如果需要自动刷新,则只需要启用自动刷新并配置刷新间隔时间即可。

同样,我们将数码管显示屏的Modbus连接也配置完成, 如下:

Bittly配置Modbus示例

新建测试用例

配置完成Modbus设备属性后,我们便可以通过测试模块的功能测试来编辑我们的自动化测试用例。

首先切换到测试模块,选择功能测试,然后点击新建按钮来新建一个空白的测试用例:

Bittly新建空白功能测试用例

其中,测试步骤列表区域用于编辑测试用例步骤, 我们可以通过展开每个测试步骤来配置步骤执行效果。 在右侧位测试用例配置区域,包括全局配置,变量配置以及测试用例支持的步骤列表和指令列表。

对于变量配置,我们在整个测试用例中可能需要临时存储一些数据, 以我们最开始的测试计划为例,我们可能需要一个 温度 变量来临时存储从设备中取出的属性值。变量可以随意编辑、新建和删除。

编辑测试用例时,可通过右侧步骤列表将需要执行的步骤拖放到左侧执行步骤的合适位置来编排测试用例内容。 而指令列表则是执行指令步骤的一个快捷方式,从而省去拖放步骤后再去选择指令的操作。 不过在本位的测试用例中,我们仅需要操作 Modbus 相关的步骤即可。

编辑测试步骤

我们的测试步骤如下:

循环5次 :
    读取当前温度 -> 检查温度值 -> 显示到数码管
    延时1秒

首先我们先打开温湿度传感器和数码管显示屏的连接,我们需要将打开连接步骤拖放到执行步骤列表中,并选择对应的Modbus连接 :

Bittly功能测试步骤Modbus通讯连接打开

打开 Modbus 连接并非必要步骤,因为在获取或者设置Modbus设备属性时,如果服务没有被打开则会被自动打开。 当然,如果您的设备需要在打开连接后延时一段时间或者执行其他操作便可以使用该步骤手动执行打开操作。

连接打开之后,我们便需要添加一个循环,因为我们需要循环执行5次, 这里我们选择计数循环来实现 :

Bittly功能测试计数循环配置

接着,我们在循环步骤内容添加需要执行的操作。

首先是读取当前温度,在此之前我们需要先新建一个变量来保存温度数据:

Bittly功能测试新建变量

接着,拖放属性读取步骤拖放到执行步骤列表中,并配置读取的属性以及读取完成之后保存的目标变量:

Bittly功能测试配置Modbus属性读取

温度读取完成后,我们需要进行温度数据的验证,这个值其实可以由其他服务来获取或者是一个固定的温度,这样能够保证测试执行的一致性。 在这里我们选择一个固定的数值范围 18~22 之间。即只要读取出的温度数据在 18~22之间即算作数值正确:

Bittly功能测试变量验证

当验证通过后,我们需要将数值显示到数码管显示屏中, 这里我们需要的是属性设置操作,即将温度变量写入显示屏的内容属性 :

Bittly功能测试Modbus属性更新配置

循环的最后,我们拖放一个延时步骤来执行延时操作:

Bittly功能测试延时操作示例

最后的最后, 我们来关闭温湿度传感器和显示屏的通讯连接:

Bittly功能测试关闭Modbus连接

到这里我们便完成了测试用例的编辑操作, 我们保存一下测试用例,并切换到运行模式来执行该测试用例。

执行测试

切换到执行模式后,点击 运行 按钮即可运行该测试用例:

同时我们可以通过数码管看到当前温度:

总结

通过 Bittly 的自动化测试功能,我们可以非常高效地对多个 Modbus 设备进行批量调试和验证。整个过程无需编写复杂的脚本,只需通过图形化界面拖拽步骤、配置参数,即可构建灵活的测试逻辑。这对于多设备联动、长期稳定性测试、生产线测试等场景具有显著优势。

在本示例中,我们完成了一个典型的功能测试流程:读取温湿度传感器的数据、验证其合理性、并将结果显示到数码管屏上,整个过程循环5次,模拟了实际工况下的设备联动测试。Bittly 提供了从通讯连接、属性识别、变量管理、步骤编排到测试执行的全流程支持,使 Modbus 设备的自动化测试更加简单、高效、可视化。

未来,您还可以结合 Bittly 的更多高级功能,如条件判断、分支逻辑、片段引用、指令执行等,构建更复杂、更智能的自动化测试系统,助力设备调试和质量保障工作进一步提升。

相关文章
如何使用 Bittly 实现多个Modbus设备自动化测试 18天前 Bittly 串口调试助手使用指南:从下载安装,设备连接,数据发送到上位机与自动化测试以及设备模拟 25天前 Bittly 如何将 TCP 连接收到的数据绑定到面板组件上 1个月前 如何使用 Bittly 进行串口指令调试 - 复杂参数构建与解析 6个月前 如何使用 Bittly 为串口设备快速创建上位机 6个月前
Image Modal
2025 © Bittly 沪ICP备2023006101号-2