0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于CANoe MQTT节点仿真的T-Box远程功能自动化测试

北汇信息POLELINK 2022-08-02 10:27 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1.背景

在之前一篇《T-Box功能自动化测试方案》的案例分享中,我们介绍了一种利用安卓系统的控制交互指令,实现T-Box和手机端交互功能的自动化测试方案。但是在项目开发前期,由于T-Box、TSP后台、App可能由不同的厂家负责开发,每个产品开发的进度和完整度是不一致的。所以为了更早的对T-Box的功能进行自动化测试和验证,如果T-Box与TSP后台的通信使用了MQTT协议,则可以利用MQTT协议的特点,通过CANoe仿真另外一个Client,实现CANoe、Broker和T-Box之间的信息交互。

MQTT通信模型

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议)是IBM在1999年发布的一种基于发布/订阅(Publish/Subscribe)模式的"轻量级"通讯协议。该协议可用极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,MQTT在物联网等领域有很广泛的应用。

MQTT也是一种基于客户端-服务器的发布/订阅消息协议,包含发布者(Publisher)、代理(Broker)、订阅者(Subscriber)三个角色。发布者和订阅者之间没有直接的连接,需要通过Broker进行消息的存储和转发,而Broker又通过主题(Topic)进行消息的发送和接收。

poYBAGLnl3qAaYjWAADBVcYsKVM707.png

图1 MQTT通信模型

一个典型的MQTT消息通信流程如图1所示:

1)发布者(Publisher)连接到Broker;

2)订阅者(Subscribers)连接到Broker,并订阅主题“vehiclespeed”;

3)发布者(Publisher)发送给Broker一条消息,主题为“vehiclespeed”;

4) Broker收到Publisher的消息后,发现Subscriber订阅了“vehiclespeed”主题,然后将消息转发给Subscriber;

5)订阅者(Subscribers)从Broker接收发布者(Publisher)发送的消息。

2. CANoe CFS介绍和配置

CANoe的连接特性服务(Connectivity Features Service)主要用于物联网或工业领域支持MQTT协议的设备,CANoe将这些设备抽象成分布式对象(Distributed Objects),通过本地网络(Local Network)或云端代理服务器实现各客户端之间的通信。同时CANoe 15.0版本新增了一种新的通信方式,让代理(Broker)在CANoe中运行来实现通信,从而实现一些故障注入的测试。

本文主要以本地网络的形式对MQTT的仿真和测试进行介绍,其中发布者和订阅者通过CANoe仿真实现,Broker可使用真实的服务器,或者在本地电脑搭建测试用Broker,将Broker地址(需使用外网的IP或域名)和端口配置到TBox中。

Broker搭建完成后,在CANoe的Options设置窗口中配置Broker的IP地址和端口(MQTT功能仅在连接CANoe license时可用),示例如图2所示:

pYYBAGLnl6KACAQ7AAESlvDhIkM619.png

图2 CANoe MQTT配置界面

3. MQTT环境配置

在仿真MQTT Client之前,需要在CANoe的Communication Setup环境中手动创建Distributed Objects的接口(Interfaces)和对象(Objects),或者通过vCDL文件,创建MQTT的数据库。

手动创建MQTT数据库流程如下:

1) 创建需要的通信接口

2) 选择Objects,创建需要通信的对象;

3) 为每个对象创建对应的数据;

4) 选择创建的Data数据,在右侧MQTT配置窗口中配置其属性值。

创建vCDL数据库的流程如下:

1) 打开 “Open vCDL Editor”;

2) 创建MQTT的接口、对象和数据;

3) 定义MQTT的属性值;

4) 选择import Data Source导入创建好的vCDL文件。

vCDL导入成功以后,可查看定义属性及参数,如图3所示:

poYBAGLnl8qAUEUqAAGyIZvOw0o784.png

图3 MQTT模型编辑界面

使用vCDL创建MQTT数据库的示例如图4所示:

pYYBAGLnl-OAWBI_AAGRGfPcz3s366.png

图4 MQTT vCDL数据库开发界面

