一种基于MQTT框架的远程车载控制系统及方法与流程

文档序号:20439227发布日期:2020-04-17 22:17阅读:455来源:国知局
一种基于MQTT框架的远程车载控制系统及方法与流程

本发明涉及一种基于mqtt框架的远程车载控制系统及方法。



背景技术:

随着科学技术的进步和车联网技术的持续发展,车辆远程控制成为目前车辆标配的趋势,能够远程控制车辆,为汽车远程控制和安全提供依据。

目前的车辆远程控制系统架构大部分都是基于http(hypertexttransferprotocol,即超文本传输协议,)或socket等传统的通信协议的传输方式,其存在的问题为:协议开销较大,安全性低,响应时间慢,多车载系统连接时候并发吞吐量很慢等,无法适用物联网联网设备多样性,低功耗等问题。且这样的传输方式给用户和车厂管理员获取车辆数据和实时控制车辆感知差,实时性不高,缺乏创新性。

而目前mqtt架构大部分也是采用client/broker(客户端/代理服务端)架构,即车载为客户端,远端服务器为代理服务端,这种缺陷在于:对于多车载系统自身功能扩展不足,对于车载系统与车载系统与其他车载设备的互联扩展能力不足,车载系统远程唤醒执行远控指令功能时候延迟较高,用户体验差。



技术实现要素:

本发明目的在于提供一种提高用户体验的基于mqtt框架的远程车载控制系统及方法。

本发明所述的一种基于mqtt框架的远程车载控制系统,包括车载t-box装置和远程管理系统,所述车载t-box装置设置通信模块单元、处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元;所述远程管理系统设置cc处理器单元、短信服务单元、ccmqtt客户端单元以及ccmqtt代理单元;

所述cc处理器单元,用于接收用户或管理员通过交互界面执行的远程控制指令数据,并转换为短信数据发送至短信服务单元;

所述短信服务单元,用于接收短信数据,并转换为唤醒短信消息,发送至通信模块单元;

所述通信模块单元,用于接收唤醒短信消息,并将唤醒短信消息转发至处理器单元;并用于车载t-box装置移动蜂窝网络数据的转发。

所述处理器单元,将接收到的短信唤醒消息进行数据识别及处理,并对处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元进行唤醒,并将唤醒短信数据转发至can总线管理单元;并接收can总线管理单元回传的车辆状态数据,将其发送至ecumqtt客户端单元;且接收来自ecumqtt客户端单元的远程控制指令并将执行的结果回传给ecumqtt客户端单元。

所述can总线管理单元,用于对远程控制指令数据进行can协议转换成远程控制指令的can帧数据并发送至车辆,车辆完成相应的远程控制指令操作后通过can总线网络发送车辆响应结果的can帧数据至can总线管理单元,can总线管理单元对响应结果的can帧进行协议转化为内部处理器可识别的数据,并发送至处理器单元;

所述ecumqtt客户端单元,用于接收车辆状态数据,并对其进行mqtt协议处理及传输层加密处理,发送至ecumqtt代理单元;并且负责对ccmqtt客户端单元回传的数据进行解密解封装;

所述ecumqtt代理单元,分别用于与ecumqtt客户端建立mqtt协议通道,与ccmqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据通过通信模块单元传输至ccmqtt代理单元;

所述ccmqtt代理单元,分别用于与ccmqtt客户端建立mqtt协议通道,与ecumqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据传输至ccmqtt客户端单元;

所述ccmqtt客户端单元,对车辆状态数据解封装和tls解密处理,并将其传输至cc处理器单元,并对cc处理器单元回传的车辆控制指令数据进行mqtt协议处理及传输层加密处理传输至ccmqtt代理单元。

本发明所述的一种基于mqtt框架的远程车载控制方法,包括以下步骤:

s1:远程管理系统内的cc处理器单元接收用户或管理员通过交互界面执行的远程控制指令数据,并转换为短信数据发送至远程管理系统内的短信服务单元;

s2:远程管理系统内的短信服务单元接收短信数据,并转换为唤醒短信消息,发送至车载t-box装置内的通信模块单元;

s3:车载t-box装置内的通信模块单元接收唤醒短信消息,并将唤醒短信消息转发至车载t-box装置内的处理器单元;

s4:车载t-box装置内的处理器单元接收到的短信唤醒消息进行数据识别及处理,并对车载t-box装置内的处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元进行唤醒,并将唤醒短信数据转发至车载t-box装置内的can总线管理单元;并接收车载t-box装置内的can总线管理单元回传的车辆状态数据,将其发送至车载t-box装置内的ecumqtt客户端单元;

s5:can总线管理单元对远程控制指令数据进行can协议转换成远程控制指令的can帧数据并发送至车辆,车辆完成相应的远程控制指令操作后通过can总线网络发送车辆响应结果的can帧数据至can总线管理单元,can总线管理单元对响应结果的can帧进行协议转化为内部处理器可识别的数据,并发送至处理器单元;

s6:ecumqtt客户端单元接收车辆状态数据,并对其进行mqtt协议处理及链路层加密处理,发送至ecumqtt代理单元;

s7:ecumqtt代理单元分别与ecumqtt客户端单元建立mqtt协议通道,与远程管理系统内的ccmqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据通过通信模块单元传输至ccmqtt代理单元;

s8:ccmqtt代理单元分别用于与ccmqtt客户端建立mqtt协议通道,与ecumqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据传输至远程管理系统内的ccmqtt客户端单元;

s9:ccmqtt客户端单元对车辆状态数据解封装和tls解密处理,并将其传输至远程管理系统内的cc处理器单元,并对cc处理器单元回传的车辆控制指令数据进行mqtt协议处理及传输层加密处理并传输至ccmqtt代理单元。

车载t-box装置内的ecumqtt代理单元和设置在远程管理系统内的ccmqtt代理单元通过桥接的方式连接,具有ecumqtt客户端单元和ecumqtt代理单元的车载t-box装置安全转发远程控制指令的响应结果到远程管理系统,远程管理系统响应车主用户或车辆厂商管理员的远程指令请求。对于睡眠中的车辆,车主用户或车辆厂商管理员可以通过远程管理系统的cc处理器单元远程唤醒车辆和获取车辆状态数据、位置信息、车载t-box信息,从而可以安全远程控制车辆和车载t-box装置,车载t-box装置通过采集车辆车身网络。已唤醒的车载t-box装置通过采集车辆车身网络,并通过ecumqtt客户端单元和ecumqtt代理单元,由通信模块单元的移动蜂窝网络将加密和封装的数据发射给远程管理系统,远程管理系统响应用户或车辆厂商管理员的远程指令,并通过ccmqtt客户端单元和ccmqtt代理单元返回响应结果到用户或车辆厂商管理员。从而确保了数据高传输性,处理多车载系统并发时吞吐量高,响应时间快,协议开销小,更适用于低功耗和车载系统的多样性。进一步提高用户和车厂管理员获取车辆数据和实时控制车辆的体验,且用户可以有效的管理车辆数据和升级车辆数据系统。

附图说明

图1为一种基于mqtt框架的远程车载控制的系统原理图;

图2为本发明与多车辆车载装置桥接原理图;

图3为本发明实现ca认证的系统原理图;

图4为一种基于mqtt框架的远程车载控制的方法流程图。

具体实施方式

如图1所示,一种基于mqtt框架的远程车载控制系统,包括车载t-box装置和远程管理系统,所述车载t-box装置设置通信模块单元、处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元;所述远程管理系统设置cc处理器单元、短信服务单元、ccmqtt客户端单元以及ccmqtt代理单元;

所述cc处理器单元,用于接收用户或管理员通过交互界面执行的远程控制指令数据,并转换成短信数据发送至短信服务单元;

所述短信服务单元,用于接收短信数据,并转换为唤醒短信消息,发送至通信模块单元;

所述通信模块单元,用于接收唤醒短信消息,并将唤醒短信消息转发至处理器单元;并用于车载t-box装置移动蜂窝网络数据的转发。

所述处理器单元,将接收到的短信唤醒消息进行数据识别及处理,并对处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元进行唤醒,并将唤醒短信数据转发至can总线管理单元;并接收can总线管理单元回传的车辆状态数据,将其发送至ecumqtt客户端单元;且接收来自ecumqtt客户端单元的远程控制指令并将执行的结果回传给ecumqtt客户端单元。

