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

一种车载通信方法、装置、设备及存储介质与流程

2022-04-02 07:43:25 来源:中国专利 TAG:


1.本技术涉及车辆通信技术领域,特别涉及一种车载通信方法、装置、设备及存储介质。


背景技术:

2.随着车辆智能化、网联化、电动化的飞速发展,尤其是自动驾驶和智能网联技术的成熟,车辆对于车载通信的要求变得越来越多样化且要求越来越高。
3.目前常用车载通信机制包括can、flexray以及基于以太网的相关通信协议如some/ip等。
4.其中,can通信成本低、可靠性高、实时性好但存在着带宽低,灵活性差等问题,最大的通信速率仅2mbps,无法满足自动驾驶及智能网联系统对于数据高吞吐量的需求。
5.flexray通信虽然单通道的通信速率达到了10mbps,但是仍然无法满足对于激光雷达、4d成像雷达、高精定位以及云通信等大数据量的传输。
6.以太网虽然能够支持100mbps、1gbps甚至10gbps的传输速率,但车载以太网的通信机制目前并不完善,无法完全满足安全性、实时性、灵活性等要求。
7.因此,亟需一种能够满足自动驾驶及智能网联系统大数据吞吐的车载安全通信机制。


技术实现要素:

8.本技术实施例提供了一种车载通信方法、装置、设备及存储介质,可以解决大数据吞吐的需求,且数据传输的安全高、实时性好;在满足自动驾驶及智能网联系统通信要求的同时也支持基于服务的架构设计的实现。
9.一方面,本技术实施例提供了一种车载通信方法,包括:
10.建立至少一个发布实体与主题信息的对应关系,主题信息是发布实体发送的;主题信息表征发布实体所提供的车载服务;
11.接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息;
12.基于对应关系,确定第一主题信息对应的第一发布实体;
13.获取第一发布实体发布的基于第一主题信息的数据;
14.将数据发送至订阅实体;
15.其中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。
16.可选的,将数据发送至订阅实体,包括:
17.根据预设校验算法生成数据对应的第一校验码;
18.将第一校验码与数据打包发送至订阅实体;订阅实体用于根据预设校验算法和接收到的数据确定第二校验码,基于第一校验码与第二校验码确定接收到的数据的准确度。
19.可选的,获取第一发布实体发布的基于第一主题信息的数据,包括:
20.向第一发布实体发送订阅消息;
21.接收第一发布实体响应于订阅消息所发布的基于第一主题信息的数据。
22.可选的,当第一发布实体连续发布基于第一主题信息的数据时,方法还包括:
23.对第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔进行监控;
24.和/或;
25.对订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔进行监控。
26.可选的,对第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔进行监控,包括:
27.若第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔大于等于第一预设时间间隔,生成第一错误提示信息。
28.可选的,对订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔进行监控,包括:
29.若订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔大于等于第二预设时间间隔,生成第二错误提示信息。
30.可选的,将数据发送至订阅实体之前,方法还包括:
31.接收订阅实体发送的第二主题订阅信息;第二主题订阅信息包括第二主题信息;
32.基于对应关系,确定第二主题信息对应的第二发布实体;
33.获取第二发布实体发布的基于第二主题信息的数据。
34.可选的,第一发布实体基于第一主题信息发布的第一数据以及第二发布实体基于第二主题信息发布的第二数据均携带优先级信息;
35.将数据发送至订阅实体,包括:
36.基于第一数据的优先级信息和第二数据的优先级信息,对第一数据和第二数据进行优先级排序;
37.根据优先级排序的结果向订阅实体依次发送第一数据和第二数据。
38.可选的,当第一发布实体与订阅实体为同一电子控制单元中的不同模块时,第一发布实体与订阅实体之间存在共享内存;
39.获取第一发布实体发布的基于第一主题信息的数据,包括:
40.接收第一发布实体在共享内存对应的地址空间中写入的基于第一主题信息的数据;
41.将数据发送至订阅实体,包括:
42.向订阅实体发送通知,以使订阅实体响应于通知在共享内存对应的地址空间中读取第一发布实体写入的基于第一主题信息的数据。
43.可选的,当第一发布实体与订阅实体为不同的电子控制单元时,获取第一发布实体发布的基于第一主题信息的数据,包括:
44.通过网络路由器获取第一发布实体发送的基于第一主题信息的数据;
45.将数据发送至订阅实体,包括:
46.通过网络路由器向订阅实体转发第一发布实体发送的基于第一主题信息的数据。
47.另一方面,本技术实施例提供了一种车载通信装置,包括:
48.建立模块,被配置为执行建立至少一个发布实体与主题信息的对应关系,主题信息是发布实体发送的;主题信息表征发布实体所提供的车载服务;
49.第二接收模块,被配置为执行接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息;
50.确定模块,被配置为执行基于对应关系,确定第一主题信息对应的第一发布实体;
51.获取模块,被配置为执行获取第一发布实体发布的基于第一主题信息的数据;
52.发送模块,被配置为执行将数据发送至订阅实体;
53.其中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。
54.另一方面,本技术实施例提供了一种设备,设备包括处理器和存储器,存储器中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行上述的车载通信方法。
55.另一方面,本技术实施例提供了一种计算机存储介质,存储介质中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行以实现上述的车载通信方法。
56.本技术实施例提供的一种车载通信方法、装置、设备及存储介质具有如下有益效果:
57.通过建立至少一个发布实体与主题信息的对应关系,主题信息是发布实体发送的;主题信息表征发布实体所提供的车载服务;接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息;基于对应关系,确定第一主题信息对应的第一发布实体;获取第一发布实体发布的基于第一主题信息的数据;将数据发送至订阅实体;其中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。如此,本技术可以解决大数据吞吐的需求,且数据传输的安全高、实时性好;在满足自动驾驶及智能网联系统通信要求的同时也支持基于服务的架构设计的实现。
附图说明
58.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
59.图1是本技术实施例提供的一种应用场景的示意图;
60.图2是本技术实施例提供的一种车载通信方法的流程图;
61.图3是本技术实施例提供的一种车载通信方法的流程示意图;
62.图4是本技术实施例提供的一种车载通信方法的流程示意图;
63.图5是本技术实施例提供的一种获取第一发布实体发布的基于第一主题信息的数据的流程示意图;
64.图6是本技术实施例提供的一种将数据发送至订阅实体的流程示意图;
65.图7是本技术实施例提供的一种通信场景的示意图;
66.图8是本技术实施例提供的一种将数据发送至订阅实体的流程示意图;
67.图9是本技术实施例提供的一种通信场景的示意图;
68.图10是本技术实施例提供的一种通信场景的示意图;
69.图11是本技术实施例提供的一种通信场景的示意图;
70.图12是本技术实施例提供的一种车载通信装置的结构示意图;
71.图13是本技术实施例提供的一种车载通信方法的服务器的硬件结构框图。
具体实施方式
72.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
73.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
74.目前,随着自动驾驶、车联网以及基于服务的架构设计技术的飞速发展,车辆系统对于数据吞吐量的要求变得越来越大,同时对数据安全、实时、高效、灵活的传输提出了更高的需求,传统的can、flexray由于数据速率低、灵活性差,已经无法满足现在通信传输的需求。
75.基于此,本技术实施例提供了一种车载通信方法,可以满足自动驾驶及智能网联系统大数据吞吐的需求,同时实现了数据的安全、实时、高效、灵活的传输,在满足自动驾驶及智能网联系统通信要求的同时也支持基于服务的架构设计的实现。
76.请参阅图1,图1是本技术实施例提供的一种应用场景的示意图,包括数据空间和多个通信实体;
77.其中,数据空间可以理解为局域网,只有处于同一数据数据空间内的通信实体才可以互相通信;通信实体具有订阅数据和发布数据的功能。数据空间内包括通信管理模块,用于处理不同通信实体之间的数据交互。
78.数据空间在不同的应用场景下可以有不同的定义,比如,车辆上有很多用于实现不同功能的电子控制单元(electronic control unit,ecu),对于单个ecu而言,其就可以是一个数据空间,该ecu内的各应用相当于通信实体,各应用能够提供不同的服务,且各应用之间可以进行通信,进行相应数据的发布和订阅;又比如,多个ecu可以组成一个数据空间,该多个ecu中的每个ecu相当于通信实体;又比如,数据空间还可以是整车网络。
79.图2是本技术实施例提供的一种车载通信方法的流程图,如图2所示,以车载通信方法用于数据空间中的通信管理模块为例,包括以下步骤:
80.在步骤s201中,建立至少一个发布实体与主题信息的对应关系,主题信息是发布
实体发送的;主题信息表征发布实体所提供的车载服务。
81.本技术实施例中,发布实体向数据空间中的通信管理模块发送主题信息,该主题信息表征发布实体所提供的车载服务。比如,对于车载泊车系统,该系统可以提供代客泊车、自动泊车等很多服务,其中各项服务分别对应一种主题。又比如,对于感知系统,该系统可以提供车道线检测、交通灯检测、障碍物检测等服务,其中车道线检测就可以是一种主题。具体的,主题信息可以包括主题标识和/或主题名称,其中主题标识可以是预设字符串。
82.通信管理模块在接收到发布实体发送的主题信息后,建立发布实体与主题信息的对应关系。例如在一种应用场景中,发布实体为感知系统,该发布实体向通信管理模块发送的主题信息可以包括车道线检测、交通灯检测、障碍物检测,通信管理模块建立感知系统与车道线检测、交通灯检测、障碍物检测的对应关系,并进行存储。
83.在发布实体向通信管理模块发送主题信息之前,一种可选的实施方式中,如图3所示,车载通信方法可以包括以下步骤:
84.在步骤s301中,发布实体向数据空间的通信管理模块发送数据类型注册请求。
85.其中,数据类型注册请求表征发布实体所要发布的主题信息对应的数据类型。由于不同的发布实体基于不同的主题信息后续要进行发布的数据的数据类型不同,不同的数据类型包括字符串、矩阵、队列等。为了便于数据管理,发布实体在向通信管理模块发送主题信息之前,需要先完成数据类型的注册。
86.在步骤s303中,通信管理模块向发布实体返回第一反馈信息,该第一反馈信息指示发布实体完成相应数据类型的注册。
87.进一步可选的实施方式中,通信管理模块接收到发布实体发送的主题信息之后,在数据空间中生成相应的主题信息,向发布实体返回第二反馈信息,指示发布实体完成主题信息的发布。
88.在步骤s203中,接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息。
89.本技术实施例中,通信管理模块可以响应于多个发布实体发送的主题信息,生成多个主题信息,该多个主题信息可以供同一数据空间中的订阅实体进行订阅。订阅实体可以在所有主题信息中查询自己所需的主题信息,然后向通信管理模块发送相应的订阅信息。
90.一种可选的实施方式中,通信管理模块接收订阅实体发送的第一主题订阅信息,该第一主题订阅信息包括第一主题信息。
91.在通信管理模块接收订阅实体发送的第一主题订阅信息之前,一种可选的实施方式中,如图4所示,车载通信方法还可以包括以下步骤:
92.在步骤s401中,订阅实体向通信管理模块发送主题信息查找信息。
93.其中,主题信息查找信息可以包括订阅实体所需的车载服务信息。比如,在一种应用场景中,订阅实体可以是车辆转向应用,车辆转向应用需要感知系统提供的车道线检测服务,则主题信息查找信息可以包括车道线检测对应的主题名称和/或主题标识。
94.在步骤s403中,通信管理模块向订阅实体返回查找结果。
95.在某些场景中,订阅实体不知道所需的车载服务信息对应的准确的主题名称和/或主题标识,则也可以通过关键词进行模糊搜索,通信管理模块可以根据关键词将相关联
的主题信息打包生成对应的查找结果,并向订阅实体返回。
96.在步骤s405中,订阅实体基于查找结果,生成第一主题订阅信息。
97.在步骤s407中,订阅实体向通信管理模块发送第一主题订阅信息。
98.其中,第一主题订阅信息包括第一主题信息,第一主题信息即订阅实体所要订阅的主题信息。订阅实体根据实际应用需求从查找结果中确定所要订阅的主题信息,并生成相应的第一主题订阅信息,然后向通信管理模块发送。
99.在步骤s205中,基于对应关系,确定第一主题信息对应的第一发布实体。
100.本技术实施例中,通信管理模块基于对应关系,确定第一主题信息对应的第一发布实体。比如,在上述应用场景中,订阅实体是车辆转向应用,其向通信管理模块发送的第一主题信息为车道线检测;通信管理模块基于对应关系,可以确定出车道线检测对应的发布实体是感知系统。
101.在步骤s207中,获取第一发布实体发布的基于第一主题信息的数据。
102.在步骤s209中,将数据发送至订阅实体。
103.本技术实施例中,通信管理模块获取第一发布实体发布的基于第一主题信息的数据,然后将该数据发送至订阅实体。
104.一种可选的实施方式中,上述获取第一发布实体发布的基于第一主题信息的数据,可以包括如图5所示的以下步骤:
105.在步骤s501中,向第一发布实体发送订阅消息。
106.在步骤s503中,接收第一发布实体响应于订阅消息所发布的基于第一主题信息的数据。
107.具体的,通信管理模块确定第一主题信息对应的第一发布实体之后,向第一发布实体发送订阅消息,该订阅消息可以携带第一发布实体被订阅的第一主题信息的主题标识。从而,第一发布实体响应于该订阅消息,在数据空间中发布基于第一主题信息的数据。比如,感知系统响应于车道线检测订阅信息,在数据空间中发布基于车道线检测主题信息的车道线检测数据,从而,车辆转向应用可以从数据空间中获得该车道线检测数据。
108.为了解决在数据传递过程中带来的数据损坏、数据插入、周期性数据超时等一系列问题,本技术实施例中,可以对通信机制加入一系列的安全策略,从而保证数据传递的安全性和完整性,解决自动驾驶系统对于数据传递的功能安全要求。
109.基于此,一种可选的实施方式中,上述将数据发送至订阅实体,可以包括图6所示的以下步骤:
110.在步骤s601中,根据预设校验算法生成数据对应的第一校验码。
111.在步骤s603中,将第一校验码与数据打包发送至订阅实体。
112.其中,订阅实体用于根据预设校验算法和接收到的数据确定第二校验码,基于第一校验码与第二校验码确定接收到的数据的准确度。
113.具体的,上述预设校验算法可以包括但不限于循环冗余校验、奇偶校验、纵向冗余和校验和中的任一种。
114.循环冗余校验通过采取对多项式进行连续的除法,来探测数据传递过程过的损坏和插入,通过可以检测出所有单位失效和绝大部分多位失效。当采用循环冗余校验时,第一校验码的生成过程如下:
115.首先,将待传递的数据通过字节串的形式表示:
116.b(x)=bn(x)*2
8n
b
n-1
(x)*2
8(n-1)


b1(x)*28 b0(x);
117.然后,采用的循环冗余码的生成多项式如下:
118.a(x)=x
18
x
14
x8 1;
119.其用二进制则表示为1000100000100000001;
120.然后,将字节串形式的数据左移18位并除以生成多项式以得到存储器的特征码如下:
121.b(x)*x
18
/a(x)=g(x) c(x)/a(x);
122.其中g(x)为商,c(x)则为第一校验码;
123.在生成第一校验码之后,将其与数据打包发送至订阅实体,订阅实体通过相同的散发计算得到第二校验码,将第二校验码与第一校验码进行比较,以判断数据的准确度,即数据在传递过程中是否出现损坏、插入。
124.校验和能够较好的探测单位失效,且对于运算性能要求较低,适用于安全性等级较低的数据传递。采用校验和生成第一校验码的过程如下:
125.首先,将待传递的数据通过字节串的形式表示:
126.b(x)=bn(x)*2
8n
b
n-1
(x)*2
8(n-1)


b1(x)*28 b0(x);
127.然后,将字节串以四个字节为一组,划分成(n 1)/4组数据,从而转变为长度为4个字节的数据组,记为k=[k
(n 1)
/4,k
(n-3)
/4

,k2,k1];
[0128]
然后,将k的数据进行累加,生成一个6字节的数据m=k
(n 1)/4
k
(n-3)/4

