一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种BLE智能钥匙CANFD的大数据传输方法与流程

2022-07-31 00:29:10 来源:中国专利 TAG:

一种ble智能钥匙canfd的大数据传输方法
技术领域
1.本发明涉及一种无线门锁领域,尤其涉及一种基于蓝牙通讯的钥匙定位系统。


背景技术:

2.目前蓝牙数字钥匙的定位均是依靠蓝牙信号强度rssi进行三点定位或者指纹定位。较为成熟的ble智能钥匙(蓝牙智能钥匙,其中ble为蓝牙的英文缩写)是ble主节点和ble从节点通过蓝牙通讯技术接入车身,ble智能钥匙通过ble主节点实现与车身bcm实现控制连接。ble从节点实现监听,取rssi信息实现定位,除此之外的ble智能钥匙的主要功能都是在主节点独立完成。ble智能钥匙系统包括可移动的数字钥匙模块、均设置在车上的蓝牙主模块和若干蓝牙从模块;蓝牙从模块作为蓝牙从节点分布在不同位置上,蓝牙主模块作为ble主节点与数字钥匙模块通讯连接,蓝牙主模块和各蓝牙从模块之间通过can/lin线连接。车身bcm(车身控制模块)是设计功能强大的控制模块,实现离散的控制功能,对众多用电器进行控制。车身bcm的功能包括:电动门窗控制、中控门锁控制、遥控防盗、灯光系统控制、电动后视镜加热控制、仪表背光调节、电源分配等。
3.ble智能钥匙的主要功能:(1)实现ble主节点和手机相关的discover,ble广播,扫描以及建立连接,同时完成业务层的安全认证。
4.(2)有感车控功能:ble主节点接收到手机的ble传输的车控指令,再根据车厂的can车控报文命令,通过can总线直接实现对车辆的解锁/闭锁/等车控指令的控制。
5.(3)无感车控功能:ble从节点监听手机位置,获取蓝牙信号强度rssi,通过ble定位算法,计算当前车主的位置区域,主动实现peps 接闭锁和车辆一键启动功能。
6.参见图1所示的的ble智能钥匙canfd的数据传输方法的示意图,以手机作为数字钥匙模块的载体为例,ble智能钥匙对车身bcm解锁/闭锁过程如下:1、启动手机中的app应用软件和蓝牙功能,由手机进行ble扫描和发送解锁/闭锁等指令;2、ble主节点接收到手机的ble广播后,进行ble配对,然后进行ble协议栈连接,并进行安全认证;3、安全认证通过后,ble主节点即可接收手机发送的解锁/闭锁等指令,并通过can总线向车身bcm发送的解锁/闭锁等指令,实现车控功能。
7.4、ble从节点通过蓝牙监听手机位置,获取手机靠近车身的位置信息后,获取蓝牙信号强度rssi;ble从节点通过can总线将蓝牙信号强度rssi传给ble主节点,再由ble主节点通过相应的ble算法来计算手机的位置,ble主节点根据运算结果通过can总线向车身bcm发送的解锁/闭锁等指令,实现车控功能。
8.上述的ble智能钥匙canfd的数据传输方法,适用于一个数据帧的data小于64字节,导致这种方法具有一定的局限性。随着技术的发展,为了蓝牙通讯的安全可靠,ble智能钥匙和ble 控制系统之间需要更高级的ble安全认证内容,彼此之间的数据传输大部分是
基于密文传输,通常一个数据包超过200字节。而现有的canfd通信的规范标准,一个数据帧的data最大支持64字节,远不能满足超过200字节的密文传输。


技术实现要素:

9.为解决现有ble智能钥匙canfd的数据传输更高级的ble安全认证内容时存在的上述的技术问题,本发明提供一种对canfd通道上双向传输的大数据密文包,进行发送端拆分,并在接收端进行重组的方法,并在传输协议上实现功能安全e2e的保护方法。
10.为实现上述目的,本发明采取的技术方案是:一种ble智能钥匙canfd的大数据传输方法,其特征在于:在ble智能钥匙系统和车身bcm之间设置zcu控制器,作为ble智能钥匙系统和车身bcm之间的ble 安全认证的密文大数据双向传输功能的中间节点;ble智能钥匙系统和zcu控制器之间通讯连接;ble智能钥匙系统包括可移动的数字钥匙模块、均设置在车上的ble主模块和ble从模块;ble主模块作为ble主节点与数字钥匙模块通讯连接,ble主模块和各ble从模块之间通过can/lin总线连接;数字钥匙模块与ble主模块建立蓝牙通信,由数字钥匙模块进行ble扫描和发送ble广播;ble主节点接收到数字钥匙模块的ble广播后,进行ble配对,然后进行ble协议栈连接,对超过64字节的大数据密文包进行拆包,形成若干帧小于64字节的单帧认证密文,并将认证密文发送给zcu控制器;zcu控制器对ble主节点发送的认证密文进行接收,并对认证密文进行组包形成超过64字节的大数据密文包,然后进行安全认证,安全认证完成后再将生成的认证密文大数据进行拆包形成若干帧小于64字节的单帧认证密文,并发送回ble主节点;安全认证通过后, ble主节点即可接收数字钥匙模块发送的车控指令并将车控指令发送给zcu控制器;zcu控制器接收到车控指令后,向车身bcm发送车控指令,实现车控功能。
11.进一步地,所述ble从模块通过蓝牙信号监听数字钥匙模块位置,获取数字钥匙模块靠近车身的位置信息后,获取蓝牙信号强度rssi;ble从节点将蓝牙信号强度rssi传给zcu控制器,再由zcu控制器通过相应的ble算法来计算数字钥匙模块的位置,zcu控制器根据运算结果向车身bcm发送的车控指令,实现车控功能。
12.进一步地,所述zcu控制器包括canfd 拆包/组包组件和zcu安全组件;canfd 拆包/组包组件对ble主节点和zcu控制器之间在canfd通道上双向传输的大数据密文包进行发送端进行拆分或组合;并由zcu安全组件接收canfd 拆包/组包组件发送过来的加密数据进行ble安全认证,然后发送回canfd 拆包/组包组件。
13.进一步地,所述canfd 拆包/组包组件步骤如下,当作为canfd数据包的大数据密文包超过64字节时,按照uds 单帧/连续帧/流控帧的规则进行拆包/组包,拆成小于64字节的数据帧,再按照canfd的格式重新发送;canfd数据包包含ble模块的安全认证、车控指令以及车辆信息回传。
14.进一步地,所述zcu控制器对ble主节点的canfd大数据传输流程如下:流程1、ble主模块将从数字钥匙模块接收的ble数据帧进行pollingcounter配对和crc校验并封装成canfd数据包,对canfd数据包进行拆包成若干帧canfd格式的数据帧,
再将这些数据帧通过canfd总线逐帧发送到zcu控制器;流程2、zcu控制器的zcu安全组件通过canfd总线依次接收ble主模块发送canfd格式的数据帧,再将这些canfd格式的数据帧进行组包成为大数据密文包,然后再进行数据帧校验作为判断是否需要重发,数据帧校验结果正确则进行数据帧还原;流程3、zcu控制器对数据帧还原后形成认证后的zcu数据帧进行pollingcounter配对和crc校验并封装成canfd数据包,对canfd数据包进行拆包成若干帧canfd格式的数据帧,再将这些数据帧通过canfd总线逐帧发送到ble主模块;流程4、通过canfd总线依次接收ble主模块发送canfd格式的数据帧,再将这些canfd格式的数据帧进行组包成为大数据密文包,然后再进行数据帧校验作为判断是否需要重发,数据帧校验结果正确则进行zcu数据帧还原,最后通过蓝牙将zcu数据帧发送到数字钥匙模块,完成整个ble 安全认证过程。
15.进一步地,所述ble智能钥匙系统和zcu控制器通过canfd通讯协议总线通讯连接;ble主模块和各ble从模块之间通过can/lin总线连接; ble主模块与数字钥匙模块通过蓝牙通讯连接。
16.其中,数字钥匙模块包括以手机、手环、数字钥匙等移动终端作为载体。
17.由上可知,相对于现有技术,本发明具有如下的优点:1)ble智能钥匙系统通过在canfd通道进行数据拆包/组包,实现大数据在canfd总线上的单帧双向传输,解决了超过200字节密文数据包在canfd总线上的传输问题,方便ble智能钥匙系统使用更高级的ble安全认证内容;2)在拆包/组包的过程中,满足标准的uds规范;兼容性好,大幅降低系统更新升级的难度和成本;3)在协议上实现e2e的协议保护,增加crc校验机制,保证数据的稳定快速传输。
附图说明
18.图1为现有的ble智能钥匙系统和车身bcm的系统结构示意图。
19.图2为本发明ble智能钥匙系统和zcu控制器、车身bcm的系统结构示意图。
20.图3为本发明的zcu控制器的结构示意图。
21.图4为zcu控制器对ble主节点的canfd大数据传输梯形流程图。
22.图5为手机与ble主模块之间数据传输的蓝牙数据结构定义表。
23.图6为tlv数据结构的定义表。
24.图7为手机与ble主模块之间canfd诊断报文格式表。
25.附图标号说明:1-数字钥匙模块,2-ble主模块, 3-zcu控制器,4-车身bcm,5-ble主节点,6-ble从节点,7-canfd 拆包/组包组件,8-zcu安全组件。
具体实施方式
26.下面结合附图和优选的实施方式,对本发明的具体应用及其有益技术效果进行进一步详细说明。本实施方式和附图中,为了方便具体说明,以手机作为数字钥匙模块1的载体,并在手机上安装驱动数字钥匙模块1工作的app;以汽车作为蓝牙主模块和蓝牙从模块的载体。车身bcm5的功能包括:电动门窗控制、中控门锁控制、遥控防盗、灯光系统控制、电
动后视镜加热控制、仪表背光调节、电源分配等。zcu控制器3为车载域控制器。ble为蓝牙的英文缩写。文中的ble的含义为“蓝牙”的意思。
27.参见图2~图4,本发明优选实施的一种ble智能钥匙canfd的大数据传输方法,在ble智能钥匙系统和车身bcm5之间设置zcu控制器3,作为ble智能钥匙系统和车身bcm5之间的ble 安全认证的密文大数据双向传输功能的中间节点;ble智能钥匙系统和zcu控制器3通过canfd通讯协议总线通讯连接,zcu控制器3中设有安全认证的加解密算法和密钥存储管理的核心器件加密ic;ble智能钥匙系统包括可移动的数字钥匙模块1、均设置在车上的ble主模块2和ble从模块;ble主模块2作为ble主节点5与数字钥匙模块1通过蓝牙通讯,ble主模块2和各ble从模块之间通过can/lin总线连接;数字钥匙模块1与ble主模块2建立蓝牙通信,由数字钥匙模块1进行ble扫描和发送ble广播;ble主节点5接收到数字钥匙模块1的ble广播后,进行ble配对,然后进行ble协议栈连接,对超过64字节的大数据密文包进行拆包,形成若干帧小于64字节的单帧认证密文,并通过canfd总线将认证密文发送给zcu控制器3;zcu控制器3对ble主节点5发送的认证密文进行接收,并对认证密文进行组包形成超过64字节的大数据密文包,然后进行安全认证,安全认证完成后再将生成的认证密文大数据进行拆包形成若干帧小于64字节的单帧认证密文,并通过canfd总线发送回ble主节点5;安全认证通过后, ble主节点5即可接收数字钥匙模块1发送的车控指令并通过canfd总线将车控指令发送给zcu控制器3;zcu控制器3接收到车控指令后,通过can总线向车身bcm5发送车控指令,实现车控功能;ble从模块通过蓝牙信号监听数字钥匙模块1位置,获取数字钥匙模块1靠近车身的位置信息后,获取蓝牙信号强度rssi;ble从节点6通过canfd总线将蓝牙信号强度rssi传给zcu控制器3,再由zcu控制器3通过相应的ble算法来计算数字钥匙模块1的位置,zcu控制器3根据运算结果通过can总线向车身bcm5发送的车控指令,实现车控功能。
28.参见图2,进一步地,zcu控制器3包括canfd 拆包/组包组件7和zcu安全组件8;canfd 拆包/组包组件7对ble主节点5和zcu控制器3之间在canfd通道上双向传输的大数据密文包进行发送端进行拆分或组合;并由zcu安全组件8接收canfd 拆包/组包组件7发送过来的加密数据进行ble安全认证,然后发送回canfd 拆包/组包组件7。
29.参见图2~图4,进一步地,canfd 拆包/组包组件7步骤如下,当作为canfd数据包的大数据密文包超过64字节时,按照uds 单帧/连续帧/流控帧的规则进行拆包/组包,拆成小于64字节的数据帧,再按照canfd的格式重新发送;canfd数据包包含ble模块的安全认证、车控指令以及车辆信息回传。
30.参见图3~图4,进一步地,zcu控制器3对ble主节点5的canfd大数据传输流程如下:流程1、ble主模块2将从数字钥匙模块1接收的ble数据帧进行pollingcounter配对和crc校验并封装成canfd数据包,对canfd数据包进行拆包成若干帧canfd格式的数据帧,再将这些数据帧通过canfd总线逐帧发送到zcu控制器3;流程2、zcu控制器3的zcu安全组件8通过canfd总线依次接收ble主模块2发送canfd格式的数据帧,再将这些canfd格式的数据帧进行组包成为大数据密文包,然后再进行数据帧校验作为判断是否需要重发,数据帧校验结果正确则进行数据帧还原;
流程3、zcu控制器3对数据帧还原后形成认证后的zcu数据帧进行pollingcounter配对和crc校验并封装成canfd数据包,对canfd数据包进行拆包成若干帧canfd格式的数据帧,再将这些数据帧通过canfd总线逐帧发送到ble主模块2;流程4、通过canfd总线依次接收ble主模块2发送canfd格式的数据帧,再将这些canfd格式的数据帧进行组包成为大数据密文包,然后再进行数据帧校验作为判断是否需要重发,数据帧校验结果正确则进行zcu数据帧还原,最后通过蓝牙将zcu数据帧发送到数字钥匙模块1,完成整个ble 安全认证过程。
31.其中,数字钥匙模块1包括手机、手环、数字钥匙等移动终端作为载体,一般优选为手机。在数据帧的传输协议增加pollingcounter和crc校验,实现功能安全端到端(e2e) 的通信保护。文中未特别说明的部分为现有蓝牙通讯或行业标准通讯协议的相关部分的内容,为了节省篇幅,本技术不再单列出来。
32.使用时,可以有数字钥匙模块1和蓝牙主模块的canfd的数据传输程序中,按图4所示的流程编写canfd的大数据传输程序,随系统运行即可。在本实施例中,编写程序时ble数据包的定义如下:一、ble数据包定义参见图5,手机与ble主模块2之间数据传输的结构定义如图5中的列表所示,整个数据包的长度从几十字节到数百字节不等。
33.二、定义ble主模块2与zcu控制器3之间有大量的数据通信,包括认证,验签的所有流程,如果参考can通信增加信号,会增加许多报文id以及信号,且后续有数据变化或有升级时,需要重新修改通信矩阵,涉及到zcu控制器3、ble主模块2两个控制器同时更新can驱动层的软件,开发周期长,涉及其他部门变更增加不必要的工作量,通过引入tlv的格式定义报文,只需要增加一对交互的can报文,可灵活的实现蓝牙数据信号的变更以及后续服务的再开发,灵活度高,数据内容变更时不会涉及zcu控制器3的can驱动重新开发。
34.参见图6~图7所示表格,tlv是一种可变的格式,意为:type类型, lenght长度,value值。type:该字段是关于标签和编码格式的信息;length:该字段是定义数值的长度;value:字段表示实际的数值。type和length的长度固定,一般那是2、4个字节(unsigned short 或 unsigned long,具体用哪种编码和解析统一就行了,本文就取unsigned long类型);value的长度有length指定;其中蓝牙数据包就打包在tlv的value域中,由于蓝牙数据包的长度从几十到几百字节不等,所以打包上tlv之后,整个数据包的长度在蓝牙数据包的基础上再加4个字节。但是canfd一个数据包最多只能传输64字节,所以本技术会对程度超过64字节的数据包按照标准的uds方式来做拆包处理。
35.三、canfd uds拆包/组包ble主模块2与zcu控制器3之间通过canfd报文传输,每帧报文最大长度为64字节,当出现大于64字节报文传输时,需要将信号拆包成多帧传输,多帧传输的协议满足15765的拆包组包协议。
36.根据上述说明书及具体实施例并不对本发明构成任何限制,本发明并不局限于上面揭示和描述的具体实施方式,对本发明的一些修改和变形,也应当落入本发明的权利要
求的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献