所述can总线管理单元,用于对远程控制指令数据进行can协议转换成远程控制指令的can帧数据并发送至车辆,车辆完成相应的远程控制指令操作后通过can总线网络发送车辆响应结果的can帧数据至can总线管理单元,can总线管理单元对响应结果的can帧进行协议转化为内部处理器可识别的数据,并发送至处理器单元;

所述ecumqtt客户端单元,用于接收车辆状态数据,并对其进行mqtt协议处理及传输层加密处理,发送至ecumqtt代理单元;并且负责对ccmqtt客户端单元回传的数据进行解密解封装;

所述ecumqtt代理单元,分别用于与ecumqtt客户端建立mqtt协议通道,与ccmqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据通过通信模块单元传输至ccmqtt代理单元;

所述ccmqtt代理单元,分别用于与ccmqtt客户端建立mqtt协议通道,与ecumqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据传输至ccmqtt客户端单元;

所述ccmqtt客户端单元,对车辆状态数据解封装和tls解密处理,并将其传输至cc处理器单元,并对cc处理器单元回传的车辆控制指令数据进行mqtt协议处理及传输层加密处理传输至ccmqtt代理单元。

车载t-box装置内的ecumqtt代理单元和设置在远程管理系统内的ccmqtt代理单元通过桥接的方式连接,具有ecumqtt客户端单元和ecumqtt代理单元的车载t-box装置安全转发远程控制指令的响应结果到远程管理系统,远程管理系统响应车主用户或车辆厂商管理员的远程指令请求。对于睡眠中的车辆,车主用户或车辆厂商管理员可以通过远程管理系统的cc处理器单元远程唤醒车辆和获取车辆状态数据、位置信息、车载t-box信息,从而可以安全远程控制车辆和车载t-box装置,车载t-box装置通过采集车辆车身网络。已唤醒的车载t-box装置通过采集车辆车身网络,并通过ecumqtt客户端单元和ecumqtt代理单元,由通信模块单元的移动蜂窝网络将加密和封装的数据发射给远程管理系统,远程管理系统响应用户或车辆厂商管理员的远程指令,并通过ccmqtt客户端单元和ccmqtt代理单元返回响应结果到用户或车辆厂商管理员。从而确保了数据高传输性,处理多车载系统并发时吞吐量高,响应时间快,协议开销小,更适用于低功耗和车载系统的多样性。进一步提高用户和车厂管理员获取车辆数据和实时控制车辆的体验,且用户可以有效的管理车辆数据和升级车辆数据系统。

如图2所示,车辆之间的车载t-box装置内的ecumqtt代理单元与ecumqtt代理单元建立mqtt协议通道。远程管理系统内的ccmqtt代理单元与多车辆的车载t-box装置内的ecumqtt代理单元建立桥接通道,从而实现双向通道传输信息。使得可以提高多车辆的车载t-box装置自身功能扩展的能力,有效提高对于车载t-box装置与车载t-box装置与其他车载设备的互联扩展的能力,且远程管理系统可以同时控制多辆车载设备,实现车载设备和远程管理系统的互通互联,远程管理系统与车载设备的互通互联,车载设备与车载设备的互通互联,从而提升了用户的体验。而且,车载t-box装置ecumqtt客户端单元和车载t-box装置自身的ecumqtt客户端单元可以进行扩展连接,进一步提高自身的扩展功能。

如图3所示,车载t-box装置还设置ecumqtt协同单元、安全管理单元;远程管理系统还设置ccmqtt协同单元、cc安全管理单元;安全管理单元和cc安全管理单元,均用于存储ca证书的公钥和私钥文件以及mqtt配置文件;ecumqtt协同单元,调取安全管理单元内ca证书的公钥和私钥文件发送至ecumqtt代理单元,ecumqtt代理单元接收ca证书的公钥和私钥文件,并对其进行校验,通过通信模块单元发送至ccmqtt代理单元;并接收ccmqtt代理单元回传的ca证书的公钥和私钥文件,将其发送至安全管理单;ccmqtt协同单元;调取cc安全管理单元内ca证书的公钥和私钥文件发送至ccmqtt代理单元,ccmqtt代理单元接收ca证书的公钥和私钥文件,并对其进行校验,通过通信模块单元发送至ecumqtt代理单元;并接收ecumqtt代理单元回传的ca证书的公钥和私钥文件,将其发送至cc安全管理单。ecumqtt协同单元还对ecumqtt客户端单元进行管理,通知ecumqtt客户端单元是否对车辆状态数进行加密,并回传ecumqtt代理单元验证的ca证书的公钥和私钥文件信息。ccmqtt协同单元还对ccmqtt客户端单元进行管理,通知ccmqtt客户端单元是否对车辆状态数进行加密,并回传ccmqtt代理单元验证的ca证书的公钥和私钥文件信息。