k2 k1,空余位以0填充;
[0129]
然后,将m的6个字节划为2组,分别为前三个字节为一组的c以及后三个字节为一组的d,将c与d相加得到相应的校验和,作为第一校验码;订阅实体通过相同的算法计算得到第二校验码,并比较第一校验码与第二校验和的差异,以判断数据在传递过程中是否出现损坏、插入。
[0130]
本技术实施例中,通信管理模块对发布实体与订阅实体定义其数据发送的周期,来对传递的数据进行超时检测。
[0131]
一种可选的实施方式中,当第一发布实体连续发布基于第一主题信息的数据时,方法还包括:
[0132]
对第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔进行监控;
[0133]
和/或;
[0134]
对订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔进行监控。
[0135]
进一步可选的实施方式中,上述对第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔进行监控,包括:
[0136]
若第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔大于等于第一预设时间间隔,生成第一错误提示信息。
[0137]
如图7所示,对第一发布实体连续发布的数据包括d1、d2、d3、d4和d5,通信管理模块预先对第一发布实体设定相应的发送周期为第一预设时间间隔,当第一发布实体连续发
布的基于第一主题信息的数据时,确定d1与d2之间、d2与d3之间、d3与d4之间、d4与d5之间的发布时间间隔,再将其与第一预设时间间隔进行比较,如果大于第一预设时间间隔,表示相邻数据之间的发布时间间隔过长,此时生成第一错误提示信息。如此,对于一些实时要求性比较高的数据,通过超时检测,可以检查出数据传递及发送过程中的超时错误,可以保证数据传递的安全性。
[0138]
进一步可选的实施方式中,上述对订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔进行监控,可以包括:
[0139]
若订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔大于等于第二预设时间间隔,生成第二错误提示信息。
[0140]
比如,对于车辆转向应用这个订阅实体而言,其转向模块需要将转向指令发送到转向执行器上来实现车辆的转向,正常情况下,转向指令需要每隔20ms发一次,如果超时的话,比如40ms还未发送下一帧转向指令的话,可能会导致车辆无法及时转弯,从而导致严重的安全问题。因此,对于订阅实体连续接收到的数据进行超时监听,当相邻数据之间的接收时间间隔大于等于第二预设时间间隔时,生成第二错误提示信息,例如在上述场景中,第二预设时间间隔可以是小于20ms的任一时长。
[0141]
进一步可选的实施方式中,对于实时性要求高的数据,同时对发布实体发送的数据以及对订阅实体接收的数据进行超时监听。一方面,如果判断出发布实体的发布周期较长时,可以不执行向订阅实体发送数据的步骤,如此,可以避免通信过程无效数据带来的资源浪费;另一方面,即使在发布实体的发布周期合格的情况下,由于传输过程中的其他因素,也会造成订阅实体接收到的相邻数据之间的接收时间间隔变长,如此,通过同时对发布实体发送的数据以及对订阅实体接收的数据进行超时监听,可以避免由于数据超时对车辆安全性带来的影响。
[0142]
对于订阅实体而言,其通常需要订阅多个主题信息,该多个主题信息可能来源于不同的发布实体。因此,一种可选的实施方式中,上述将数据发送至订阅实体之前,车载通信方法还可以包括:
[0143]
接收订阅实体发送的第二主题订阅信息;第二主题订阅信息包括第二主题信息;
[0144]
基于对应关系,确定第二主题信息对应的第二发布实体;
[0145]
获取第二发布实体发布的基于第二主题信息的数据。
[0146]
比如,在一种应用场景中,车辆转向应用还需订阅车载定位系统提供的定位服务;同样的,车载定位系统与感知系统需要先在数据空间中向通信管理模块注册定位数据对应的数据类型,然后在数据空间中生成定位服务对应的主题信息。则,上述第二主题信息可以包括定位服务对应的主题名称和/或主题标识;订阅实体向通信管理模块发送第二主题信息后,通信管理模块基于对应关系,可以确定对应的第二发布实体为车载定位系统,然后获取车载定位系统发布的基于定位服务的定位数据。
[0147]
考虑到数据传输过程中受带宽的影响,一旦订阅实体订阅的主题信息较多,可能会造成数据堵塞。基于此,一种可选的实施方式中,第一发布实体基于第一主题信息发布的第一数据以及第二发布实体基于第二主题信息发布的第二数据均携带优先级信息;
[0148]
上述将数据发送至订阅实体,可以包括图8所示的以下步骤:
[0149]
在步骤s801中,基于第一数据的优先级信息和第二数据的优先级信息,对第一数
据和第二数据进行优先级排序。
[0150]
在步骤s803中,根据优先级排序的结果向订阅实体依次发送第一数据和第二数据。
[0151]
如图9所示,第一发布实体通过优先级设置模块对待传递的数据d6设置相应的优先级为5级,第二发布实体通过优先级设置模块对待传递的数据d7设置相应的优先级为1级;其中1级为最高,5级为最低,优先级的设置方式可以根据需求进行设置,本技术不作限定;当检测到数据堵塞时,优先级高的数据(d7)将优先发送,如此,可以保证安全性高的数据传输的实时性,可以满足自动驾驶系统对数据实时性的要求。
[0152]
本技术实施例中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。对于不同的情况,采取不同的通信方式,即,在拥有共享内存的器件内将采取共享指针的传递方式进行数据传输,在其余情况下将采用统一数据队列的传递方式进行数据传输。
[0153]
其中,共享内存,顾名思义就是允许两个不相关的进程访问同一个逻辑内存,共享内存是两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常为同一段物理内存。进程可以将同一段物理内存连接到他们自己的地址空间中,所有的进程都可以访问共享内存中的地址。如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任何其他进程。
[0154]
一种可选的实施方式中,当第一发布实体与订阅实体为同一电子控制单元中的不同模块时,第一发布实体与订阅实体之间存在共享内存;对应的,上述获取第一发布实体发布的基于第一主题信息的数据,可以包括:
[0155]
接收第一发布实体在共享内存对应的地址空间中写入的基于第一主题信息的数据;
[0156]
对应的,上述将数据发送至订阅实体,可以包括:
[0157]
向订阅实体发送通知,以使订阅实体响应于通知在共享内存对应的地址空间中读取第一发布实体写入的基于第一主题信息的数据。
[0158]
具体的,如图10所示,发布实体通过共享指针直接在共享内存相应的地址空间进行数据的写入,订阅实体在接收到通知后通过共享指针直接在相应的地址空间进行数据的读取。相比于传统的通信机制,此机制不存在数据在传递过程中的拷贝,减少了数据传递过程中的拷贝次数,因此能够满足大数据传递的低延迟要求,同时通过在写入数据的过程中加入前文介绍的安全策略如循环冗余校验和存储器检验和,可以保证数据在传递过程中的完整性,可以大幅度提高数据传递的安全性,满足自动驾驶系统对于数据传递的功能安全要求。
[0159]
另一种可选的实施方式中,当第一发布实体与订阅实体为不同的电子控制单元时,对应的,上述获取第一发布实体发布的基于第一主题信息的数据,可以包括:
[0160]
通过网络路由器获取第一发布实体发送的基于第一主题信息的数据;
[0161]
对应的,上述将数据发送至订阅实体,可以包括:
[0162]
通过网络路由器向订阅实体转发第一发布实体发送的基于第一主题信息的数据。
[0163]
具体的,如图11所示,发布实体通过以特定数据排列的方式向网络路由器发送数据,订阅实体在接收到通知后对路由器的数据进行接收。相比传统的通信机制,此机制通过
特定数据排列的方式进行数据的传递,可以减少数据的序列化与反序列化的过程,可以提高数据的传递速度,同时在数据传递的过程中通过加入前文介绍的安全策略如循环冗余校验、校验和以及计数器等,可以保证数据在传递过程中的完整性,可以大幅度提高数据传递的安全性,满足自动驾驶系统对于数据传递的功能安全要求。
[0164]
综上,本技术实施例提供的一种车载通信方法,可以解决大数据吞吐的需求,且数据传输的安全高、实时性好;在满足自动驾驶及智能网联系统通信要求的同时也支持基于服务的架构设计的实现。
[0165]
本技术实施例还提供了一种车载通信装置,图12是本技术实施例提供的一种车载通信装置的结构示意图,如图12所示,该装置包括:
[0166]
建立模块1201,被配置为执行建立至少一个发布实体与主题信息的对应关系,主题信息是发布实体发送的;主题信息表征发布实体所提供的车载服务;
[0167]
接收模块1202,被配置为执行接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息;
[0168]
确定模块1203,被配置为执行基于对应关系,确定第一主题信息对应的第一发布实体;
[0169]
获取模块1204,被配置为执行获取第一发布实体发布的基于第一主题信息的数据;
[0170]
发送模块1205,被配置为执行将数据发送至订阅实体;
[0171]
其中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。
[0172]
可选的,发送模块1205,被配置为执行:
[0173]
根据预设校验算法生成数据对应的第一校验码;
[0174]
将第一校验码与数据打包发送至订阅实体;订阅实体用于根据预设校验算法和接收到的数据确定第二校验码,基于第一校验码与第二校验码确定接收到的数据的准确度。
[0175]
可选的,获取模块1204,被配置为执行:
[0176]
向第一发布实体发送订阅消息;
[0177]
接收第一发布实体响应于订阅消息所发布的基于第一主题信息的数据。
[0178]
可选的,当第一发布实体连续发布基于第一主题信息的数据时,装置还包括监控模块,被配置为执行:
[0179]
对第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔进行监控;
[0180]
和/或;
[0181]
对订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间间隔进行监控。
[0182]
可选的,监控模块,被配置为执行:
[0183]
若第一发布实体连续发布的基于第一主题信息的数据中相邻数据之间的发布时间间隔大于等于第一预设时间间隔,生成第一错误提示信息。
[0184]
可选的,监控模块,被配置为执行:
[0185]
若订阅实体连续接收到的基于第一主题信息的数据中相邻数据之间的接收时间
间隔大于等于第二预设时间间隔,生成第二错误提示信息。
[0186]
可选的,接收模块,还被配置为执行:
[0187]
接收订阅实体发送的第二主题订阅信息;第二主题订阅信息包括第二主题信息;
[0188]
基于对应关系,确定第二主题信息对应的第二发布实体;
[0189]
获取第二发布实体发布的基于第二主题信息的数据。
[0190]
可选的,第一发布实体基于第一主题信息发布的第一数据以及第二发布实体基于第二主题信息发布的第二数据均携带优先级信息;
[0191]
发送模块1205,被配置为执行:
[0192]
基于第一数据的优先级信息和第二数据的优先级信息,对第一数据和第二数据进行优先级排序;
[0193]
根据优先级排序的结果向订阅实体依次发送第一数据和第二数据。
[0194]
可选的,当第一发布实体与订阅实体为同一电子控制单元中的不同模块时,第一发布实体与订阅实体之间存在共享内存;
[0195]
获取模块1204,被配置为执行:
[0196]
接收第一发布实体在共享内存对应的地址空间中写入的基于第一主题信息的数据;
[0197]
发送模块1205,被配置为执行:
[0198]
向订阅实体发送通知,以使订阅实体响应于通知在共享内存对应的地址空间中读取第一发布实体写入的基于第一主题信息的数据。
[0199]
可选的,当第一发布实体与订阅实体为不同的电子控制单元时,获取模块1204,被配置为执行:
[0200]
通过网络路由器获取第一发布实体发送的基于第一主题信息的数据;
[0201]
发送模块1205,被配置为执行:
[0202]
通过网络路由器向订阅实体转发第一发布实体发送的基于第一主题信息的数据。
[0203]
本技术实施例中的装置与方法实施例基于同样地申请构思。
[0204]
本技术实施例所提供的方法实施例可以在计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图13是本技术实施例提供的一种车载通信方法的服务器的硬件结构框图。如图13所示,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)1310(处理器1310可以包括但不限于微处理器ncu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器1330,一个或一个以上存储应用程序1323或数据1322的存储介质1320(例如一个或一个以上海量存储设备)。其中,存储器1330和存储介质1320可以是短暂存储或持久存储。存储在存储介质1320的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1310可以设置为与存储介质1320通信,在服务器1300上执行存储介质1320中的一系列指令操作。服务器1300还可以包括一个或一个以上电源1360,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1340,和/或,一个或一个以上操作系统1321,例如windows,mac os,unix,linux,freebsd等等。
[0205]
输入输出接口1340可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器1300的通信供应商提供的无线网络。在一个实例中,输入输出接口1340包
括一个网络适配器(network interface controller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口1340可以为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
[0206]
本领域普通技术人员可以理解,图13所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器1300还可包括比图13中所示更多或者更少的组件,或者具有与图13所示不同的配置。
[0207]
本技术的实施例还提供了一种存储介质,所述存储介质可设置于服务器之中以保存用于实现方法实施例中一种车载通信方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述车载通信方法。
[0208]
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0209]
由上述本技术提供的车载通信方法、装置、设备及存储介质的实施例可见,本技术中通过建立至少一个发布实体与主题信息的对应关系,主题信息是发布实体发送的;主题信息表征发布实体所提供的车载服务;接收订阅实体发送的第一主题订阅信息;第一主题订阅信息包括第一主题信息;基于对应关系,确定第一主题信息对应的第一发布实体;获取第一发布实体发布的基于第一主题信息的数据;将数据发送至订阅实体;其中,发布实体与订阅实体为不同的电子控制单元,或者,发布实体与订阅实体为同一电子控制单元中的不同模块。如此,本技术可以解决大数据吞吐的需求,且数据传输的安全高、实时性好;在满足自动驾驶及智能网联系统通信要求的同时也支持基于服务的架构设计的实现。
[0210]
需要说明的是:上述本技术实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0211]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0212]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0213]
以上所述仅为本技术的较佳实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

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

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

相关文献