最后更新:2022-07-03 14:29:19 手机定位技术交流文章

1,背景
在以前的T-Box功能自动化测试计划中,我们介绍了一种使用Android系统控制交互指令,T-Box和移动电话接口的自动测试程序。但在项目开发的早期阶段,因为T-Box,TSP后端,应用程序可能由不同的制造商开发,每个产品开发的进度和完整性不一致.因此,为了提前自动化测试和验证T-Box功能,如果T-Box与TSP后端之间的通信使用MQTT协议,然后你可以使用MQTT协议的功能,通过CANoe模拟另一个客户端,实现CANoe、Broker和T-Box之间的信息交互。
1.1MQTT通信模型
MQTT(Message Queuing Telemetry Transport,Message Queue Remote Telemetry(MST)是IBM于199年基于发布/订阅模式的“轻量”通信协议。协议使用很少的代码和有限的带宽,为远程设备连接提供实时可靠消息服务。作为一种低成本、低宽带、即时消息协议,MQTT在IoT领域具有广泛的应用范围。
MQTT也是基于客户端服务器的发布/订阅消息协议。它由三个角色组成:出版商、经纪人和订阅者。出版商与订阅者之间没有直接联系,需要通过经纪人存储和发送消息,经纪人也通过主题发送和接收消息。

图1MQTT通信模型
图1显示了一个典型的MQTT消息通信过程:
(一)出版商与经纪人有联系;
(二)订阅者与经纪人联络并订阅“车速”主题;
(三)出版商向经纪人发出“车速”的讯息;
(四)经纪人发现订阅者收到《出版商》的讯息后已订阅“车速”主题,然后将讯息转达订阅者;
(五)订阅者收到由出版商发出的经纪人消息;
2.CANoeCFS的介绍和配置
CANoe's Connectivity Features 服务主要用于支持MQTT协议的设备在物体网络或行业。CANoe将这些设备抽象成分布式对象,客户端之间的通信通过本地网络或基于云的代理服务器实现。CANoe 15.Version 0增加了一种新的通讯方式,允许经纪人在CANoe进行沟通,因此,进行了一些失败的注射试验。
本文主要介绍了MQTT的局部网络仿真和测试.出版商和订阅者实现CANoe仿真,经纪人可以使用真正的服务器,或在本地计算机上建立一个测试浏览器,配置经纪人地址(以使用外部网络上的IP或域名)和TBox端口。
经纪人设置后,在CANoe选项设置窗口中配置经纪人的IP地址和端口(MQTT函数仅在连接到CANoe许可证时可用),如图2所示:

图2CANoe MQTT配置界面
3.MQTT环境配置
在模拟MQTT客户端之前,在CANoe的通信设置环境中,您需要手动创建分配对象的接口和对象,或通过vCDL文件,为MQTT创建数据库。
手动创建MQTT数据库过程如下:
(一)建立必要的通讯接口;
2)选择对象来创建通信对象;
3)为每个对象创建相应的数据;
4)在右边的MQTT配置窗口中选择创建的数据数据并配置其属性值;
创建vCDL数据库的过程如下:
1)打开开vCDL编辑器;
2)创建MQTT接口、对象和数据;
3)定义MQTT属性值;
4)选择导入数据源来导入创建的vCDL文件;
在成功导入vCDL后,您可以查看定义属性和参数,如图3所示:

图3MQTT模型编辑器接口
图4显示了一个使用vCDL创建MQTT数据库的例子:

图4MQTT vCDL数据库开发接口
4,测试介绍
按照上述配置,以远程切断和锁定控制测试为例,介绍了以下测试执行过程:

图5T-Box测试环境
如图5所示,测试环境要求测试计算机能够连接到外部网络,因为CANoe测试程序调用测试计算机的网络卡与Broker进行通信。
当CANoe运行时,它自动连接到经纪人。 测试数据流如下:
1)CANoe(出版商)首先模拟TSP发送远程解锁请求给Broker;
2)经纪人根据主题自动向T-Box(用户)发送请求。 T-Box收到 remote request后,通过CAN或Ethernet发送 remote unlock request到车内节点;
3)CANoe模拟车内节点对远程成功解锁的响应;
4)收到成功远程解锁响应后,T-Box(发布者)将远程解锁执行结果上传给Broker,后者根据主题自动发送请求给CANoe(订阅者)。
图6显示了测试相互作用的数据:

图6 CANoe MQTT数据监测窗口
5,总结
本方案采用MQTT协议的技术特点,无需TSP提供额外的API接口,实现T-Box远程功能的自动测试,T-Box的功能验证可以在项目早期完成。基于不同的技术特点,已经实施了多个T-Box自动化测试方案,如在线测试和非线性分析。欢迎进一步交流.
注: 文本中的一些图像来自Vector.
本文由 在线网速测试 整理编辑,转载请注明出处。