车载t-box装置的ecumqtt代理单元发送ssl版本等信息给ccmqtt代理单元;ccmqtt代理单元通过ccmqtt协同单元获取存储在cc安全管理单元的ca证书的公钥和私钥文件进行回传。进一步地,ccmqtt代理单元通过发送ssl版本、随机数、ca证书的公钥和私钥文件等消息发送给ecumqtt代理单元;ecumqtt代理单元校验是否合法,合法则继续,否则告警;ecumqtt代理单元校验完成后,ecumqtt代理单元通过所属ecumqtt协同单元获取存储在安全管理单元的车载t-box装置的ca证书的公钥和私钥文件。进一步地,ecumqtt代理单元通过通信模块单元将已获取的的车载t-box装置的ca证书的公钥和私钥文件发送到所述远程管理系统的ccmqtt代理单元;远程管理系统的ccmqtt代理单元对车载t-box装置的ca证书的公钥和私钥文件进行校验。具体化地ccmqtt代理单元通过ccmqtt协同单元获取cc安全管理单元的ca证书进行校验,所述检验成功后获得车载t-box装置的ca证书的公钥和私钥文件,并将存储车载t-box装置的ca证书的公钥和私钥文件存储在cc安全管理单元;ccmqtt代理单元把校验结果回传给ecumqtt代理单元;ecumqtt代理单元通过所属ecumqtt协同单元获取存储在安全管理单元的对称加密方法发送给ccmqtt代理单元;ccmqtt代理单元通过ccmqtt协同单元获取cc安全管理组件对称加密方法进行匹配,选择加密度最优方案;ccmqtt代理单元将匹配后的对称加密方法使用已获取的车载t-box装置的ca证书的公钥和私钥文件进行加密生成加密方式的数据,并将加密方式的数据发送到ecumqtt代理单元;ecumqtt代理单元接收到加密方式的数据后,所述ecumqtt代理单元通过所属ecumqtt协同单元获取存储在安全管理单元的自身的ca证书的公钥和私钥文件进行解密,产生随机码作为对称加密密钥并存储在安全管理单元中。进一步地,对远程管理系统的ca证书的公钥和私钥文件进行加密生成对称加密的密钥;ecumqtt代理单元将对称加密的密钥发送给ccmqtt代理单元;ccmqtt代理单元通过ccmqtt协同单元获取cc安全管理单元自身的ca证书的公钥和私钥文件对对称加密的密钥进行解密,获取对称加密的密钥。进一步地,ccmqtt代理单元将校验成功的结果回传给ecumqtt代理单元,即完成ca证书的双向认证;即车载t-box装置的ecumqtt代理单元和远程管理系统的ccmqtt代理单元通过双向认证方式完成初始化安全mqtt桥接通道连接,即可以通过安全mqtt桥接通道进行mqtt安全数据传输。可以实现远程安全控制车辆,如车门、车窗、车灯、尾箱或其他操作。

如图4所示,一种基于mqtt框架的远程车载控制方法,包括以下步骤:

s1:远程管理系统内的cc处理器单元接收用户或管理员通过交互界面执行的远程控制指令数据,并转换为短信数据发送至远程管理系统内的短信服务单元;

s2:远程管理系统内的短信服务单元接收短信数据,并处理为唤醒短信消息,发送至车载t-box装置内的通信模块单元;

s3:车载t-box装置内的通信模块单元接收唤醒短信消息,并将唤醒短信消息转发至车载t-box装置内的处理器单元;

s4:车载t-box装置内的处理器单元接收到的短信唤醒消息进行数据识别及处理,并对车载t-box装置内的处理器单元、can总线管理单元、ecumqtt客户端单元以及ecumqtt代理单元进行唤醒,并将唤醒短信数据转发至车载t-box装置内的can总线管理单元;并接收车载t-box装置内的can总线管理单元回传的车辆状态数据,将其发送至车载t-box装置内的ecumqtt客户端单元;

