(作者单位:中国石油新疆油田分公司数智技术公司,邮编 831399)
摘要:随着物联网技术的持续进步和油田信息化建设的日益深化,油田内部的信息化设备数量与种类呈现出显著的增长趋势。为了确保这些设备间的高效互联互通,并提升整体系统的兼容性和稳定性,迫切需要建立一套统一的通信标准。本论文基于此背景,设计并实现了一套针对Zigbee/LoRa设备的协议一致性检测系统。该系统不仅能够对油田内部部署的各类Zigbee和LoRa设备进行标准化测试,以验证其是否符合既定的通信协议,还能够识别并解决潜在的互操作性问题。通过提供详尽的检测报告,支持油田在规划、部署及维护过程中做出更为明智的决策。
关键词:协议一致性;Zigbee;LoRa;通讯协议
一、前言
物联网系统平稳运行和高效管理的实现,依赖于物联网设备通讯协议的一致性,新疆油田数智技术公司设立了物联网应用技术实验室。该实验室在主要从事油田物联网构建所涵盖设备及供应厂商之间协议标准化的统一、规范和管理,保证所有入场设备在通信、性能、规格等关键指标上满足实际应用需求。
本文建立的基于Zigbee/LoRa设备的协议一致性检测系统,通过仪器仪表之间联动遵循严格流程和机制,经过全面细致的评估,在通信协议层面保持一致性。该系统不仅能够提升设备入网前的检测效率,降低因设备不兼容带来的运维成本,还能为油田物联网的长期稳定运行提供坚实的技术支撑。
二、系统需求
针对厂商对于协议的不同理解导致不同的协议实现,甚至错误的实现等问题,测试协议就是确保正确实现协议标准的协议栈软件以及符合不同厂商协议的设备能够正常通信[[1]]。物联网设备检测实验室通讯协议基于指定的标准设计,用来检测相关设备通讯一致性。基于指定标准设计,实验室检测相关设备通讯协议的一致性。为符合不同协议厂商设备通信正常和保证协议标准被协议栈软件的正确实现的目标[[2]]。
因此需要一种有效的方法对协议实现进行判别,系统通过观察设备实现不同环境和条件下的反应行为来验证实现与相应的标准协议是否一致,以此保证一致性测试协议在不同网络保持一致[[3]]。
三、系统设计
(一)总体架构设计
本系统设计上采用前后端分离,Web前端利用http/https协议实现服务器之间的数据交互与通信,后端技术框架使用Springboot技术,系统后台数据访问方式采用API+Token,异步消息处理框架技术是使用Akka,技术架构如下图所示:
图1 系统技术架构
(二) 功能设计
按照总体设计需求,本检测系统共分为7个功能模块:
1.用户管理:负责角色登录、系统用户和浏览器token的实现。
2.协议测试集管理:负责项目测试管理、协议测试内容和关联待测设备。
3.激励源管理:激励源的配置管理。
4.待测设备管理:负责设备测试基础信息、设备测试类型,关联协议测试集和测试内容。
5.设备检测管理:配置待测试设备和协调器。
6.RTU箱:测试管理。
7.测试报告管理:页面格式设置, 测试报告按照此格式生成,供用户下载。
图2系统实现效果图
四、系统实现
1.激励源管理
激励源作为实验一项为数据对照的数据源。设备通讯采用TCP协议,激励源设备的通讯状态能够查看,和激励源设备信息的配置。在协议测试中,需要激励源辅助测试。
激励源包括:
全自动压力校验仪,恒定压力的产生是通过液压维持,用于对数字压力表提供测试激励。
智能化仪表检测系统,通过油槽水槽可产生并维持恒定的温场,用于对数字温度表提供测试激励。
三相电参测量仪,可输出指定相位、幅值、频率的交流三相电,用于对电参模块提供测试激励。
功图位移测试滑台,可按照指定速度运动,并停在指定点,用于对功图位移传感器提供测试激励。
图3激励源管理流程图
通过激励源配置IP与Port,开启系统TCPServer服务,将系TCPServer统和激励源通讯。为确保通信连接的持续性,激励源会定期传输心跳包信号数据,以此维持设备活跃在线状态。
2.协议测试集管理
通过设备测试协议一致性编辑,建立协议测试项和协议集合。通过协议项,能够动态拼接设备接收信息,并且能够客观的修改观察协议是否保持正确和结构。
3.设备检测中心
将待测设备和激励源设备通过编辑好的协议集或协议项进行一致性测试。根据协议类型选择ZigBee和Lora,选择对应激励源和待测设备。测试之中能实时查看协议上下行协议的对比情况,最终返回测试结果。
a)ZigBee设备连接:
选择测试的ZigBee设备类型,接收激励源设备信号,然后选待测设备。建立与ZigBee协调器的连接,连接成功后的设备引入协调器组网中,接下来配置激励源设备,将其设置成信号发生器,为实验对照组。选定待测试的协议集,根据测试需求,可灵活添加多个协议项,但每次只能选择一个协议项测试。最后启动测试,系统将自动记录协议在上行和下行方向上的通信结果,测试日志记录上下行的结果。
b)Lora设备连接:
先通过系统设置界面对Lora账户执行初始化配置步骤。然后选定Lora设备的具体类型,在连接成功的激励源设备中选择待测设备。在待测试的Lora设备进行相关配置,随后调整激励源的参数设置,作为实验对照组,其配置并不影响最终测试结果。在此基础上,选择一套或多套待测试的协议集,允许添加多个协议项,但每次测试只能选择一个协议项执行。开始测试后,测试日志上记录测试上下的结果。
4.RTU一致性测试
选择对应类型的RTU进行通讯,内容对应选择并进行默认项参数读取和自定义用户读取。读写类型的选取,对RTU箱写入进行测试。测试结果可形成完整文档。
图4 RTU一致性测试流程图
在测试之前,保持与RTU箱连接状态,通过RTU内置的TCP的Server服务读值,如果返回值正常,就判断RTU箱可以通讯。在测试过程中,可以通过自定义参数值进行测试,也可用默认参数值测试。若修改参数值,在可写入项中修改值写入RTU中。首次读取和写入后,最后测试,对比再次读取值和写入值。完成后可导出测试文档。
五、系统测试
(一)协议测试集管理测试
功能描述:在测试集管理页面可创建测试集合测试项,在测试集里创建测试项。对测试集和测试项具有删除,重命名,移动,复制等操作。
协议测试集管理测试内容:
序号-执行步骤-预期输出-实际结果
1-测试协议集管理-显示全部的测试项和测试集信息-正常
2-协议测试列表翻页控件-正常翻页显示数据-正常
3-新建测试集合、测试项-创建测试集合功能能正常使用;进入测试详情页,保存测试项功能能正常使用-正常
4-删除测试项/测试集合-删除功能能正常使用-正常
5-测试集合,测试项,重命名操作-对测试集合、测试项重命名功能能正常使用-正常
6-测试项,移动操作-对测试项移动、复制功能能正常工作-正常
7-测试项详情页,点击删除按钮-删除成功后,跳回测试集管理页面-正常
8-测试项详情页,修改基本信息,即名称,内容,帧间延迟,失效超时-数据输入功能正常-正常
9-测试项详情页,添加帧、复制帧、删除帧-添加、复制、删除功能正常使用-正常
10-帧的数据表,-数据功能正常使用-正常
11-帧的数据表,点击添加;选择添加数据,点击复制、删除、上移、下移-添加、复制、删除、上移、下移数据功能正常使用-正常
(二)设备检测中心
1.设备中心ZigBee协调器配置与组网结构
ZigBee的仪表中存在着配置网络和工作网络,配置网络中能够对仪表进行这相关配置,比如工作模式的ID,组号、编号、密码等,工作网络才是仪表进行常规数据和实时数据等。
测试内容:
序号-执行步骤-预期输出-实际结果
1-将协调器插入电脑USB或其它接口-在协调器串口配置队列显示该协调器的接口-正常
2-选择协调器串口,用默认参数点击链接-连接成功,状态显示已连接,可以选择断开-正常
3-已连接的协调器,选择断开-断开成功,已连接的设备信息清空-正常
4-连接ZigBee成功后,退出该测试页面,再返回该测试-已保存协调器配置,重现协调器已连接-正常
5-未连接情况下,点击协调器配置;已连接情况下,点击协调器配置-配置值为空;获取协调器配置的值-正常
6-加载默认值,且写入参数-写入成功,再读取的值,协调器的值为默认值-正常
7-读取单项参数;写入单项参数-读取成功,其他项不刷新;写入单个成功,其他项不受影响-正常
8-配置模式下与ZigBee仪表组网-设备接入,并显示为配置模式-正常
9-在配置模式下,已连接设备中点击配置-显示该设备的基本配置参数,并显示上下行日志-正常
10-在已连接配置模式中的设备,修改值,并下发-设备下发,且提示重启设备-正常
11-在已下发配置项时重启设备-配置成功,日志上下有变化-正常
12-协调器在工作模式下,接入设备-设备接入,并显示为工作模式-正常
2.检测中心Lora配置与组网模块
Lorawan设备的测试需要居于Cube平台测试,需要Cube的支持。测试之前,Cube有提供API进行访问。
Lora配置与组网模块测试内容:
序号-执行步骤-预期输出-实际结果
1-在首页选择系统配置->lorawan配置,并输入Cube账号和密码以及网关和APPEUI,点击登录-登录成功-正常
2-进入到测试中心,选择设备类型为Lora协议-显示Cube的网关和设备列表-正常
3-修改网关名称或信道计划-修改成功-正常
3-网关状态ping和重启-修改成功-正常
4-导入设备,选择ABP或OTAA设备-显示对应的输入框-正常
5-确定导入设备-导入成功,在列表中课件-正常
6-删除Lora设备-删除成功-正常
3.检测中心压力激励源功能模块
压力激励源功能、温度激励源功能、电参激励源功能、功图激励源功能等测试
Lora配置与组网模块测试:
序号-项目-执行步骤-预期输出-实际结果
1-压力激励源测试-压力激励源下发压力-激励源设备生成特定压力值-正常
2--压力激励源泄压-激励源设备压力降低-正常
3-温度激励源测试-温度激励源下发特定温度-激励源设备生成特定温度-正常
4--温度激励源停止加热-激励源设备恢复原来温度-正常
5-电参激励源功能测试-电参激励源下发接线方式、电压档位、电流档位、切换档位方向-下发成功-正常
6--电参激励源参数回读-下发成功,并在各项回读出值-正常
7--电参激励源相位、复制、频率更新-下发成功,更新相位、幅值、频率,在激励源能观察变化-正常
8-功图激励源功能测试
-功图激励源滑台开机-滑台开机成功,激励源会有响声-正常
9--功图激励源下发最大位移、最大速度、设置加速时间、设置减速时间-下发成功,若在滑台运行中设置,则在下个来回周期生效-正常
10--功图激励源开启运动、立即停止、减速停止-滑台按照特定参数来回运动;滑台立刻停止;滑台根据减速时间缓慢停止-正常
11--功图激励源回原点-滑台停止,且回原点-正常
12--功图激励源清除报警-滑台如果发出警报声或出现异常,则会清除-正常
六、结语
基于Zigbee/LoRa设备的协议一致性检测系统实现用户管理、协议测试集管理、激励源管理、待测设备管理、设备检测管理、RTU一致性管理以及测试报告管理等多个功能模块的协同工作,共同构成了完整的协议一致性测试系统,能够对待测Zigbee/LoRa设备进行全面的测试与评估,确保其在不同应用场景下的通信一致性和互操作性。未来,我们将继续优化和完善该系统,探索更多物联网通信协议的集成与互操作性,构建更加广泛兼容的物联网生态系统,为物联网技术的进一步发展贡献更多的力量。
参考文献
[1]申二星,李祥攀,许期长.ZigBee网络测试与验证平台的设计与实现[J].计算机光盘软件与应用,2014,17(03):49-51.
[2]蒋溢,易红,夏英,等.TD-SCDMA协议一致性测试研究[J].微电子学,2004,(05):558-561.
[3]卓兰.ZigBee技术及测试认证综述[J].信息技术与标准化,2011,(12):42-46.