一种时间同步系统及方法与流程

未命名 07-27 阅读:128 评论:0


1.本发明涉及汽车电子技术领域,具体涉及一种时间同步系统及方法。


背景技术:

2.时间同步技术为整车需要参与时间同步的控制器来提供相同的时间基准,从而满足各个控制器功能对精准时间的需求。
3.目前通常采用广义精准时间技术(gptp技术)来满足车载以太网内的时间同步需求,具体来说,车内被选作主时钟的控制器将自身维护的时间通过以太网报文的形式传递给其它控制器来进行时间同步。但是,对于现有满足时间同步需求的技术而言,不同的总线形式有不同的通信协议,在使用以太网作为通信链路形式的车载控制器之间多采用gptp技术,如can总线等其它通信形式可采用autosar经典平台的cantsync模块来实现基于can的同步功能。
4.通过上述内容可见,对于车载混合网络,各网络内部的主时钟来源不同,这样就会导致整网的时间基准不一致,时间同步精度较差。


技术实现要素:

5.有鉴于此,本发明实施例提供一种时间同步系统及方法,以解决现有时间同步的方式存在的时间同步精度较差等问题。
6.为实现上述目的,本发明实施例提供如下技术方案:
7.本发明实施例第一方面公开一种时间同步系统,所述系统至少包括:以太网通信链路中的主节点、桥节点和从节点,以及控制器域网can链路中的can节点;
8.所述主节点,用于基于由gps模组发送的脉冲信号和协调世界时utc时钟信息,更新所述主节点的本地时钟;并将第一时钟同步信息发送给所述桥节点,所述第一时钟同步信息基于更新后的所述主节点的本地时钟生成;
9.所述桥节点,用于利用所述第一时钟同步信息更新所述桥节点的本地时钟,并将第二时钟同步信息发送给所述从节点,所述第二时钟同步信息基于更新后的所述桥节点的本地时钟生成;
10.所述从节点,用于利用所述第二时钟同步信息更新所述从节点的本地时钟,并将第三时钟同步信息发送给所述can节点,所述第三时钟同步信息基于更新后的所述从节点的本地时钟生成;
11.所述can节点,用于基于所述第三时钟同步信息更新所述can节点的本地时钟。
12.优选的,所述主节点具体用于:
13.在检测到由gps模组发送的脉冲信号的上升沿时,开始计时;
14.在接收到由所述gps模组发送的utc时钟信息时,停止计时并确定计时时间差;
15.利用所述utc时钟信息和所述计时时间差更新所述主节点的本地时钟。
16.优选的,所述从节点具体用于:
17.将第三时钟同步信息封装到can通信报文中,并将所述can通信报文发送给所述can节点。
18.优选的,所述桥节点具体用于:
19.通过所述桥节点的主端口将第二时钟同步信息发送给所述从节点。
20.优选的,所述桥节点还用于:
21.在车辆运行过程中,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,从最后一次接收到的所述第一时钟同步信息中提取第一时间戳;
22.将所述第一时间戳和所述桥节点的本地时钟的计时信息封装到第四时钟同步信息中,并在所述第四时钟同步信息中累加修正场字段;
23.将所述第四时钟同步信息发送给所述从节点;
24.相应的,所述从节点还用于:
25.利用所述第四时钟同步信息更新所述从节点的本地时钟,执行将第三时钟同步信息发送给所述can节点这一步骤。
26.优选的,所述桥节点还用于:
27.在所述桥节点上电后,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,所述第五时钟同步信息基于所述桥节点的本地时钟生成;
28.计算所述当前发送时间和所述第n帧第五时钟同步信息中的第二时间戳之间的时间差,所述第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;
29.将所述时间差作为修正场字段累加到所述第n帧第五时钟同步信息中,并将所述第n帧第五时钟同步信息发送给所述从节点;
30.相应的,所述从节点还用于:
31.利用接收到的所述第五时钟同步信息更新所述从节点的本地时钟,执行将第三时钟同步信息发送给所述can节点这一步骤。
32.本发明实施例第二方面公开一种时间同步方法,所述方法包括:
33.接收以太网通信链路中的主节点发送的第一时钟同步信息,其中,所述第一时钟同步信息基于更新后的所述主节点的本地时钟生成,所述主节点的本地时钟基于gps模组发送的脉冲信号和协调世界时utc时钟信息更新;
34.利用所述第一时钟同步信息更新所述以太网通信链路中的桥节点的本地时钟;
35.将第二时钟同步信息发送给所述以太网通信链路中的从节点,使所述从节点利用所述第二时钟同步信息更新本地时钟后将第三时钟同步信息发送给控制器域网can链路中的can节点,以使所述can节点基于所述第三时钟同步信息更新本地时钟,所述第二时钟同步信息基于更新后的所述桥节点的本地时钟生成,所述第三时钟同步信息基于更新后的所述从节点的本地时钟生成。
36.优选的,将第二时钟同步信息发送给所述以太网通信链路中的从节点,包括:
37.通过所述桥节点的主端口将第二时钟同步信息发送给所述以太网通信链路中的从节点。
38.优选的,所述方法还包括:
39.在车辆运行过程中,若在预设超时时长内未接收到所述主节点发送的所述第一时
钟同步信息,从最后一次接收到的所述第一时钟同步信息中提取第一时间戳;
40.将所述第一时间戳和所述桥节点的本地时钟的计时信息封装到第四时钟同步信息中,并在所述第四时钟同步信息中累加修正场字段;
41.将所述第四时钟同步信息发送给所述从节点,使所述从节点利用所述第四时钟同步信息更新本地时钟后将第三时钟同步信息发送给所述can节点。
42.优选的,所述方法还包括:
43.在所述桥节点上电后,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,所述第五时钟同步信息基于所述桥节点的本地时钟生成;
44.计算所述当前发送时间和所述第n帧第五时钟同步信息中的第二时间戳之间的时间差,所述第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;
45.将所述时间差作为修正场字段累加到所述第n帧第五时钟同步信息中,并将所述第n帧第五时钟同步信息发送给所述从节点,使所述从节点利用所述第五时钟同步信息更新本地时钟后将第三时钟同步信息发送给所述can节点。
46.基于上述本发明实施例提供的一种时间同步系统及方法,该系统包括:以太网通信链路中的主节点、桥节点和从节点,以及can链路中的can节点。主节点基于由gps模组发送的脉冲信号和utc时钟信息更新本地时钟,并将第一时钟同步信息发送给桥节点;桥节点利用第一时钟同步信息更新本地时钟,并将第二时钟同步信息发送给从节点;从节点利用第二时钟同步信息更新本地时钟,并将第三时钟同步信息发送给can节点;can节点基于第三时钟同步信息更新本地时钟。本方案使车载混合网络中各个节点都采用相同时钟源来进行时间同步,从而提高时间同步精度。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
48.图1为本发明实施例提供的一种时间同步系统的结构框图;
49.图2为本发明实施例提供的主节点、桥节点和从节点的连接示例图;
50.图3为本发明实施例提供的一种时间同步方法的流程图。
具体实施方式
51.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
52.在本技术中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没
有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
53.由背景技术可知,目前通常采用广义精准时间技术(gptp技术)来满足车载以太网内的时间同步需求。但是,对于现有满足时间同步需求的技术而言,不同的总线形式有不同的通信协议,在使用以太网作为通信链路形式的车载控制器之间多采用gptp技术,如can总线等其它通信形式可采用autosar经典平台的cantsync模块来实现基于can的同步功能。对于车载混合网络,各网络内部的主时钟来源不同,这样就会导致整网的时间基准不一致,时间同步精度较差。
54.因此,本发明实施例提供一种时间同步系统及方法,该系统包括:以太网通信链路中的主节点、桥节点和从节点,以及can链路中的can节点。主节点基于由gps模组发送的脉冲信号和utc时钟信息更新本地时钟,并将第一时钟同步信息发送给桥节点。桥节点利用第一时钟同步信息更新本地时钟,并将第二时钟同步信息发送给从节点。从节点利用第二时钟同步信息更新本地时钟,并将第三时钟同步信息发送给can节点。can节点基于第三时钟同步信息更新本地时钟。使车载混合网络中各个节点都采用相同时钟源来进行时间同步,从而提高时间同步精度。
55.参见图1,示出了本发明实施例提供的一种时间同步系统的结构框图,该时间同步系统包括:以太网通信链路中的主节点100、桥节点200和从节点300,以及控制器域网(controllerareanetwork,can)链路中的can节点400。
56.具体地,主节点100,用于基于由gps模组发送的脉冲信号和协调世界时(universaltimecoordinated,utc)时钟信息,更新主节点100的本地时钟;并将第一时钟同步信息发送给桥节点200,第一时钟同步信息基于更新后的主节点100的本地时钟生成。
57.桥节点200,用于利用第一时钟同步信息更新桥节点200的本地时钟,并将第二时钟同步信息发送给从节点300,第二时钟同步信息基于更新后的桥节点200的本地时钟生成。
58.从节点300,用于利用第二时钟同步信息更新从节点300的本地时钟,并将第三时钟同步信息发送给can节点400,第三时钟同步信息基于更新后的从节点300的本地时钟生成。
59.can节点400,用于基于第三时钟同步信息更新can节点400的本地时钟。
60.需要说明的是,在车载网络中,主节点100(也称为主节点芯片)、从节点300(也称为从节点芯片)和can节点400(也称为can节点芯片)可以是车载控制单元(ecu);桥节点200(也称为桥节点芯片)在车载网络中一般是指车载交换机,桥节点200起到信息交换转发的作用。
61.一些实施例中,主节点100可以是集成了gps模组的ecu;在校准主节点100的本地时钟时,可以采用gps直接授时的方式来进行校准,时间源来自于卫星信号。具体来说,从卫星获取gps信号来更新gps模组的本地时钟;gps模组通过pps(pulsepersecond)接口以一定周期(如1s)来为主节点100提供脉冲信号,gps模组再通过通用异步收发传输器(universalasynchronous receiver/transmitter,uart)将时钟信息以一定周期(如1s)传递到主节点100。
62.主节点100至少具有2个引脚,分别为pps同步信号引脚和串口接收信号引脚。pps
同步信号引脚用于接收来自于gps模组的脉冲信号(也就是同步脉冲);串口接收信号引脚用于接收来自于gps模组的串口数据(至少携带了时钟信息),推荐电平标准可以是rs232。
63.结合上述内容可见,主节点100校准本地时钟的具体方式为:主节点100在检测到由gps模组发送的脉冲信号的上升沿时,开始计时;主节点100在接收到由gps模组发送的utc时钟信息时,停止计时并确定计时时间差,计时时间差即为“开始计时”至“停止计时”之间的时间差;主节点100利用utc时钟信息和计时时间差更新主节点100的本地时钟,具体来说,将主节点100的本地时钟更新为:t0+δt;t0为utc时钟信息,δt为计时时间差。
64.需要说明的是,如果一个ecu具有多个端口,那每个端口都拥有自身对应的属性(master属性或slave属性);对于主节点100而言,主节点100中具有master属性的端口可以记为gptpmaster。为更好理解主节点100如何更新自身的本地时钟,通过以下过程a1至a5进行举例说明。
65.a1、gps模组周期性(周期可以是1s)发送脉冲信号(pps脉冲)给主节点100的gptpmaster。
66.a2、gps模组将至少携带utc时钟信息(记为t0)的串口数据(rs232标准)发送给gptpmaster。
67.a3、主节点100在检测到脉冲信号的上升沿(数字电平从低电平变为高电平的瞬间)后,主节点100开始计时。
68.a4、主节点100在接收到串口数据时停止计时,从而可以获取得到计时时间差(记为δt)。
69.a5、主节点100将自身的本地时钟更新为:t0+δt。
70.需要说明的是,主节点100的本地时钟时主要包含以下两方面的误差。
71.第一方面的误差:主节点100记录到的脉冲信号以及串口电平信号到达的时间差。该时间差以本地晶振为时间基准,故gps直接授时的偏差主要来源于本地晶振的精度。以脉冲信号的周期为1s为示例,若本地晶振的精度为100ppm,则单次脉冲信号和rs232电平的时间差的偏差值最大可达100us,该偏差值不会累计且会被周期发送的脉冲信号校准,故主节点100可以维持较为精准的本地时钟。
72.第二方面的误差:在gps信号丢失的情况下,主节点100的本地晶振引入的误差,该误差为实际绝对时间和主节点100本地维护的绝对时间之间的差异。为保证在隧道和山区等卫星覆盖较差场景下能够尽量减少gps信号丢失的情况,且同时为保证主节点100的本地晶振的精度,主节点100的晶振偏差目标可以为5ms/24小时,这样就能够使主节点100可以维持较为精准的本地时钟。
73.以上是关于主节点100更新自身的本地时钟的相关说明;主节点100在更新自身的本地时钟后,主节点100为以太网通信链路中的其它以太网节点(桥节点200和从节点300)提供时间基准来进行以太网时间同步,以太网时间同步可以基于gptp技术(ieee802.1as协议)实现,并在进行以太网时间同步时不开启最佳主时钟选举(bmca)功能。
74.需要说明的是,在车载网络中,当节点的时钟来源发生变化时,通常会自动开启bmca功能来选择全网最优的节点作为主时钟;但是本方案已经确定主节点100为主时钟,故不开启bmca功能,这样就能够减少车载网络上的报文开销,以及减少车载控制器运行bmca算法所带来的算力消耗。
75.一些实施例中,主节点100基于更新后的主节点100的本地时钟生成第一时钟同步信息;主节点100将第一时钟同步信息发送给桥节点200以进行相应的时间同步。
76.如图2示出的主节点、桥节点和从节点的连接示例图可见,“m”表示属性为master的端口(称为主端口),“s”表示属性为slave的端口(称为从端口);主节点100的以太网通信链路端口的属性配置为主端口,与主节点100的主端口所连接的桥节点200的端口配置为从端口。桥节点200的多个端口中仅配置一个从端口,桥节点200的其它端口配置为主端口或禁用端口。与桥节点200的主端口所连接的从节点300的端口配置为从端口。
77.主节点100将第一时间同步信息沿“主节点100的主端口-桥节点200的从端口”这一链路发送给桥节点200。桥节点200利用第一时钟同步信息更新桥节点200的本地时钟,桥节点200再将第二时钟同步信息沿“桥节点200的主端口-从节点300的从端口”这一链路发送给从节点300,第二时钟同步信息基于更新后的桥节点200的本地时钟生成;从节点300再利用第二时钟同步信息更新从节点300的本地时钟;这样就完成了以太网通信链路中各节点的时间同步。
78.一些实施例中,桥节点200更新自身的本地时钟后,桥节点200通过桥节点200的主端口将第二时钟同步信息发送给从节点300。时钟同步信息的传递方向为:主节点100的主端口-桥节点200的从端口-桥节点200的主端口-从节点300的从端口。
79.可以理解的是,第一时钟同步信息和第二时钟同步信息是以报文的形式来发送的;例如:主节点100以sync+follow_up报文的形式来将第一时钟同步信息发送给桥节点200。主节点100发送的follow_up报文中携带有一个时间戳(第一时钟同步信息中的时间戳称为第一时间戳),该第一时间戳是sync报文的发送时刻,该第一时间戳是基于更新后的主节点100的本地时钟得到的。
80.以上内容是关于以太网通信链路中各个节点的时间同步的相关说明。从节点300接收到桥节点200发送的第二时钟同步信息之后,从节点300利用第二时钟同步信息作为时间基准来更新从节点300的本地时钟,具体来说,从节点300将本地时钟同步至该时间基准,从而完成本地时钟的更新。
81.从节点300在can网络上将第三时钟同步信息传递给can链路中的can节点400,第三时钟同步信息基于更新后的从节点300的本地时钟生成;can节点400基于第三时钟同步信息更新can节点400的本地时钟,从而完成can链路的时间同步。
82.一些实施例中,从节点300将第三时钟同步信息封装到can通信报文中,并将can通信报文发送给can节点400。也就是说,从节点300作为can链路的时钟源节点,通过can(fd)向连接在从节点300的can节点400传递第三时钟同步信息,从而实现can链路的时间同步。
83.以上是关于can链路的时间同步的相关说明。完成以太网通信链路和can链路的时间同步后,以太网通信链路和can链路的时间精度相同。
84.在以太网通信链路和can链路上传递时钟同步信息时,以太网通信链路上的时钟有48bits携带秒信息,有32bits携带纳秒信息;can链路的时钟受到报文大小的限制,有32bits携带秒信息,有32bits携带纳秒信息,32bits的秒信息采用以太网低32bits(已足以用于表示从1970年后136年的时间信息)。
85.综合以上关于以太网通信链路和can链路的时间同步的内容可见,本方案使车载混合网络中各个节点都采用相同时钟源来进行时间同步,从而提高时间同步精度。
86.可以理解的是,车辆在运行过程中,或者,桥节点200在上电后,均会出现桥节点200未接收到主节点100发送的第一时钟同步信息这一异常情况。车辆在运行过程中,若桥节点200未接收到主节点100发送的第一时钟同步信息,这一异常情况称为“执行异常情况”。桥节点200在上电后,若桥节点200未接收到主节点100发送的第一时钟同步信息,这一异常情况称为“启动异常情况”。以下分别对“执行异常情况”和“启动异常情况”进行解释说明。
87.执行异常情况具体是指:车辆在运行过程中发生主节点100信息丢失(原因可能是主节点100损坏、物理链路异常等),桥节点200在预设超时时长(如500ms)内未收到第一时钟同步信息。
88.启动异常情况具体是指:车辆在启动阶段主节点100未发出第一时钟同步信息(原因可能是主节点100启动过慢、主节点100损坏等),桥节点200启动后(或者说桥节点200上电后)在预设超时时长内未接收到主节点100发送的第一时钟同步信息。例如:桥节点200上电后,桥节点200若在500ms内接收到第一时钟同步信息,则表示启动正常;桥节点200若在500ms内未接收到第一时钟同步信息,则表示启动异常。
89.针对上述提及的“执行异常情况”和“启动异常情况”这两种异常情况,本方案也分别给出了“执行异常情况”和“启动异常情况”的处理措施,“执行异常情况”和“启动异常情况”的处理措施详见以下说明。
90.关于处理“执行异常情况”的说明:
91.发生执行异常情况时(如主节点100异常),桥节点200进入维护期,桥节点200将最后一次接收到的第一时钟同步信息作为基准,并利用本地时钟的计时来继续维护本地时钟,所维护的本地时钟可以作为上层应用软件组件所调用的时间源。
92.一些实施例中,发生执行异常情况时,桥节点200进入第一代理模式,继续通过主端口向从节点300发送时钟同步信息,以维护下游从节点300的时钟同步机制正常进行。
93.具体实现中,在车辆运行过程中,若在预设超时时长(如500ms)内未接收到主节点100发送的第一时钟同步信息,桥节点200进入第一代理模式;桥节点200在第一代理模式下需执行以下步骤:桥节点200从最后一次接收到的第一时钟同步信息中提取第一时间戳;桥节点200将第一时间戳和桥节点200的本地时钟的计时信息封装到第四时钟同步信息中,并在第四时钟同步信息中累加修正场字段;桥节点200将第四时钟同步信息发送给从节点300。
94.从节点300利用第四时钟同步信息更新从节点300的本地时钟,从节点300执行上述“将第三时钟同步信息发送给can节点400”这一步骤以继续后续的时间同步流程。
95.具体来说,桥节点200进入第一代理模式后,桥节点200从最后一次接收到的第一时钟同步信息(报文的形式)中提取精准时间戳字段,该精准时间戳字段对应第一时间戳;桥节点200将该精准时间戳字段和桥节点200的本地时钟的计时信息封装到第四时钟同步信息中,并在第四时钟同步信息中累加修正场字段;桥节点200继续向从节点300传递第四时钟同步信息。
96.以上内容是关于“执行异常情况”的处理措施的相关说明。
97.关于处理“启动异常情况”的说明:
98.发生启动异常情况时,桥节点200以自身的本地时钟为时间基准来进行后续的时
间同步,桥节点200自身的本地时钟可以作为上层应用软件组件所调用的时间源。
99.一些实施例中,发生启动异常情况时,桥节点200进入第二代理模式,继续通过主端口向从节点300发送时钟同步信息,以维护下游从节点300的时钟同步机制正常进行。
100.具体实现中,在桥节点200上电后,若在预设超时时长内未接收到主节点100发送的第一时钟同步信息,桥节点200进入第二代理模式;桥节点200在第二代理模式下需执行以下步骤:桥节点200记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,第五时钟同步信息基于桥节点200的本地时钟生成;桥节点200计算该当前发送时间和第n帧第五时钟同步信息中的第二时间戳之间的时间差,第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;桥节点200将该时间差(当前发送时间和第二时间戳之间的时间差)作为修正场字段累加到第n帧第五时钟同步信息中,并将第n帧第五时钟同步信息发送给从节点300。
101.从节点300利用接收到的第五时钟同步信息更新从节点300的本地时钟,从节点300执行上述“将第三时钟同步信息发送给can节点400”这一步骤以继续后续的时间同步流程。
102.需要说明的是,修正场字段(记为correctionfield)是follow_up报文中的一个字段;主节点100发出的sync+followup报文经过桥节点200的处理和转发会产生延时(包含链路上传播的延时和桥节点200处理时的驻留延时),修正场字段累计了主节点100到从节点300这一链路中的所有延时;从节点300收到同步时钟信息后,会把同步时钟信息中的精准时间戳字段和修正场字段的数值进行累加,从而获取得到一个准确的时间信息。
103.桥节点200进入第二代理模式后,桥节点200在发送第1帧第五时钟同步信息时,桥节点200记录发送第1帧第五时钟同步信息的当前发送时间t1,t1即为第二时间戳。桥节点200将该第二时间戳封装到第五时钟同步信息中,后续的第五时钟同步信息中的精准时间戳字段均固定为第二时间戳(也就是发送第1帧第五时钟同步信息时所记录的时间),同时桥节点200以本地时钟进行计时以不断累加修正场字段。桥节点200在发送第2帧第五时钟同步信息时,记录当前发送第2帧第五时钟同步信息的当前发送时间t2,桥节点200计算t2和t1之间的时间差并将该时间差作为修正场字段,再将该修正场字段(t2和t1之间的时间差)累加到第2帧第五时钟同步信息中后将其发送给从节点300。
104.为更好理解上述关于第n帧第五时钟同步信息的内容,通过以下内容进行举例说明;其中,preciseorigintimestamp表示第五时钟同步信息中的精准时间戳字段,通过下标的数字来表征第五时钟同步信息的帧数序号。
105.桥节点200记录发送第1帧第五时钟同步信息的当前发送时间t1,第1帧第五时钟同步信息中的精准时间戳字段和修正场字段的数值分别为:preciseorigintimestamp1=t1;correctionfield1=0。
106.桥节点200记录发送第2帧第五时钟同步信息的当前发送时间t2,第2帧第五时钟同步信息中的精准时间戳字段和修正场字段的数值分别为:preciseorigintimestamp2=t1;correctionfield2=t2-t1。
107.以此类推,桥节点200记录发送第n帧第五时钟同步信息的当前发送时间tn,第n帧第五时钟同步信息中的精准时间戳字段和修正场字段的数值分别为:preciseorigintimestampn=t1;correctionfieldn=tn-t1。
108.通过以上内容可见,无论是第几帧第五时钟同步信息,第五时钟同步信息中的精准时间戳字段的数值均为发送第1帧第五时钟同步信息时所记录的时间t1。
109.以上内容是关于“启动异常情况”的处理措施的相关说明。
110.当发生执行异常情况时,桥节点200进入第一代理模式来继续维持时间同步;当发生启动异常情况时,桥节点200进入第二代理模式来继续维持时间同步。
111.桥节点200进入第一代理模式或第二代理模式后,如果桥节点200接收到主节点100发送的第一时钟同步信息,表征主节点100已恢复正常,此时桥节点200利用第一时钟同步信息更新桥节点200的本地时钟,并在一个发送时钟同步信息的周期(如125ms)内恢复原先的时间同步流程(也就是桥节点200将第二时钟同步信息发送给从节点300这一流程)。
112.也就是说,桥节点200进入第一代理模式或第二代理模式后,如果桥节点200接收到主节点100发送的第一时钟同步信息,桥节点200退出代理模式(如进入第一代理模式则退出第一代理模式,如进入第二代理模式则退出第二代理模式),桥节点200利用第一时钟同步信息更新桥节点200的本地时钟后,执行上述“将第二时钟同步信息发送给从节点300”这一原先的时间同步流程。从节点300在接收到第二时钟同步信息后,整车网络恢复成统一的绝对时间,切换过程中存在时间跳变,时间跳变的处理策略需根据汽车功能需求来决定,本方案在此不进行赘述。
113.以上各个实施例,是关于时间同步系统的相关说明;通过以上内容可见,本方案不再对全车网络进行分区同步,而是基于一个时钟信息来实现各类节点的时间同步,能够提高时间同步精度。全车网络的节点对其时钟信息,提升传感器数据融合的精确度和其它功能的可用性。当发生异常情况时,桥节点200进入第一代理模式或第二代理模式来使全车网络中仍然存在主时钟角色,保障全车网络内各节点的时间的一致性,异常情况解除后立即恢复原先的时间同步流程,能够有效降低异常情况对整车时间同步精度的影响。
114.与上述本发明实施例提供的一种时间同步系统相对应,参见图3,本发明实施例还提供了一种时间同步方法的流程图,该时间同步方法包括:
115.步骤s301:接收以太网通信链路中的主节点发送的第一时钟同步信息。
116.需要说明的是,第一时钟同步信息基于更新后的主节点的本地时钟生成,主节点的本地时钟基于gps模组发送的脉冲信号和utc时钟信息更新。
117.一些实施例中,主节点更新主节点的本地时钟的方式为:主节点在检测到由gps模组发送的脉冲信号的上升沿时,开始计时;主节点在接收到由gps模组发送的utc时钟信息时,停止计时并确定计时时间差;主节点利用utc时钟信息和计时时间差更新主节点的本地时钟。
118.步骤s302:利用第一时钟同步信息更新以太网通信链路中的桥节点的本地时钟。
119.步骤s303:将第二时钟同步信息发送给以太网通信链路中的从节点,使从节点利用第二时钟同步信息更新本地时钟后将第三时钟同步信息发送给can链路中的can节点,以使can节点基于第三时钟同步信息更新本地时钟。
120.需要说明的是,第二时钟同步信息基于更新后的桥节点的本地时钟生成,第三时钟同步信息基于更新后的从节点的本地时钟生成。
121.一些实施例中,通过桥节点的主端口将第二时钟同步信息发送给以太网通信链路中的从节点。
122.从节点将第三时钟同步信息发送给can节点的方式为:从节点将第三时钟同步信息封装到can通信报文中,并将can通信报文发送给can节点。
123.一些实施例中,在车辆运行过程中,若在预设超时时长内未接收到主节点发送的第一时钟同步信息,桥节点从最后一次接收到的第一时钟同步信息中提取第一时间戳;将第一时间戳和桥节点的本地时钟的计时信息封装到第四时钟同步信息中,并在第四时钟同步信息中累加修正场字段;将第四时钟同步信息发送给从节点,使从节点利用第四时钟同步信息更新本地时钟后将第三时钟同步信息发送给can节点。
124.另一些实施例中,在桥节点上电后,若在预设超时时长内未接收到主节点发送的第一时钟同步信息,桥节点记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,第五时钟同步信息基于桥节点的本地时钟生成;计算当前发送时间和第n帧第五时钟同步信息中的第二时间戳之间的时间差,第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;将该时间差作为修正场字段累加到第n帧第五时钟同步信息中,并将第n帧第五时钟同步信息发送给从节点,使从节点利用第五时钟同步信息更新本地时钟后将第三时钟同步信息发送给can节点。
125.步骤s301至步骤s303的执行原理,在上述关于“时间同步系统”的实施例中已有详细的说明,在此不再赘述。
126.综上所述,本发明实施例提供一种时间同步系统及方法,使车载混合网络中各个节点都采用相同时钟源来进行时间同步,从而提高时间同步精度。
127.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
128.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
129.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