s5:can总线管理单元对远程控制指令数据进行can协议转换成远程控制指令的can帧数据并发送至车辆,车辆完成相应的远程控制指令操作后通过can总线网络发送车辆响应结果的can帧数据至can总线管理单元,can总线管理单元对响应结果的can帧进行协议转化为内部处理器可识别的数据,并发送至处理器单元;

s6:ecumqtt客户端单元接收车辆状态数据,并对其进行mqtt协议处理及链路层加密处理,发送至ecumqtt代理单元;

s7:ecumqtt代理单元分别与ecumqtt客户端单元建立mqtt协议通道,与远程管理系统内的ccmqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据通过通信模块单元传输至ccmqtt代理单元;

s8:ccmqtt代理单元分别用于与ccmqtt客户端建立mqtt协议通道,与ecumqtt代理单元建立桥接通道,实现双向通道传输信息,并将加密处理后的车辆状态数据传输至远程管理系统内的ccmqtt客户端单元;

s9:ccmqtt客户端单元对车辆状态数据解封装和tls解密处理,并将其传输至远程管理系统内的cc处理器单元,并对cc处理器单元回传的车辆控制指令数据进行mqtt协议处理及传输层加密处理并传输至ccmqtt代理单元。

步骤s4中还包括以下步骤:

s4-1:处理器单元对车载t-box装置内的ecumqtt协同单元进行唤醒,ecumqtt协同单元调取安全管理单元内ca证书的公钥和私钥文件发送至ecumqtt代理单元,ecumqtt代理单元接收ca证书的公钥和私钥文件,并对其进行校验,通过通信模块单元发送至ccmqtt代理单元;并接收ccmqtt代理单元回传的ca证书的公钥和私钥文件,将其发送至安全管理单;

s4-2:远程管理系统内的ccmqtt协同单元调取cc安全管理单元内ca证书的公钥和私钥文件发送至ccmqtt代理单元,ccmqtt代理单元接收ca证书的公钥和私钥文件,并对其进行校验,通过通信模块单元发送至ecumqtt代理单元;并接收ecumqtt代理单元回传的ca证书的公钥和私钥文件,将其发送至cc安全管理单。

步骤s4-1中,还包括以下步骤:

s4-1-1:ecumqtt协同单元对ecumqtt客户端单元进行管理,通知ecumqtt客户端单元是否对车辆状态数进行加密,并回传ecumqtt代理单元验证的ca证书的公钥和私钥文件信息。

步骤s4-2中,还包括以下步骤:

s4-2-1:ccmqtt协同单元对ccmqtt客户端单元进行管理,通知ccmqtt客户端单元是否对车辆状态数进行加密,并回传ccmqtt代理单元验证的ca证书的公钥和私钥文件信息。

车载t-box装置内的ecumqtt代理单元和设置在远程管理系统内的ccmqtt代理单元通过桥接的方式连接,具有ecumqtt客户端单元和ecumqtt代理单元的车载t-box装置安全转发远程控制指令的响应结果到远程管理系统,远程管理系统响应车主用户或车辆厂商管理员的远程指令请求。对于睡眠中的车辆,车主用户或车辆厂商管理员可以通过远程管理系统的cc处理器单元远程唤醒车辆和获取车辆状态数据、位置信息、车载t-box信息,从而可以安全远程控制车辆和车载t-box装置,车载t-box装置通过采集车辆车身网络。已唤醒的车载t-box装置通过采集车辆车身网络,并通过ecumqtt客户端单元和ecumqtt代理单元转发给远程管理系统,远程管理系统响应用户或车辆厂商管理员的远程指令,并通过ccmqtt客户端单元和ccmqtt代理单元返回响应结果到用户或车辆厂商管理员。从而确保了数据高传输性,处理多车载系统并发时吞吐量高,响应时间快,协议开销小,更适用于低功耗和车载系统的多样性。进一步提高用户和车厂管理员获取车辆数据和实时控制车辆的体验,且用户可以有效的管理车辆数据和升级车辆数据系统。且可以实现远程安全控制车辆,如车门、车窗、车灯、尾箱或其他操作。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1