CN110336795A - 一种车辆数据分配方法、装置及电子设备 - Google Patents
一种车辆数据分配方法、装置及电子设备 Download PDFInfo
- Publication number
- CN110336795A CN110336795A CN201910505090.2A CN201910505090A CN110336795A CN 110336795 A CN110336795 A CN 110336795A CN 201910505090 A CN201910505090 A CN 201910505090A CN 110336795 A CN110336795 A CN 110336795A
- Authority
- CN
- China
- Prior art keywords
- data
- vehicle data
- vehicle
- code
- markers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Small-Scale Networks (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请实施例涉及计算机技术领域,具体涉及一种车辆数据分配方法、装置及电子设备。该方法包括:接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示,接收指示包括第一端的身份信息,获取第一车辆数据,并确定第一车辆数据的数据标记,数据标记用于标识发送第一车辆数据的第二端,其中,第一端、第二端和同一个UDP缓冲区相对应,若数据标记与第一端的身份信息存在数据接收映射关系,将第一车辆数据发送至第一端。由于该方法只将第一端需要的第一车辆数据发送至第一端,如此,可以节省通信资源,提高通信资源的利用率。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种车辆数据分配方法、装置及电子设备。
背景技术
自动驾驶技术是目前汽车新四化(电气化、智能化、网联化、共享化) 领域的研究热点,涉及感知、决策、执行等多个模块的算法开发及仿真测试。在具体开发过程中,需要采集多种传感器的数据,并将采集后的数据分发至多个算法仿真及测试模块中进行仿真及测试。在现有技术中,采用分布式通信中间件的解决方案在嵌入式化、开发语言通用性上有所欠缺,例如ROS分布式通信仅支持C++、Python、Matlab/Simulink,不支持环境模拟器所使用的C#及JavaScript;而在采用UDP广播来实现的分布式通信方案中,每个数据仿真和测试都能收到所有在网络上传输的车辆传感器数据或其他模块发送的数据,随后判断是否需要该类数据,若需要,则进行下一步处理,若不需要,则丢弃该类数据。
基于上述说明,现有方案或者存在通用性不强的缺点,或者需要调用通信资源来接收本模块不需要的数据,导致通信带宽及CPU处理资源的浪费。
发明内容
本申请实施例提供了一种车辆数据分配方法、装置及电子设备,用来分配数据仿真和测试模块需要使用的车辆数据至数据仿真和测试模块,如此,可以节省通信资源,提高通信资源的利用率。
一方面,本申请实施例提供了一种车辆数据分配方法,该方法包括:
接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示;该接收指示包括第一端的身份信息;
获取该第一车辆数据,并确定第一车辆数据的数据标记;数据标记用于标识发送第一车辆数据的第二端;其中,第一端、第二端和同一个UDP 缓冲区相对应;
若数据标记与第一端的身份信息存在数据接收映射关系,将第一车辆数据发送至第一端。
另一方面,本申请实施例提供了一种车辆数据分配装置,该装置包括:
数据接收单元:用于接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示;接收指示包括第一端的身份信息,获取第一车辆数据;
数据处理单元:用于确定第一车辆数据的数据标记;数据标记用于标识发送第一车辆数据的第二端;第一端、第二端和同一个UDP缓冲区相对应;
数据发送单元:用于若数据标记与第一端的身份信息存在数据接收映射关系,将第一车辆数据发送至第一端。
另一方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述的车辆数据分配方法。
另一方面,本申请实施例提供了一种计算机可读存储设备,该存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述的车辆数据分配方法。
本申请实施例提供的车辆数据分配方法、装置及电子设备,具有以下有益效果:
接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示,接收指示包括第一端的身份信息,获取第一车辆数据,并确定第一车辆数据的数据标记,数据标记用于标识发送第一车辆数据的第二端,其中,第一端、第二端和同一个UDP缓冲区相对应,若数据标记与第一端的身份信息存在数据接收映射关系,将第一车辆数据发送至第一端。由于该方法只将第一端需要的第一车辆数据发送至第一端,如此,可以节省通信资源,提高通信资源的利用率。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的一种车辆数据分配方法的流程示意图;
图3是本申请实施例提供的一种车辆数据分配模型的结构示意图;
图4是本申请实施例提供的一种车辆数据分配方法的流程示意图;
图5是本申请实施例提供的车辆数据分配装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图,包括用户数据报协议(User Datagram Protocol,UDP)缓冲区101、数据分配端 102、第一端103和第二端104。其中,UDP缓冲区101和数据分配端102 通过第一通信链路连接,数据分配端102和第一端103通过第二通信链路连接,数据分配端102和第二端104通过第三通信链路连接,第一端103 和UDP缓冲区101通过第四通信链路连接。本申请实施例中,数据分配端 102接收第二端104发送的第一车辆数据和身份信息,数据分配端102根据数据发送映射关系和第二端104的身份信息确定第一车辆数据的数据标记,并为该第一车辆数据添加该数据标记,发送第一车辆数据至UDP缓冲区 101。第一端103通过第四通信链路检测到UDP缓冲区101存在第一车辆数据时,发送接收指示给数据分配端102,其中,接收指示包括第一端103 的身份信息。数据分配端102从UDP缓冲区101获取第一车辆数据,并确定该第一车辆数据的数据标记。若该数据标记与第一端103的身份信息存在数据接收映射关系,数据分配端102将第一车辆数据发送至第一端103。
一种可选的实施例中,可以如图1所示,所有的第一端和第二端连接同一个数据分配端,如此,可以同一由该数据分配端接收数据和发送数据。另一种可选的实施方式中,每个第一端可以配置一个数据分配端,第一端接收第一车辆数据的时候,可以通过对应的数据分配端接收。同理,每个第二端可以配置一个数据分配端,第二端发送第一车辆数据的时候,可以通过对应的数据分配端发送。如此,即使某一个数据分配端出现问题,只会影响到该数据分配端对应的第一端的数据接收或者第二端的数据发送,而不会影响到整个系统中的其他端的通信。
本申请实施例中,整个系统中可以存在一个或者多个第一端,也可以存在一个或者多个第二端。UDP缓冲区、数据分配端、第一端和第二端可以运行在同一个设备上,或者可以运行在不同的设备上,或者其中的多个端运行在同一个设备中,其他端运行在另外的设备上。设备可以是计算机或者嵌入式平台。举个例子,UDP缓冲区可以是计算机1的内存中的一块区域,数据分配端可以运行在计算机2上,第一端可以运行在计算机3上,第二端可以运行在计算机4上。上述的例子只是一个可选的实施例,在应用中,可以根据实际情况选择可行方案。
本申请实施例中,第一端和第二端可以是设备中实现某个功能的模块,该模块在不同的状态下可以是不同的端,举个例子,模块A在发送数据的时候可以被称为第二端,模块A在接收数据的时候可以被称为第一端。所有模块可以连接同一个数据分配端,进行数据收发,也可以连接不同的数据分配端,进行单独的数据收发。
一种可选的实施方式中,第一通信链路、第二通信链路、第三通信链路和第四通信链路可以是无线通信链路,还可以是有线通信链路,连接方式可以根据实际情况而定。
以下介绍本申请一种车辆数据分配方法的具体实施例,图2是本申请实施例提供的一种车辆数据分配方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,该方法可以包括:
S201:数据分配端接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示;接收指示包括第一端的身份信息。
本申请实施例中,第一端的身份信息可以是第一端的端口号、网络协议(InternetProtocol,IP)地址或者其他标识第一端的字符串。
本申请实施例中,UDP缓冲区、数据分配端、第一端和第二端可以存在一个UDP多播局域网中。其中,UDP多播是指将网络中同一业务类型设备进行逻辑上的分组,进行数据收发的时候,仅仅将数据在同一个分组中进行发送和接收,其他没有加入该组的设备不参与该组内的数据的发送和接收。如此,可以节省通信资源。
在S201之前,即数据分配端在接收到第一端发送的接收指示之前,本申请实施例需要搭建一个车辆数据分配模型,用于模型中各个模块的数据交互。图3为本申请实施例提供的一种车辆数据分配模型的结构示意图,包括UDP缓冲区301、数据分配端(第一数据分配模块302和第二数据分配模块303)、第一采集模块304、第二采集模块305、第三采集模块306、环境模拟模块307、数据记录和回放模块308、第一仿真与测试模块309、第二仿真与测试模块310和第三仿真与测试模块311。其中,第一采集模块 304、第二采集模块305、第三采集模块306和环境模拟模块307共用第一数据分配模块302,数据记录和回放模块308、第一仿真与测试模块309、第二仿真与测试模块310和第三仿真与测试模块311共用第二数据分配模块303。本申请实施例中,该模型可以整体移植到多种低功耗的平台中,或者,该模型中的各个模块可以移植到不同的平台中运行。可选的,平台包括Windows、桌面Lunix或者各种嵌入式Lunix系统。可选的,不同的平台使用不同类型的代码,因此,不同的模块支持不同类型的代码,代码类型可以包括C、C++、C#、Python、Java、JavaScript、MATLAB(Simulink)。一种可选的实施方式中,可以使用Simulink搭建该车辆数据分配模型,运行该车辆数据分配模型的平台可以是Windows+Simulink/MATLAB。
基于上述描述的模型,同一UDP多播局域网中的UDP缓冲区可以接收到第二端通过数据分配端发送的第一车辆信息,图4是本申请实施例提供的一种车辆数据分配方法的流程示意图,具体方法如图4所示,包括:
S401:数据分配端接收第二端发送的第一车辆数据和身份信息。
本申请实施例中,第二端的身份信息可以是第二端的端口号、网络协议(InternetProtocol,IP)地址或者其他标识第二端的字符串。
一种可选的实施方式中,第二端发送至数据分配端的可以是第一车辆数据包和身份信息,该第一车辆数据包中可以解析出第一车辆数据。由于各个模块可以支持不同的代码类型,因此,该第一车辆数据包的格式可以根据各个模块支持的代码类型确定。如此,第一车辆数据包就可以兼容各个代码类型的第一车辆数据。
本申请实施例中,数据分配端中包含数据处理程序,该数据处理程序是根据第一车辆数据包的格式和各个模块支持的代码类型确定的。该数据处理程序的代码类型可以是C、C++、C#、Java、JavaScript、Python或者 MATLAB/Simulink。
下面基于图3分别阐述各个模块对应的第一车辆数据:
本申请实施例中,图3所示的第一采集模块可以是控制执行和自车信息采集模块,其运行平台可以为嵌入式Linux+CAN+以太网,该控制执行和自车信息采集模块通过控制器局域网络(Controller Area Network,CAN) 接入到车辆的CAN总线中,读取CAN总线网络上传输的第一车辆数据。该第一车辆数据可以包括车辆传感器信息和车辆运行信息,代码类型可以为C语言。
其中,车辆传感器信息可以包括由位于车辆的雷达、摄像头、全球定位系统(Global Positioning System,GPS)等感知到的目标数据或位置信息;可以包括车身控制器车门是否关闭、转向灯的状态等;可以包括车辆的自身的一些功能是否开启,如自适应巡航控制(Adaptive Cruise Control,ACC)、自动紧急制动(Autonomous EmergencyBraking,AEB)、电子驻车(Electrical Park Brake,EPB)等功能;还可以包括由底盘域发送的诸如车辆纵向速度、纵向加速度、方向盘当前转角、车辆的横摆角速度yawrate等,其中,底盘域包括电子助力转向系统(Electric Power Steering,EPS)、电子稳定性控制系统(Electronic Stability Controller,ESC)和电子控制单元(Electronic Control unit,ECU)。车辆运行信息包括车辆的启动,减速、刹车,停止等状态。一种可选的实施例中,第一采集模块采集车辆传感器信息和车辆运行信息后,可以经过解析加密后发送给第一数据分配端。
本申请实施例中,为了弥补车辆自身传感器在感知及定位能力上的不足,可以增加其他采集模块,比如图3所示的第二采集模块和第三采集模块。第二采集模块和第三采集模块可以是外接传感器信息采集模块,该外接传感器信息采集模块可以通过通讯接口采集第一车辆数据,此时,第一车辆数据为外接传感器信息。可选的,通讯接口可以包括控制器局域网 CAN,串行通信接口或者以太网。外接传感器可以是加装在当前车辆上的激光雷达、毫米波雷达、摄像头和差分GPS模块。
本申请实施例中,图3所示的环境模拟模块用于通过模拟道路模型、交通场景以及虚拟传感器数据来获取第一车辆数据。具体地,通过一种开源的机器人操作系统建立环境模型,利用该模型和传感器构建虚拟车辆模型、虚拟传感器、城市交通模型、高速公路模型和交通障碍物等,如此,通过环境模型和传感器获取虚拟传感器信息和道路模拟信息(即第一车辆数据),并利用机器人操作系统中的RVIZ实现第一车辆数据的可视化,该环境模型和传感器的运行平台可以是ROS+Ubuntu系统,该系统中所用的代码类型可以为C++。该系统将第一车辆数据传输至环境模拟模块后,可以将该第一车辆数据放置于第一车辆数据包中,或者将第一车辆数据的代码类型转换之后再放置于第一车辆数据包中。
本申请实施例中,虚拟车辆模型的横纵向控制可以通过接收的某个或者某几个仿真和测试模块发出的控制指令来控制。虚拟传感器可以提供实体传感器无法提供的第一车辆数据,供仿真和测试模块使用,以提高仿真和测试模块的算法开发、验证和测试的效率。
本申请实施例中,图3所示的数据记录和回放模块可以由数据记录单元和数据回放单元组成,数据记录单元可以用于记录其他模块通过数据分配端发送至UDP缓冲区的第一车辆数据,存储为数据记录文件。数据回放单元可以用于读取数据记录文件,并通过数据记录和回放模块对应的第二数据分配端发送该数据记录文件中的数据至UDP缓冲器,如此,数据记录和回放模块对应的第一车辆数据就是数据记录文件中的数据。
本申请实施例中,一种可选的实施方式中,图3所示的第一仿真和测试模块、第二仿真和测试模块和第三仿真和测试模块对应的第一车辆数据可以是控制指令。该控制指令根据整个系统中的模块可以包括多种控制指令,多种控制指令可以通过第二数据分配端发送至UDP缓冲区,举个例子,第一控制指令可以指示第一采集模块采集车辆传感器信息和车辆运行信息。具体地,控制指令中可以包括车辆的目标速度、目标价速度、方向盘的目标转角和/或转矩等控制信息,第一采集模块接收该第一控制指令后,可以通过CAN接入车辆的总线中,使得车辆按照上述的控制信息运行,并将运行过程中其他的车辆传感器信息和车辆运行信息记录下来,并通过 CAN传输至第一采集模块。同理,第二控制指令可以指示第二采集模块和第三采集模块采集外接传感器信息。第三控制指令可以指示环境模拟模块采集虚拟传感器信息和道路模拟信息。第四控制指令可以指示数据记录和回放模块按照时间戳发送数据记录文件中的数据。
另一种可选的实施方式中,第一仿真和测试模块、第二仿真和测试模块和第三仿真和测试模块对应的第一车辆数据除了可以是控制指令,还可以是这些模块进行仿真和测试之后得到的其它信息。举个例子,第一仿真和测试模块可以是感知融合子模块,第二仿真和测试模块可以是路径规划决策子模块,第三仿真和测试模块可以是车辆控制执行子模块。其中,感知融合子模块使用车辆传感器信息(通过第一采集模块获取的)、外接传感器信息(通过第二采集模块获取的)和虚拟传感器信息和道路模拟信息 (通过环境模拟模块获取的)通过融合算法处理得到障碍物目标信息和/或可行驶空间信息等。路径规划决策子模块则使用车辆运行信息(通过第一采集模块获取的)及感知融合子模块得到的障碍物目标信息和/或可行驶空间信息规划出路径信息及需要执行的动作。车辆控制执行子模块根据路径信息及需要执行的动作等计算出对车辆的控制指令。这三个子模块之间可以直接进行数据交互,也可以通过第二数据分配端和UDP缓冲区进行数据交互。
本申请实施例中,数据分配端接收到的第二端发送的第一车辆数据还包括校验信息,该校验信息主要用于第一端对应的数据分配端接收到该第一车辆数据后,验证该第一车辆数据的完整性。
S402:数据分配端根据数据发送映射关系和第二端的身份信息确定第一车辆数据的数据标记。
本申请实施例中,数据发送映射关系是指第二端的身份信息和第一车辆数据的数据标记的映射关系。一种可选的实施例中,数据发送映射关系可以表现为一张数据发送映射关系表,该数据发送映射关系表可以存储在数据分配端对应的存储区域内,当数据分配端接收到第二端发送的第一车辆数据后,调用该数据发送映射关系表,并且根据第二端的身份信息确定该第一车辆数据的数据标记。
表1是本申请实施例提供的一种数据发送映射关系表,该表的第一行分别为第二端的身份信息和其第一车辆数据的数据标记。其中,控制执行和自车信息采集模块的身份信息为其端口号,其对应的第一车辆数据的数据标记为字符“A”,其他第二端的身份信息和发送的第一车辆数据的数据标记可详见表1。第一车辆数据的数据标记不仅仅可以是下面表格中的表现形式,还可以是其他诸如字符串等其他表现形式。
表1:数据发送映射关系表
上述的表1显示的是一种可选的实施方式,下面基于图3所示的各个模块和各个模块发送的第一车辆数据具体介绍另一种可选的数据发送映射关系。数据分配端可以根据数据发送映射关系、第二段的身份信息和第一车辆数据的目标使用标记确定第一车辆数据的数据标记,该第一车辆数据的目标使用标记可以包含在第一车辆数据中。
按照上文实施例中的内容,第一次采集模块采集的第一车辆数据包括了车辆传感器信息和车辆运行信息,其中,车辆传感器信息是提供给第一仿真和测试模块(感知融合子模块)使用的,车辆运行信息是提供给第二仿真和测试模块(路径规划决策子模块)使用的。第二采集模块和第三采集模块采集的外接传感器信息是提供给第一仿真和测试模块使用的。环境模拟模块采集的虚拟传感器信息和道路模拟信息第一仿真和测试模块使用的。并且,上述所有的第一车辆数据都可以被数据记录和回放模块获取并存储成数据记录文件。数据记录和回放模块中的数据记录文件中包括上述的车辆传感器信息、车辆运行信息、外接传感器信息和虚拟传感器信息和道路模拟信息。第一仿真和测试模块根据接收到的数据提供障碍物目标信息和/或可行驶空间信息给第二仿真和测试模块。第二仿真和测试模块根据接收到的数据提供路径信息及需要执行的动作给第三仿真和测试模块。第三仿真和测试模块根据接收到的数据提供多种控制指令给其他模块(第一次采集模块、第二采集模块、第三采集模块、环境模拟模块和数据记录和回放模块),使得其他模块根据接收到的控制指令执行对应的功能。
由于某个模块发送的第一车辆数据可以包括多个信息,比如第一采集模块采集的第一车辆数据包括了车辆传感器信息和车辆运行信息,可以使用目标使用标记区分同一个第二端发送的供不同的第一端使用的第一车辆数据,也就是说不同目标使用标记对应了不同的第一端。
按照上文实施例中的内容,第一次采集模块采集的第一车辆数据包括了车辆传感器信息和车辆运行信息,其中,车辆传感器信息是提供给第一仿真和测试模块(感知融合子模块)使用的,车辆运行信息是提供给第二仿真和测试模块(路径规划决策子模块)使用的。第二采集模块和第三采集模块采集的外接传感器信息是提供给第一仿真和测试模块使用的。环境模拟模块采集的虚拟传感器信息和道路模拟信息第一仿真和测试模块使用的。并且,上述所有的第一车辆数据都可以被数据记录和回放模块获取并存储成数据记录文件。数据记录和回放模块中的数据记录文件中包括上述的车辆传感器信息、车辆运行信息、外接传感器信息和虚拟传感器信息和道路模拟信息。第一仿真和测试模块根据接收到的数据提供障碍物目标信息和/或可行驶空间信息给第二仿真和测试模块。第二仿真和测试模块根据接收到的数据提供路径信息及需要执行的动作给第三仿真和测试模块。第三仿真和测试模块根据接收到的数据提供多种控制指令给其他模块(第一次采集模块、第二采集模块、第三采集模块、环境模拟模块和数据记录和回放模块),使得其他模块根据接收到的控制指令执行对应的功能。
表2是本申请实施例提供的一种数据发送映射关系表,该表的第一行分别为第二端的身份信息、第一车辆数据的目标使用标记以及第一车辆数据的数据标记。比如第二行表示的是:第一采集模块中采集的带有字符串“01”的第一车辆数据的数据标记是“A+”。
表2:数据发送映射关系表
本申请实施例中,表2中的字符串“01”是指带有该字符串“01”的第一车辆数据是发送给第一仿真和测试模块使用的;字符串“02”是指带有该字符串“02”的第一车辆数据是发送给第二仿真和测试模块使用的;字符串“03”是指带有该字符串“03”的第一车辆数据是发送给第三仿真和测试模块使用的;字符串“04”是指带有该字符串“04”的第一车辆数据是发送给第一采集模块使用的;字符串“05”是指带有该字符串“05”的第一车辆数据是发送给第二采集模块使用的;字符串“06”是指带有该字符串“06”的第一车辆数据是发送给第三采集模块使用的;字符串“07”是指带有该字符串“07”的第一车辆数据是发送给环境模拟模块使用的;字符串“08”是指带有该字符串“08”的第一车辆数据是发送给数据记录和回放模块使用的。如此,第二端的身份信息和第一车辆数据的目标使用标记的不同组合对应不同的第一车辆数据的数据标记。
S403:数据分配端为第一车辆数据添加数据标记。
进一步地,数据分配端不仅可以为第一车辆数据添加数据标记,还可以添加第一校验码,该第一校验码用于和验证信息得到的结果作比对,验证该第一车辆数据的完整性。
本申请实施例中,若第二端发送给数据分配端的是第一车辆数据包,确定其中的第一车辆数据的数据标记后,可以在该第一车辆数据包的包头添加数据标记和第一校验码。
S404:数据分配端发送添加数据标记后的第一车辆数据至UDP缓冲区。
本申请实施例中,若第一车辆数据还被添加第一校验码,数据分配端将添加数据标记和第一校验码后的第一车辆数据或者第一车辆数据包发送至UDP缓冲区。
S202:数据分配端获取第一车辆数据。
本申请实施例中,数据分配端可以对应的获取第一车辆数据包,并解析出第一车辆数据。
S203:数据分配端确定该第一车辆数据的数据标记,数据标记用于标识发送第一车辆数据的第二端,其中,第一端、第二端和同一个UDP缓冲区相对应。
本申请实施例中,数据分配端可以从第一车辆数据包的包头中解析出该第一车辆数据的数据标识。
进一步地,数据分配端可以从第一车辆数据中获取校验信息,根据该校验信息确定第二校验码。此外,数据分配端可以从第一车辆数据处得到第一校验码或者从第一车辆数据包的包头处解析出第一校验码,将第一校验码和第二校验码进行匹配。
S204:数据分配端确定该数据标记与第一端的身份信息是否存在数据接收映射关系,若存在,则转至S205;若不存在,不发送。
本申请实施例中,数据接收映射关系为第一端的身份信息和数据标记的映射关系。一种可选的实施例中,数据接收映射关系可以表现为一张数据接收映射关系表,该数据发送映射关系表存储在数据分配端对应的存储区域内。
表3是本申请实施例提供的一种数据接收映射关系表,该表的第一行分别为第一端的身份信息和第一车辆数据的数据标记。比如第二行表示的是:第一采集模块的身份信息和数据标识为”J+”的第一车辆数据存在数据接收映射关系。
表3:数据接收映射关系表
S205:数据分配端将第一车辆数据发送至第一端。
基于上述表3,一个具体的实施例中,第一端检测到UDP缓冲端存在第一车辆数据或者第一车辆数据包,可以向数据分配端发送接收指示,对应地,数据分配端接收到第一端发送的接收指示,从UDP缓冲区获取第一车辆数据或者第一车辆数据包后,确定第一车辆数据的数据标记为“J+”,调用该数据接收映射关系表,从该关系表中确定该第一车辆数据的数据标识和第一采集模块的端口号存在数据接收映射关系,将该第一车辆数据或者第一车辆数据包发送给第一采集模块。进一步地,从该关系表中确定该第一车辆数据的数据标识和第一采集模块的端口号存在数据接收映射关系,且第一校验码和第二校验码确定匹配成功,数据分配端将第一车辆数据或者第一车辆数据包发送给第一采集模块。
另一个具体的实施例中,每个数据分配端接收到其对应的第一端发送的接收指示,从UDP缓冲区获取第一车辆数据或者第一车辆数据包后,确定第一车辆数据的数据标记为”J+”,调用该数据接收映射关系表,从该关系表中确定该第一车辆数据的数据标识和第一采集模块的端口号存在数据接收映射关系,因此,第一采集模块对应的数据分配端将第一车辆数据或者第一车辆数据包发送至第一采集模块,其他模块可以将第一车辆数据或者第一车辆数据包删除。或者,数据接收映射关系可以表现为过滤器的功能,比如第一采集模块对应的数据分配端可以过滤掉除带有”J+”以外的任一第一车辆数据。
由于上文提及不同的模块支持不同类型的代码,因此,一种可选的实施方式中,数据分配端可以在S205之前,进行代码类型的转换。即数据分配端将第一车辆数据或者第一车辆数据包发送至第一端之前,可以确定第一车辆数据的第一代码类型(转换前的代码类型),并确定第一端支持的第二代码类型。将第一代码类型的第一车辆数据转换成第二代码类型的第一车辆数据。若第一端和第二端支持的代码类型为同一种,则不进行代码类型的转化,如此,可以便于第一端对于第一车辆数据的读取和使用。
本申请实施例中,在UDP缓冲区接收到第一车辆信息之前,还可以存在第二车辆信息,该第二车辆信息可以是之前UDP缓冲区接收到的。第一端检测到UDP缓冲区接收到第二车辆信息之后,已经通过步骤201至步骤 205处理完该第二车辆数据。因此,第一车辆数据和第二车辆数据中的第一、第二可以用来区分被发送至UDP缓冲区的时间点。
本申请实施例还提供了一种车辆数据分配装置的结构示意图,如图5 所示,该装置包括数据接收单元501、数据处理单元502和数据发送单元 503:
数据接收单元用于接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示,接收指示包括第一端的身份信息,获取第一车辆数据。数据处理单元用于确定第一车辆数据的数据标记,数据标记用于标识发送第一车辆数据的第二端,其中,第一端、第二端和同一个UDP缓冲区相对应。数据发送单元用于若数据标记与第一端的身份信息存在数据接收映射关系,将第一车辆数据发送至第一端。
一种可选的实施方式中,数据处理单元用于确定第一车辆数据的第一代码类型,数据转换单元用于将第一代码类型的第一车辆数据转换成第二代码类型的第一车辆数据,第二代码类型为第一端支持的代码类型。数据发送单元用于将第二代码类型的第一车辆数据发送至第一端。
一种可选的实施方式中,数据接收单元用于接收第二端发送的第一车辆数据和身份信息,第一车辆数据中包含校验信息。数据处理单元用于根据数据发送映射关系和第二端的身份信息确定第一车辆数据的数据标记,为第一车辆数据添加数据标记和第一校验码。数据发送单元用于发送添加数据标记和第一校验码后的第一车辆数据至UDP缓冲区。
一种可选的实施方式中,数据处理单元用于获取第一车辆数据中的校验信息,根据校验信息确定第二校验码,若数据标记与第一端的身份信息存在数据接收映射关系,且第一校验码和第二校验码相匹配,数据发送单元将第一车辆数据发送至第一端。
一种可选的实施方式中,数据接收单元用于获取第一车辆数据包;第一车辆数据包包括第一车辆数据和数据标记,第一车辆数据包的格式是根据第一端和第二端的代码类型确定的,数据处理单元用于解析第一车辆数据包,获取第一车辆数据。
需要说明的,该装置实施例中的装置与方法实施例基于同样的申请构思。
本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的车辆数据分配方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
申请本申请的实施例还提供了一种存储介质,所述存储介质可设置于服务器之中以保存用于实现方法实施例中一种页面处理方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的车辆数据分配方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种车辆数据分配方法,其特征在于,包括:
接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示;所述接收指示包括所述第一端的身份信息;
获取所述第一车辆数据,并确定所述第一车辆数据的数据标记;所述数据标记用于标识发送所述第一车辆数据的第二端;其中,所述第一端、所述第二端和同一个UDP缓冲区相对应;
若所述数据标记与所述第一端的身份信息存在数据接收映射关系,将所述第一车辆数据发送至所述第一端。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述第一车辆数据的第一代码类型;
所述将所述第一车辆数据发送至所述第一端,包括:
将所述第一代码类型的所述第一车辆数据转换成第二代码类型的所述第一车辆数据;所述第二代码类型为所述第一端支持的代码类型;
将所述第二代码类型的所述第一车辆数据发送至所述第一端。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述第二端发送的所述第一车辆数据和身份信息;所述第一车辆数据中包含校验信息;
根据数据发送映射关系和所述第二端的身份信息确定所述第一车辆数据的数据标记;
为所述第一车辆数据添加所述数据标记和第一校验码;
发送添加所述数据标记和所述第一校验码后的所述第一车辆数据至所述UDP缓冲区。
4.根据权利要求3所述的方法,其特征在于,所述若所述数据标记与所述第一端的身份信息存在数据接收映射关系,将所述第一车辆数据发送至所述第一端,包括:
获取所述第一车辆数据中的校验信息;
根据所述校验信息确定第二校验码;
若所述数据标记与所述第一端的身份信息存在数据接收映射关系,且所述第一校验码和所述第二校验码相匹配,则将所述第一车辆数据发送至所述第一端。
5.根据权利要求1所述的方法,其特征在于,所述获取所述第一车辆数据,包括:
获取所述第一车辆数据包;所述第一车辆数据包包括所述第一车辆数据和所述数据标记,所述第一车辆数据包的格式是根据所述第一端和所述第二端的代码类型确定的;
解析所述第一车辆数据包,获取所述第一车辆数据。
6.一种车辆数据分配装置,其特征在于,包括:
数据接收单元:用于接收第一端在检测到用户数据报协议UDP缓冲区存在第一车辆数据时,发送的接收指示;所述接收指示包括所述第一端的身份信息,获取所述第一车辆数据;
数据处理单元:用于确定所述第一车辆数据的数据标记;所述数据标记用于标识发送所述第一车辆数据的第二端;其中,所述第一端、所述第二端和同一个UDP缓冲区相对应;
数据发送单元:用于若所述数据标记与所述第一端的身份信息存在数据接收映射关系,将所述第一车辆数据发送至所述第一端。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括数据转换单元:
所述数据处理单元:用于确定所述第一车辆数据的第一代码类型;
所述数据转换单元:用于将所述第一代码类型的所述第一车辆数据转换成第二代码类型下的所述第一车辆数据;所述第二代码类型为所述第一端支持的代码类型;
所述数据发送单元:用于将所述第二代码类型的所述第一车辆数据发送至所述第一端。
8.根据权利要求6所述的装置,其特征在于,
所述数据接收单元:用于接收所述第二端发送的所述第一车辆数据和身份信息;所述第一车辆数据中包含校验信息;
所述数据处理单元:用于根据数据发送映射关系和所述第二端的身份信息确定所述第一车辆数据的数据标记,为所述第一车辆数据添加所述数据标记和第一校验码;
所述数据发送单元:用于发送添加所述数据标记和所述第一校验码后的所述第一车辆数据至所述UDP缓冲区。
9.根据权利要求6所述的装置,其特征在于,
所述数据接收单元:用于获取所述第一车辆数据包;所述第一车辆数据包包括所述第一车辆数据和所述数据标记,所述第一车辆数据包的格式是根据所述第一端和所述第二端的代码类型确定的;
所述数据处理单元:用于解析所述第一车辆数据包,获取所述第一车辆数据。
10.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-5任一所述的车辆数据分配方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910505090.2A CN110336795B (zh) | 2019-06-12 | 2019-06-12 | 一种车辆数据分配方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910505090.2A CN110336795B (zh) | 2019-06-12 | 2019-06-12 | 一种车辆数据分配方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110336795A true CN110336795A (zh) | 2019-10-15 |
CN110336795B CN110336795B (zh) | 2022-08-02 |
Family
ID=68141102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910505090.2A Active CN110336795B (zh) | 2019-06-12 | 2019-06-12 | 一种车辆数据分配方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110336795B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277882A (zh) * | 2022-06-22 | 2022-11-01 | 东风汽车集团股份有限公司 | Can报文数据库建立方法、装置、车载电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130011351A (ko) * | 2011-07-21 | 2013-01-30 | 에스케이플래닛 주식회사 | 스마트 정보를 이용한 차량 운행 시스템, 이를 위한 단말기, 서비스장치 및 방법 |
CN103489301A (zh) * | 2013-09-25 | 2014-01-01 | 东风汽车公司 | 一种双处理器架构的车辆运行信息采集系统和方法 |
CN108023903A (zh) * | 2016-10-31 | 2018-05-11 | 北京乐知行软件有限公司 | 一种通知发布方法及系统 |
CN108989408A (zh) * | 2018-07-03 | 2018-12-11 | 安徽江淮汽车集团股份有限公司 | 一种车辆数据传输方法及系统 |
US20190043354A1 (en) * | 2018-06-28 | 2019-02-07 | Olufemi OLUWAFEMI | Real-time vehicle-based data gathering |
CN109729049A (zh) * | 2017-10-30 | 2019-05-07 | 北京国双科技有限公司 | 信息的分享方法及装置 |
-
2019
- 2019-06-12 CN CN201910505090.2A patent/CN110336795B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130011351A (ko) * | 2011-07-21 | 2013-01-30 | 에스케이플래닛 주식회사 | 스마트 정보를 이용한 차량 운행 시스템, 이를 위한 단말기, 서비스장치 및 방법 |
CN103489301A (zh) * | 2013-09-25 | 2014-01-01 | 东风汽车公司 | 一种双处理器架构的车辆运行信息采集系统和方法 |
CN108023903A (zh) * | 2016-10-31 | 2018-05-11 | 北京乐知行软件有限公司 | 一种通知发布方法及系统 |
CN109729049A (zh) * | 2017-10-30 | 2019-05-07 | 北京国双科技有限公司 | 信息的分享方法及装置 |
US20190043354A1 (en) * | 2018-06-28 | 2019-02-07 | Olufemi OLUWAFEMI | Real-time vehicle-based data gathering |
CN108989408A (zh) * | 2018-07-03 | 2018-12-11 | 安徽江淮汽车集团股份有限公司 | 一种车辆数据传输方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277882A (zh) * | 2022-06-22 | 2022-11-01 | 东风汽车集团股份有限公司 | Can报文数据库建立方法、装置、车载电子设备及存储介质 |
CN115277882B (zh) * | 2022-06-22 | 2023-08-29 | 东风汽车集团股份有限公司 | Can报文数据库建立方法、装置、车载电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110336795B (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI703538B (zh) | 用於確定軌跡的系統和方法 | |
CN108182817A (zh) | 自动驾驶辅助系统、路侧端辅助系统和车载端辅助系统 | |
CN109857002A (zh) | 数据采集方法、装置、设备及计算机可读存储介质 | |
CN107943016A (zh) | 用于自主车辆的群体驾驶风格学习框架 | |
CN109213134A (zh) | 生成自动驾驶策略的方法和装置 | |
CN104144156B (zh) | 报文处理方法和装置 | |
CN110308716B (zh) | 一种基于集群的自动驾驶车辆的方法、装置及车辆 | |
Toghi et al. | A maneuver-based urban driving dataset and model for cooperative vehicle applications | |
CN108847988B (zh) | 动态拓扑维护方法、装置及设备 | |
CN113934201A (zh) | 一种自动引导车集群的路径规划方法及其装置 | |
US20160342158A1 (en) | Method and apparatus for operating a vehicle | |
CN112671487B (zh) | 一种车辆测试的方法、服务器以及测试车辆 | |
CN110336795A (zh) | 一种车辆数据分配方法、装置及电子设备 | |
CN109118797A (zh) | 信息共享方法、装置、设备及存储介质 | |
CN205890794U (zh) | 一种分布式电动汽车车载网络终端平台 | |
CN107894768A (zh) | 一种汽车自动驾驶系统及方法 | |
Zhao et al. | Virtual traffic simulator for connected and automated vehicles | |
CN117128979A (zh) | 一种多传感器融合方法、装置、电子设备及存储介质 | |
Tiedemann et al. | An automotive distributed mobile sensor data collection with machine learning based data fusion and analysis on a central backend system | |
CN111614741A (zh) | 一种基于ros系统的多机器人通讯方法及装置 | |
CN109885392A (zh) | 分配车载计算资源的方法以及装置 | |
CN115454082A (zh) | 车辆避障方法及系统、计算机可读存储介质和电子设备 | |
CN111175055B (zh) | 自动驾驶分布式协同仿真方法、装置以及终端 | |
CN111988293A (zh) | 一种车载路由器域名过滤方法、装置、设备及存储介质 | |
CN116700218B (zh) | 一种智能网联车路协同测试方法、系统及储存介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |