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

一种雷达数据的传输方法、装置、设备及介质与流程

2022-03-01 22:50:34 来源:中国专利 TAG:


1.本发明涉及数据传输技术领域,尤其是涉及一种雷达数据的传输方法、装置、设备及介质。


背景技术:

2.随着汽车技术的发展,自动驾驶作为当前全球车辆与交通出行领域智能化和网联化发展的主要方向,将在未来的交通中具有重要的价值,目前自动驾驶车辆已经开始成为人们出行的重要工具。在汽车领域中,车辆的微控制单元(microcontroller unit,简称mcu)可以获取车辆上的传感器、摄像头以及车辆vcu所采集的数据。而目前比较常用的雷达数据传输技术一般是毫米波雷达数据传输技术,毫米波雷达是指工作在毫米波频段的雷达,毫米波对应的频率范围为30-300ghz。目前毫米波雷达具有全天时全天候的工作能力,因此被广泛的应用于智能驾驶、交通、安防等领域。
3.但是,在对现有技术的研究与实践的过程中,本发明的发明人发现,现有的雷达传输技术中,由于车辆中毫米波雷达的can通路传输顺序有可能出现错位,导致车辆控制不准确,造成安全事故的隐患。因此,亟需一种能够解决上述缺陷的雷达数据传输方法。


技术实现要素:

4.本发明实施例所要解决的技术问题在于,提供一种雷达数据的传输方法、装置、设备及介质,能够解决现有毫米波雷达数据的传输通路中出现错位,导致雷达传输错误进而车辆控制不准确的问题。
5.为解决上述问题,本技术实施例的第一方面提供了一种雷达数据的传输方法,至少包括如下步骤:
6.在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;
7.当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;
8.判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;
9.若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;
10.判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
11.在第一方面的一种可能的实现方式中,在所述判断can通道符合预设要求步骤之前,还包括:
12.在毫米波雷达的每个检测周期检测完成后,按照固定的预设顺序发出can报文,其中所述can报文的id为0x6xa\0x6xb\0x6xc\0x6xd。
13.在第一方面的一种可能的实现方式中,所述雷达数据的传输方法,还包括:
14.若判断所述can的id不在预设范围内时,则判断本轮接收的总报文数是否达到期望总数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输;若否,则返回判断是否遍历数据包中的所有报文步骤。
15.在第一方面的一种可能的实现方式中,所述雷达数据的传输方法,还包括:
16.若判断所述can的id不为预设第一格式时,则直接对计时器进行清零,并接收报文数据至所述当前数据传输载体后,再判断所述当前数据传输载体中的can报文总数是否达到最大承载数。
17.在第一方面的一种可能的实现方式中,所述雷达数据的传输方法,还包括:
18.若判断未接收完当前期望的报文数,则判断帧头所示的报文总数是否完全发送;
19.若是,则补全缺少的数据包后,将当前数据组包发送至ros2节点,完成雷达数据的传输;
20.若否,则直接将当前数据组包发送至ros2节点,完成雷达数据的传输。
21.在第一方面的一种可能的实现方式中,所述雷达数据的传输方法,还包括:
22.若判断所述当前数据传输载体中的can报文总数未达到最大承载数时,则判断本轮接收的总报文数是否达到期望总数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输;若否,则返回判断是否遍历数据包中的所有报文步骤。
23.在第一方面的一种可能的实现方式中,所述雷达数据的传输方法,还包括:
24.在判断can通道不符合预设要求后,结束本次雷达数据的传输;
25.在判断已遍历数据包中的所有报文后,结束本次雷达数据的传输。
26.本技术实施例的第二方面提供了一种雷达数据的传输装置,包括:
27.can判断模块,用于在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;
28.报文数计数器模块,用于当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;
29.期望报文数模块,用于判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;
30.接收报文数据模块,用于当判断接收完当前期望的报文数后,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;
31.数据组包传输模块,用于判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
32.本技术实施例的第三方面还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
33.本技术实施例的第四方面还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
34.实施本发明实施例,具有如下有益效果:
35.本发明实施例提供的一种雷达数据的传输方法、装置、设备及介质,首先在判断
can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。本发明实施例通过提出一种结合毫米波雷达报文格式和发送机制的雷达数据传输方法,能够解决毫米波雷达数据的传输通路中出现错位,导致数据传输错误及车辆控制不准确的问题,提高雷达数据传输的准确性和可靠性。
附图说明
36.图1为本技术一实施例的雷达数据的传输方法的流程示意图;
37.图2为本技术一实施例的雷达数据的传输装置的结构示意框图;
38.图3为本技术一实施例的计算机设备的结构示意框图。
39.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
40.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.在本技术的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,除非另有说明,“多个”的含义是两个或两个以上。
42.首先介绍本发明可以提供的应用场景,如提供一种雷达数据的传输方法、装置、设备及介质,能够同时对多个跟踪对象进行跟踪检测和区分,避免发生混淆导致跟踪结果不准确。
43.本发明第一实施例:
44.请参阅图1。
45.如图1所示,本实施例提供了一种雷达数据的传输方法,至少包括如下步骤:
46.s1、在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;
47.s2、当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;
48.s3、判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;
49.s4、若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;
50.s5、判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
51.在现有技术中,由于车辆中毫米波雷达的can通路传输顺序有可能出现错位,导致车辆控制不准确,容易造成安全事故的隐患。而本实施例则是提出一种结合毫米波雷达报文格式和发送机制的雷达数据传输方法,能够解决毫米波雷达数据的传输通路中出现错位,导致数据传输错误及车辆控制不准确的问题,提高雷达数据传输的准确性和可靠性。
52.对于步骤s1,首先是判断毫米波雷达的can(controller area network,控制器局域网络)传输通道是否符合预设要求,若符合预设要求,则判断是否遍历完数据包中的所有报文;若判断已遍历数据包中的所有报文,则结束本次雷达数据的传输;若否,则判断can的id是否在预设范围内。
53.对于步骤s2,若判断can的id在预设范围内后,则当前接收总can报文数计数器 1,然后当前数据传输载体buff中的can报文数计数器 1。
54.对于步骤s3,在对步骤s2中的两个计数器 1后,判断can的id是否为预设格式,若是,则判断是否接收完当前期望的报文数。
55.对于步骤s4,若判断已接收完当前期望的报文数后,根据can的id中的障碍总数计算帧头中的总包数,具体的,当接收到0x6xa,解析其中反馈的障碍物个数n,计算得到数据包的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体buff。
56.对于步骤s5,判断当前数据传输载体buff中can报文总数是否达到期望的总数,若是,则将当前数据组包并发送至ros节点,完成本次雷达数据的传输。
57.在具体的实例例中,本实施例是基于ap节点的通信系统上执行的,通过配置ap收发节点的通讯机制,实现与mcu端通过some/ip收发can信息,ap节点和ros2端采用tcp数据通路通讯。
58.vcu端和mcu端采用can协议通讯,mcu端接收到can报文后,mcu采用some/ip通讯协议将can报文打包发送给ap节点,然后ap节点进行数据处理和打包,通过tcp传输协议将数据传输到数据流的ros2节点。当ros2节点需要下发can报文到vcu,can数据通过tcp传输到ap节点,ap节点将数据包解析成所需要的(can、uart等)数据格式,然后通过some/ip发送到mcu,然后mcu通过can发送到vcu。其中,can通路依据功能进行划分为超声波雷达通路、毫米波雷达通路、vcu数据通路和摄像头数据通路。
59.在一种优选的实施例中,在所述判断can通道符合预设要求步骤之前,还包括:
60.在毫米波雷达的每个检测周期检测完成后,按照固定的预设顺序发出can报文,其中所述can报文的id为0x6xa\0x6xb\0x6xc\0x6xd。
61.在具体的实施例中,在判断can通道是否符合预设要求前,毫米波雷达的探测周期为75ms,在毫米波雷达的每个检测周期检测完成后,按照固定的顺序发出can报文,id为0x6xa\0x6xb\0x6xc\0x6xd,其中,0x6xc和0x6xd可以根据需要进行配置。报文发送顺序为先发送1条0x60a,然后根据0x60a中所述的障碍物个数n,分别顺序发送n个0x60b\0x60c\0x60d,共计3n 1条报文。
62.在一种优选的实施例中,所述雷达数据的传输方法,还包括:
63.若判断所述can的id不在预设范围内时,则判断本轮接收的总报文数是否达到期望总数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输;若否,则返回判断
是否遍历数据包中的所有报文步骤。
64.在具体的实施例中,步骤s1还包括:若判断can的id不在预设范围,则判断本轮数据传输中接收的总can报文数是否达到期望总数,若是,则直接将当前数据进行组包并发送至ros节点;若否,则返回步骤s1中的判断是否遍历数据包中的所有报文,继续执行流程。
65.在一种优选的实施例中,所述雷达数据的传输方法,还包括:
66.若判断所述can的id不为预设第一格式时,则直接对计时器进行清零,并接收报文数据至所述当前数据传输载体后,再判断所述当前数据传输载体中的can报文总数是否达到最大承载数。
67.在具体的实例中,步骤s3还包括:当判断can的id并非为预设第一格式(如0x6xa)时,则跳过步骤s3中的判断是否接收完当前期望的报文数和步骤s4中的根据所述can的id中的障碍物总数计算帧头中的总包数,直接对计时器进行清零后,接收报文数据至本次数据传输载体buff;再判断本次数据传输载体buff中can报文总数是否达到最大承载数和本轮接收的总报文数是否达到期望总数。
68.在一种优选的实施例中,所述雷达数据的传输方法,还包括:
69.若判断未接收完当前期望的报文数,则判断帧头所示的报文总数是否完全发送;
70.若是,则补全缺少的数据包后,将当前数据组包发送至ros2节点,完成雷达数据的传输;
71.若否,则直接将当前数据组包发送至ros2节点,完成雷达数据的传输。
72.在具体的实施例中,步骤s3还包括:当判断当前接收的can数据包的总数未达到当前期望的报文数时,判断数据包的数据帧帧头所示的报文总数是否发送完全,若是,则补全缺少的数据包,并将当前数据进行组包后发送至ros2节点;若否,则直接将当前数据进行组包发送至ros2节点。
73.在一种优选的实施例中,所述雷达数据的传输方法,还包括:
74.若判断所述当前数据传输载体中的can报文总数未达到最大承载数时,则判断本轮接收的总报文数是否达到期望总数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输;若否,则返回判断是否遍历数据包中的所有报文步骤。
75.在具体的实施例中,步骤s5还包括:当判断本次数据传输载体buff报文总数未达到最大承载数时,则判断本轮接收的总报文数是否达到期望的总数,若判断达到期望总数,则直接将当前数据进行组包发送至ros2节点;若否,则返回步骤s1中,继续判断是否遍历数据包中的所有报文。
76.在一种优选的实施例中,所述雷达数据的传输方法,还包括:
77.在判断can通道不符合预设要求后,结束本次雷达数据的传输;
78.在判断已遍历数据包中的所有报文后,结束本次雷达数据的传输。
79.在具体的实施例中,当步骤s1中判断can通道不符合预设要求或者判断已遍历完数据包中的所有报文时,则直接结束本次雷达数据的传输,等待下一检测周期检测完成后开始新一轮的雷达数据的传输。
80.在具体的实施例中,本实施例提供的雷达数据的传输方法满足以下四种发送机制,包括接收完成发送机制、超时发送机制、新数据到达发送机制和分包发送机制。
81.其中,接收完成发送机制具体为:设计计算报文总数策略,当接收到0x6xa,解析其
中反馈的障碍物个数n,计算得到数据包的总包数,当数据帧数达到规定,0x60b\0x60c\0x60d报文各自的个数是否达分别达到障碍。
82.超时发送机制:当数据接收中,接收数据帧数不足3n 1,开始进入计时等待模式,等待时间为10ms(该时间可配置),如果10ms等待周期内,没有收到新的报文,就转发到ros2节点。
83.新数据到达发送机制:当处于接收报0x6xb或0x6xc或0x6xd中,又接收到一帧0x6xa,接收数据流程进入下一轮计算总包数和障碍物数,并将之前接收的数据打包发送ros2节点。
84.分包发送机制:当根据障碍物个数计算期望的报文总数(3n 1)大于分报设定最大承载报文数40(该数值可设定)时,采用分包模式,则每接收一帧报文都进行计数,当计数得到的报文总数达到最大承载报文数时,立即打包发送到ros2节点,然后开始继续报文的新一轮接收。
85.本实施例提供的一种雷达数据的传输方法,包括:首先在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。本发明实施例通过提出一种结合毫米波雷达报文格式和发送机制的雷达数据传输方法,能够解决毫米波雷达数据的传输通路中出现错位,导致数据传输错误及车辆控制不准确的问题,提高雷达数据传输的准确性和可靠性。
86.本发明第二实施例:
87.请参阅图2。
88.如图2所示,本实施例提供了一种雷达数据的传输装置,包括:
89.can判断模块100,用于在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;
90.报文数计数器模块200,用于当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;
91.期望报文数模块300,用于判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;
92.接收报文数据模块400,用于当判断接收完当前期望的报文数后,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;
93.数据组包传输模块500,用于判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
94.本实施例通过在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;判
断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。本发明实施例通过提出一种结合毫米波雷达报文格式和发送机制的雷达数据传输方法,能够解决毫米波雷达数据的传输通路中出现错位,导致数据传输错误及车辆控制不准确的问题,提高雷达数据传输的准确性和可靠性。
95.参照图3,本技术实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于储存雷达数据的传输方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种雷达数据的传输方法。所述雷达数据的传输方法,包括:在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
96.本技术一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种雷达数据的传输方法,包括步骤:在判断can通道符合预设要求后,判断是否遍历数据包中的所有报文,若否,则判断所述can的id是否在预设范围内;当判断所述can的id在预设范围内时,则对当前接收总can报文数计数器加1,并对当前数据传输载体中的can报文数计数器加1;判断所述can的id是否为预设第一格式,若是,则判断是否接收完当前期望的报文数;若是,则根据所述can的id中的障碍物总数计算帧头中的总包数,并对计时器进行清零后,接收报文数据至所述当前数据传输载体;判断所述当前数据传输载体中的can报文总数是否达到最大承载数,若是,则将当前数据组包发送至ros2节点,完成雷达数据的传输。
97.上述执行的雷达数据的传输方法,通过提出一种结合毫米波雷达报文格式和发送机制的雷达数据传输机制,在毫米波雷达报文数据格式的基础上结合四种发送机制,提供了一种毫米波雷达的报文数据判断逻辑流程,能够解决毫米波雷达数据的传输通路中可能出现错位,导致雷达数据传输错误进而车辆控制不准确的问题,提高雷达数据传输的准确性和可靠性。
98.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
99.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述模块的划分,可以为
一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
100.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
101.另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
102.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变形,这些改进和变形也视为本发明的保护范围。
103.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
再多了解一些

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

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

相关文献