4.测试介绍

通过上面的配置,下面以远程解闭锁控制测试为例,为大家介绍下测试执行过程:

pYYBAGLnl_OAco9aAAEgffy9h6c659.png

图5 T-Box测试环境

测试环境如图5所示,由于此测试方案CANoe是调用测试电脑的网卡与Broker进行通信,所以需要测试电脑可连接外网。

当CANoe运行时,会自动连接到Broker。测试数据流如下:

1) CANoe(Publisher)首先仿真TSP发送远程解锁请求给Broker;

2) Broker根据Topic,自动转发该请求给T-Box(Subscriber)。T-Box收到该远程请求后,通过CAN或Ethernet将远程解锁请求发送至车内节点;

3) CANoe仿真车内节点反馈远程解锁成功的应答;

4) 收到远程解锁成功应答后,T-Box(Publisher)把远程解锁执行结果上传至Broker,Broker根据Topic,自动转发该请求给CANoe(Subscriber)。

测试交互的数据如图6所示:

pYYBAGLnmAiAO_AcAADaibKzSqs802.png

图6 CANoe MQTT数据监控窗口

5.总结

本方案利用MQTT协议的技术特点,无需TSP提供额外的API接口,即可实现T-Box远程功能的自动化测试,可以在项目早期完成对T-Box的功能验证。根据不同的技术特点,北汇信息已实现在线测试、离线分析等不同的T-Box自动化测试的方案,欢迎大家进一步沟通交流。