技术特征:
1.一种时间同步系统,其特征在于,所述系统至少包括:以太网通信链路中的主节点、桥节点和从节点,以及控制器域网can链路中的can节点;所述主节点,用于基于由gps模组发送的脉冲信号和协调世界时utc时钟信息,更新所述主节点的本地时钟;并将第一时钟同步信息发送给所述桥节点,所述第一时钟同步信息基于更新后的所述主节点的本地时钟生成;所述桥节点,用于利用所述第一时钟同步信息更新所述桥节点的本地时钟,并将第二时钟同步信息发送给所述从节点,所述第二时钟同步信息基于更新后的所述桥节点的本地时钟生成;所述从节点,用于利用所述第二时钟同步信息更新所述从节点的本地时钟,并将第三时钟同步信息发送给所述can节点,所述第三时钟同步信息基于更新后的所述从节点的本地时钟生成;所述can节点,用于基于所述第三时钟同步信息更新所述can节点的本地时钟。2.根据权利要求1所述的系统,其特征在于,所述主节点具体用于:在检测到由gps模组发送的脉冲信号的上升沿时,开始计时;在接收到由所述gps模组发送的utc时钟信息时,停止计时并确定计时时间差;利用所述utc时钟信息和所述计时时间差更新所述主节点的本地时钟。3.根据权利要求1所述的系统,其特征在于,所述从节点具体用于:将第三时钟同步信息封装到can通信报文中,并将所述can通信报文发送给所述can节点。4.根据权利要求1所述的系统,其特征在于,所述桥节点具体用于:通过所述桥节点的主端口将第二时钟同步信息发送给所述从节点。5.根据权利要求1所述的系统,其特征在于,所述桥节点还用于:在车辆运行过程中,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,从最后一次接收到的所述第一时钟同步信息中提取第一时间戳;将所述第一时间戳和所述桥节点的本地时钟的计时信息封装到第四时钟同步信息中,并在所述第四时钟同步信息中累加修正场字段;将所述第四时钟同步信息发送给所述从节点;相应的,所述从节点还用于:利用所述第四时钟同步信息更新所述从节点的本地时钟,执行将第三时钟同步信息发送给所述can节点这一步骤。6.根据权利要求1所述的系统,其特征在于,所述桥节点还用于:在所述桥节点上电后,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,所述第五时钟同步信息基于所述桥节点的本地时钟生成;计算所述当前发送时间和所述第n帧第五时钟同步信息中的第二时间戳之间的时间差,所述第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;将所述时间差作为修正场字段累加到所述第n帧第五时钟同步信息中,并将所述第n帧第五时钟同步信息发送给所述从节点;相应的,所述从节点还用于:
利用接收到的所述第五时钟同步信息更新所述从节点的本地时钟,执行将第三时钟同步信息发送给所述can节点这一步骤。7.一种时间同步方法,其特征在于,所述方法包括:接收以太网通信链路中的主节点发送的第一时钟同步信息,其中,所述第一时钟同步信息基于更新后的所述主节点的本地时钟生成,所述主节点的本地时钟基于gps模组发送的脉冲信号和协调世界时utc时钟信息更新;利用所述第一时钟同步信息更新所述以太网通信链路中的桥节点的本地时钟;将第二时钟同步信息发送给所述以太网通信链路中的从节点,使所述从节点利用所述第二时钟同步信息更新本地时钟后将第三时钟同步信息发送给控制器域网can链路中的can节点,以使所述can节点基于所述第三时钟同步信息更新本地时钟,所述第二时钟同步信息基于更新后的所述桥节点的本地时钟生成,所述第三时钟同步信息基于更新后的所述从节点的本地时钟生成。8.根据权利要求7所述的方法,其特征在于,将第二时钟同步信息发送给所述以太网通信链路中的从节点,包括:通过所述桥节点的主端口将第二时钟同步信息发送给所述以太网通信链路中的从节点。9.根据权利要求7所述的方法,其特征在于,所述方法还包括:在车辆运行过程中,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,从最后一次接收到的所述第一时钟同步信息中提取第一时间戳;将所述第一时间戳和所述桥节点的本地时钟的计时信息封装到第四时钟同步信息中,并在所述第四时钟同步信息中累加修正场字段;将所述第四时钟同步信息发送给所述从节点,使所述从节点利用所述第四时钟同步信息更新本地时钟后将第三时钟同步信息发送给所述can节点。10.根据权利要求7所述的方法,其特征在于,所述方法还包括:在所述桥节点上电后,若在预设超时时长内未接收到所述主节点发送的所述第一时钟同步信息,记录当前发送第n帧第五时钟同步信息的当前发送时间,n为大于0的整数,所述第五时钟同步信息基于所述桥节点的本地时钟生成;计算所述当前发送时间和所述第n帧第五时钟同步信息中的第二时间戳之间的时间差,所述第二时间戳为发送第1帧第五时钟同步信息时所记录的时间;将所述时间差作为修正场字段累加到所述第n帧第五时钟同步信息中,并将所述第n帧第五时钟同步信息发送给所述从节点,使所述从节点利用所述第五时钟同步信息更新本地时钟后将第三时钟同步信息发送给所述can节点。

技术总结
本发明提供了一种时间同步系统及方法,该系统包括:以太网通信链路中的主节点、桥节点和从节点,以及CAN链路中的CAN节点。主节点基于由GPS模组发送的脉冲信号和UTC时钟信息更新本地时钟,并将第一时钟同步信息发送给桥节点;桥节点利用第一时钟同步信息更新本地时钟,并将第二时钟同步信息发送给从节点;从节点利用第二时钟同步信息更新本地时钟,并将第三时钟同步信息发送给CAN节点;CAN节点基于第三时钟同步信息更新本地时钟。本方案使车载混合网络中各个节点都采用相同时钟源来进行时间同步,从而提高时间同步精度。从而提高时间同步精度。从而提高时间同步精度。


技术研发人员:张雨萌
受保护的技术使用者:北京经纬恒润科技股份有限公司
技术研发日:2023.03.28
技术公布日:2023/7/25
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