400-123-4567

新闻资讯 分类
雷竞技RAYBET基于MQTT协议的车云通信设计

  雷竞技RAYBET基于MQTT协议的车云通信设计的功能场景及数据量也逐渐增多,具有轻量化、可靠性等特点的MQTT协议成为很多OEM车云通信协议的选择。本文主要介绍。

  MQTT(Message QueuingTelemetry Transport)是由OASIS发布的应用层协议,采用订阅/发布的通信模式,下层基于TCP/IP进行传输。该标准在、车联网等领域有广泛应用。

  可靠:基于TCP可靠通信雷竞技RAYBET,并可以提供三种消息发布服务质量等级QoS,以适应不稳定网络的传输需求

  Client:MQTT客户端,交互应用数据的节点,发布数据的角色为Publisher,接收数据的角色为Subscriber

雷竞技RAYBET基于MQTT协议的车云通信设计(图1)

  MQTT协议在车载通信领域的典型应用场景是车云通信,因此本文以车内节点与云端的通信场景为示例,介绍MQTT系统设计的主要流程和方法。

雷竞技RAYBET基于MQTT协议的车云通信设计(图2)

  MQTT系统设计需要依赖前期完成的车云UC(Use Case)描述、通信矩阵、车内拓扑以及云端架构部署等作为输入,针对MQTT的特点,完成通信设计,主要输出产物为基于特定车型或平台的MQTT通信矩阵。车端和云端的开发工程师需要根据设计输出产物,完成相关功能的软件开发,测试工程师也需要以设计输出为基础,开展MQTT测试验证工作。

  由于各节点间需要交互的数据均需要经过Broker,因此一般将性能较好的云端的服务器部署为Broker,车内需要与云端通信的节点为Client,云端后台/APP等节点为Client。

雷竞技RAYBET基于MQTT协议的车云通信设计(图3)

  MQTT系统内各节点用Topic来交互应用数据,Topic的划分可以从数据内容或者功能角度划分,例如车况上传的数据在一个Topic,远程车辆控制的数据在一个Topic。

  MQTT协议单帧报文支持的最大传输数据为256M Bytes,因此一次性传输需求超过该大小的数据不适合采用MQTT进行传输。

  MQTT数据格式没有严格定义,只要收发双方采用统一的编码/解码规则即可,常采用JSON数据格式,需要传输的应用数据信息,用“key-value”进行描述,key的定义以及value的数据类型需要参考车内的通信矩阵,可以保持一致。

  使用JSON格式的好处是只要求数据收发双方对同一个key的理解是一致的,对“key-value”组合的排布顺序无严格要求,如果有扩展需求,可以直接添加“key-value”组合定义,并且“key-value”组合是可选的,按照时间/事件情况选择发送/不发生即可,无需额外制定协议层策略,兼容性和灵活性较高雷竞技RAYBET

雷竞技RAYBET基于MQTT协议的车云通信设计(图4)

  MQTT具备QoS策略以保证不同情况下的通信服务质量,因此需要根据功能场景需求为不同的数据Topic设计匹配的QoS策略,整体原则如下:

  对于实时性要求较高,且允许一定程度丢帧的场景,QoS推荐设计为0,例如用于实时显示用的周期上传的数据

  对于具有严格传输需求(不允许丢帧、不允许重复传输)的场景,QoS推荐为2,例如安全相关的数据

  本文首先介绍了MQTT协议,再从MQTT角色设计、Topic设计、数据类型设计、QoS设计几个方面出发,介绍MQTT系统设计流程和方法,车端ECU及云端的开发工程师需要根据MQTT系统设计的输出完成后续软件开发,实现车云功能的通信。

  经纬恒润作为OPEN联盟会员和AUTOSAR联盟的高级合作伙伴,长期为国内外各大OEM和供应商提供涵盖TCP/IP、SOME/IP、DoIP、AVB、TSN、DDS等技术领域的设计和测试咨询服务,积极研发和探索车载网络前沿技术的工程应用。通过多个项目的实践经验雷竞技RAYBET,已建立了高质量、本土化的设计与测试一体化解决方案,为整车网络架构提供可靠支持。

官方微信 关闭