注:文中部分图片来源于Vector。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CANoe
    +关注

    关注

    4

    文章

    82

    浏览量

    9537
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    德思特TS-TBOXA-4 T-BOX弱网测试仪:精准赋能T-BOX多场景信号测试

    德思特正式推出最新研发的TS-TBOXA-4 T-BOX弱网测试仪。该产品专为应对车载T-BOX复杂的无线通信测试挑战而设计,为T-BOX
    的头像 发表于 11-28 15:31 142次阅读
    德思特TS-TBOXA-4 <b class='flag-5'>T-BOX</b>弱网<b class='flag-5'>测试</b>仪:精准赋能<b class='flag-5'>T-BOX</b>多场景信号<b class='flag-5'>测试</b>

    小白也能懂车载T-BOX网关到底是个什么东西(转载)

    是干嘛用的? T-BOX这个名字听着挺专业,其实说白了,它就是车上的一个小盒子,专门负责让你的车能联网、能跟手机APP交流。这里需要稍微提一下,我们星创易联推出的SV910车载网关也推出了T-BOX功能
    的头像 发表于 11-06 20:25 304次阅读
    小白也能懂车载<b class='flag-5'>T-BOX</b>网关到底是个什么东西(转载)

    车联网智能车载终端4G全网通T-BOX设计与应用

    4G全网通T-BOX是车联网核心设备,通过“车端数据采集-云端交互-远程控制”闭环,支撑新能源汽车安全监控、车队管理等场景,其设计需满足车规级硬件与多协议兼容性。 核心定位与价值 T-BOX
    发表于 10-11 10:06

    增强T-BOX设计,新唐编解码器的重要作用

    T-BOX主要应用于新能源汽车的智能汽车通信终端。集成物联网技术、数据通信、远程监控和高效可靠的控制功能,实现智能安全驾驶。 T-BOX的主要特点: 沟通能力:实时互联。
    发表于 09-05 06:26

    自动化测试平台ATECLOUD推出AI算法功能

    作为纳米软件自主研发的自动化测试平台,ATECLOUD 始终致力于为用户提供高效优质的测试解决方案。面对5G、AI等前沿技术的迭代发展,平台深度融合新技术持续升级测试能力,最新推出的A
    的头像 发表于 07-22 16:10 482次阅读
    <b class='flag-5'>自动化</b><b class='flag-5'>测试</b>平台ATECLOUD推出AI算法<b class='flag-5'>功能</b>

    是德示波器MSOX3054T远程控制自动化测试

    在现代电子测试领域,自动化测试技术已成为提升效率、降低人力成本的关键。是德示波器MSOX3054T作为一款高性能仪器,其远程控制
    的头像 发表于 07-08 17:09 498次阅读
    是德示波器MSOX3054<b class='flag-5'>T</b><b class='flag-5'>远程</b>控制<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>

    是德频谱分析仪的远程控制与自动化测试方案详解

    远程控制与自动化测试成为了现代测试系统中不可或缺的一部分。以下是关于是德频谱分析仪远程控制与自动化
    的头像 发表于 06-19 15:16 571次阅读
    是德频谱分析仪的<b class='flag-5'>远程</b>控制与<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>方案详解

    金航标北斗GPS蓝牙等射频产品在新能源汽车T-BOX上的应用

    KinghelmSlkor汽车用t-box产品照片和安装尺寸图在智能网联汽车等万物互联产品快速发展的时代,车载T-BOX(TelematicsBox)和OBD(On-BoardDiagnostics
    的头像 发表于 06-16 17:07 558次阅读
    金航标北斗GPS蓝牙等射频产品在新能源汽车<b class='flag-5'>T-BOX</b>上的应用

    T-BOX应用NXP S32K148控芯片 搭配 贴片式TT卡(SD NAND)存储的完美结合

    作为行业领先的智能硬件解决方案,T-BOX凭借其卓越的性能和灵活的应用场景,正逐渐成为市场的宠儿。而在其核心技术架构中,S32K148主控芯片与贴片式T卡MKDV1GIL-AST存储器的完美搭配,更是为T-BOX的智能
    的头像 发表于 04-30 00:00 990次阅读
    <b class='flag-5'>T-BOX</b>应用NXP S32K148控芯片 搭配 贴片式TT卡(SD NAND)存储的完美结合

    T-BOX硬件方案解析:STM32与SD NAND芯片的高效协同

    在智能网联汽车快速发展的当下,车载T-BOX(Telematics Box)作为车辆与云端互联的核心枢纽,其性能和可靠性直接决定了用户体验的上限。米客方德(MK)推出的基于STM32H7RX主控芯片
    的头像 发表于 04-25 11:35 1408次阅读
    <b class='flag-5'>T-BOX</b>硬件方案解析:STM32与SD NAND芯片的高效协同

    基于obd/t-box的车联网系统设计与应用

    基于obd/t-box的车联网系统设计与应用
    的头像 发表于 04-10 16:44 1324次阅读
    基于obd/<b class='flag-5'>t-box</b>的车联网系统设计与应用

    东软T-BOX连续三年蝉联双榜第一

    近日,盖世汽车研究院发布《2024年T-BOX供应商市场装机量排行》,在对比2023年排名发生较大变化的背景下,东软依然稳据T-BOX本土供应商第一位。同时,在佐思汽研最新推出的《2025年全球
    的头像 发表于 04-08 10:53 1085次阅读

    T-BOX 的强大功能远程查询与控制全解析

    用户随时随地掌握车辆状态,还能通过远程控制功能提供前所未有的便利与安全感。那么,T-BOX究竟能为我们带来哪些改变?它的工作原理又是怎样的?本文将为您一一解答。
    的头像 发表于 03-19 11:25 1711次阅读
    <b class='flag-5'>T-BOX</b> 的强大<b class='flag-5'>功能</b>:<b class='flag-5'>远程</b>查询与控制全解析

    CANoe仿真HTTP节点的实战秘籍大公开

    使用需求,依托于CANoe的连接功能集(ConnectivityFeatureSet),以及DistributedObject(DO)功能,可以仿真HTTP
    的头像 发表于 03-05 10:04 907次阅读
    <b class='flag-5'>CANoe</b><b class='flag-5'>仿真</b>HTTP<b class='flag-5'>节点</b>的实战秘籍大公开

    通用自动化测试软件 - TAE

    INTEWORK-TAE(Test Automation Executor) 是一款通用的测试用例自动化执行框架,用于汽车电子自动化测试,可支持仿真
    的头像 发表于 01-02 13:42 1286次阅读
    通用<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>软件 - TAE