CN109981206B - 对时方法、装置、系统及终端设备、存储介质 - Google Patents
对时方法、装置、系统及终端设备、存储介质 Download PDFInfo
- Publication number
- CN109981206B CN109981206B CN201910142354.2A CN201910142354A CN109981206B CN 109981206 B CN109981206 B CN 109981206B CN 201910142354 A CN201910142354 A CN 201910142354A CN 109981206 B CN109981206 B CN 109981206B
- Authority
- CN
- China
- Prior art keywords
- time
- time synchronization
- ecu
- request message
- vehicle gateway
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
Abstract
本申请实施例适用于时钟技术领域,公开了一种对时方法、装置、系统及终端设备、计算机可读存储介质。方法包括:ECU向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间;在车辆网关设备接收对时请求报文,向ECU返回所生成的对时响应报文之后,ECU接收对时响应报文,并记录对时响应报文的第一到达时间;ECU根据第一发送时间、第一到达时间、接收时间信息以及发送时间信息,计算ECU和车辆网关设备之间的时间偏差,并调整本地时钟;车辆网关设备分别与至少一个ECU通信连接,车辆网关设备包括硬件时钟源,并周期性地与上级时钟源对时。本申请实施例提供的混合时钟同步机制可以提高时钟同步机制的适用性。
Description
技术领域
本申请属于时钟技术领域,尤其涉及一种对时方法、装置、系统及终端设备、计算机可读存储介质。
背景技术
随着技术的不断发展,整车运动控制对时钟的精确度的要求也越来越高。
目前,汽车、电动摩托车等车辆中一般包括一个或多个电子控制单元(ElectronicControl Unit,ECU),该电子控制单元又可以称为“行车电脑”或“车载电脑”,多个ECU一般通过CAN总线连接。根据时钟同步的机制,时钟同步实现方法大体包括硬件时钟同步以及软件时钟同步。不论是硬件时钟还是软件时钟,都是由晶振驱动的,通过累计晶振输出脉冲数,换算成时间。所以时钟的准确度取决于晶振频率准确度。尽管每个ECU都可能配备RTC电路,但是受温度变化、电压、芯片老化、生产工艺等因素影响,实际频率与标称频率是有偏差的。时钟频率偏差长期计时累积是造成时间不同步的主要原因。各个总线节点不管是否自带RTC电路,长时间运行的累积效果一定会造成ECU之间的时间存在偏差,所以必须周期性进行对时才能保证ECU之间的时间一致性。
硬件时钟同步方法需要借助硬件设施,例如GPS接收器、UTC接收器、专用时钟信号线路等,以进行局部时钟同步,该方法的精度较高(大约在10-9S~10-6S之间),但需要额外的硬件成本。而软件时钟同步方法是指利用软件算法在节点之间同步,成本相对低,但算法复杂度高,且由于传输的延迟,精度一般比硬件时钟同步机制低,大概在10-6S~10-3S之间。那么,而对于一些精度要求一般,成本一般的情况来说,如果只采用硬件时钟同步机制,由于ECU的数量较多导致硬件成本很高,而如果只采用软件时钟同步机制,精度又达不到要求,也就是说,目前的时钟同步方法的适用性较差。
发明内容
有鉴于此,本申请实施例提供一种对时方法、装置、系统及终端设备、计算机可读存储介质,以解决现有时钟同步方法的适用性较差的问题。
本申请实施例的第一方面提供一种对时方法,包括:
ECU向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
在所述车辆网关设备接收所述对时请求报文,向所述ECU返回所生成的对时响应报文之后,所述ECU接收所述对时响应报文,并记录所述对时响应报文的第一到达时间;其中,所述对时响应报文包括所述对时请求报文的接收时间信息和所述对时响应报文的发送时间信息;
所述ECU根据所述第一发送时间、第一到达时间、所述接收时间信息以及所述发送时间信息,计算所述ECU和所述车辆网关设备之间的时间偏差;
所述ECU根据所述时间偏差,调整本地时钟;
其中,所述车辆网关设备分别与至少一个所述ECU通信连接,所述车辆网关设备与上级时钟源通信连接;所述车辆网关设备包括硬件时钟源,并周期性地与所述上级时钟源对时。
结合第一方面,在一种可行的实现方式中,所述接收时间信息为所述对时请求报文的第二到达时间,所述发送时间信息为所述对时响应报文的第二发送时间;
根据所述第一发送时间、第一到达时间、所述接收时间信息以及所述发送实时间信息,计算所述ECU和所述车辆网关设备之间的时间偏差,包括:
计算所述第二到达时间和所述第一发送时间之间的第一差值;
计算所述第一到达时间和所述第二发送时间之间的第二差值;
计算二分之一所述第一差值和二分之一第二差值之间的第三差值,所述第三差值为所述ECU和所述车辆网关设备之间的时间偏差。
结合第一方面,在一种可行的实现方式中,所述对时请求报文和所述对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
结合第一方面,在一种可行的实现方式中,所述接收时间信息为所述对时请求报文的第三到达时间,所述发送时间信息包括所述第三到达时间、所述第三到达时间的毫秒数以及应答时延;
根据所述第一发送时间、第一到达时间、所述接收时间信息以及所述发送实时间信息,计算所述ECU和所述车辆网关设备之间的时间偏差,包括:
将所述第三到达时间、所述第三到达时间的毫秒数以及所述应答时延相加,得到所述对时响应报文的第三发送时间;
计算所述第三到达时间和所述第一发送时间之间的第四差值;
计算所述第一到达时间和所述第三发送时间之间的第五差值;
计算二分之一所述第四差值和二分之一第五差值之间的第六差值,所述第六差值为所述ECU和所述车辆网关设备之间的时间偏差。
结合第一方面,在一种可行的实现方式中,所述对时请求报文和所述对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现。
结合第一方面,在一种可行的实现方式中,在所述ECU向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间之前,还包括:
接收报文优先级设置信息;
根据所述优先级设置信息,设置所述对时请求报文和所述对时响应报文的传输优先级。
本申请实施例的第二方面提供一种对时装置,包括:
对时请求报文发送模块,用于向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
对时响应报文接收模块,用于在所述车辆网关设备接收所述对时请求报文,向ECU返回所生成的对时响应报文之后,接收所述对时响应报文,并记录所述对时响应报文的第一到达时间;其中,所述对时响应报文包括所述对时请求报文的接收时间信息和所述对时响应报文的发送时间信息;
时间偏差计算模块,用于根据所述第一发送时间、第一到达时间、所述接收时间信息以及所述发送时间信息,计算所述ECU和所述车辆网关设备之间的时间偏差;
时钟调整模块,用于根据所述时间偏差,调整本地时钟;
其中,所述车辆网关设备分别与至少一个所述ECU通信连接,所述车辆网关设备与上级时钟源通信连接;所述车辆网关设备包括硬件时钟源,并周期性地与所述上级时钟源对时。
结合第二方面,在一种可行的实现方式中,所述接收时间信息为所述对时请求报文的第二到达时间,所述发送时间信息为所述对时响应报文的第二发送时间;
所述时间偏差计算模块包括:
第一计算单元,用于计算所述第二到达时间和所述第一发送时间之间的第一差值;
第二计算单元,用于计算所述第一到达时间和所述第二发送时间之间的第二差值;
第三计算单元,用于计算二分之一所述第一差值和二分之一第二差值之间的第三差值,所述第三差值为所述ECU和所述车辆网关设备之间的时间偏差。
结合第二方面,在一种可行的实现方式中,所述对时请求报文和所述对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
结合第二方面,在一种可行的实现方式中,所述接收时间信息为所述对时请求报文的第三到达时间,所述发送时间信息包括所述第三到达时间、所述第三到达时间的毫秒数以及应答时延;
所述时间偏差计算模块包括:
相加单元,用于将所述第三到达时间、所述第三到达时间的毫秒数以及所述应答时延相加,得到所述对时响应报文的第三发送时间;
第四计算单元,用于计算所述第三到达时间和所述第一发送时间之间的第四差值;
第五计算单元,用于计算所述第一到达时间和所述第三发送时间之间的第五差值;
第六计算单元,用于计算二分之一所述第四差值和二分之一第五差值之间的第六差值,所述第六差值为所述ECU和所述车辆网关设备之间的时间偏差。
结合第二方面,在一种可行的实现方式中,所述对时请求报文和所述对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现。
结合第二方面,在一种可行的实现方式中,还包括:
设置信息接收模块,用于接收报文优先级设置信息;
优先级设置模块,用于根据所述优先级设置信息,设置所述对时请求报文和所述对时响应报文的传输优先级。
本申请实施例的第三方面提供一种对时系统,包括车辆网关设备、与所述车辆网关设备通信连接的至少一个ECU以及与所述车辆网关设备通信连接的上级时钟源;所述车辆网关设备包括硬件时钟源,周期性地与所述上级时钟源进行对时;
所述ECU用于向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
所述车辆网关设备用于接收所述对时请求报文,向所述ECU返回所生成的对时响应报文;其中,所述对时响应报文包括所述对时请求报文的接收时间信息和所述对时响应报文的发送时间信息;
所述ECU还用于接收所述对时响应报文,并记录所述对时响应报文的第一到达时间;根据所述第一发送时间、第一到达时间、所述接收时间信息以及所述发送时间信息,计算所述ECU和所述车辆网关设备之间的时间偏差;根据所述时间偏差,调整本地时钟。
本申请实施例的第四方面提供一种终端设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面任一项所述方法的步骤。
本申请实施例第五方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面任一项所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:
本申请实施例通过将硬件时钟同步机制和软件时钟同步机制结合,对车辆的ECU进行时钟同步,即通过混合时钟同步机制对各ECU进行时钟同步,相较于硬件时钟同步机制,其只需在车辆网关设备设置硬件时钟源,不用在各个ECU设置硬件时钟源,硬件成本较低,而相较于软件时钟同步机制,其精度较高,从而使得混合时钟同步机制的应用范围较大,适用性较高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种对时系统的结构示意框图;
图2为本申请实施例提供的对时方法的一种流程示意框图;
图3为本申请实施例提供的计算时间偏差的一种流程示意框图;
图4为本申请实施例提供的对时原理示意图;
图5为本申请实施例提供的计算时间偏差的另一种流程示意框图;
图6为本申请实施例提供的一种对时装置的结构示意框图
图7为本申请实施例提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
实施例一
请参见图1,为本申请实施例提供的一种对时系统的结构示意框图,该系统包括车辆网关设备11、与车辆网关设备通信连接的至少一个ECU12以及与车辆网关设备通信连接的上级时钟源13;车辆网关设备包括硬件时钟源,周期性地与上级时钟源进行对时。
其中,ECU用于向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间;车辆网关设备用于接收对时请求报文,向ECU返回所生成的对时响应报文;其中,对时响应报文包括对时请求报文的接收时间信息和对时响应报文的发送时间信息;ECU还用于接收对时响应报文,并记录对时响应报文的第一到达时间;根据第一发送时间、第一到达时间、接收时间信息以及发送时间信息,计算ECU和车辆网关设备之间的时间偏差;根据时间偏差,调整本地时钟。
可以理解,车辆网关设备内设置硬件时钟源,其具体包括RTC电路和对时接收器,该对时接收器可以为但不限于GPS接收器、UTC接收器、专用时钟信号线路等。车辆网关设备通过GPS接收器等获取上级时钟源的时间,并通过自身的RTC电路计算本地时间,并且每隔一定周期之后,通过GPS接收器与上级时钟源对时,校准本地的RTC电路的时间,以保证车辆网关设备的时间与上级时钟源同步。
其中,车辆网关设备分别与至少一个ECU通信连接,车辆网关设备与ECU之间可以通过CAN总线连接,一般情况下,车辆只有一条CAN总线,例如,电动摩托车,但汽车也有可能包括多条CAN总线。
需要说明,车辆网关设备设置硬件时钟源,而各个ECU则没有设置硬件时钟源,各个ECU通过对时报文周期性地与车辆网关设备对时。而在单纯的硬件时钟同步机制下,车辆网关设备和各个ECU均需要设置单独的硬件时钟源。相较之下,混合时钟同步机制的硬件成本较低,而又比单纯的软件时钟同步机制的精度要高。这样,则可以将时钟同步机制应用至在一些精度需要一般、硬件成本一般的情况,提高了时钟同步机制的适用性。
可以看出,本实施例的混合时钟同步机制提高了时钟同步机制的适用性。
实施例二
在介绍完对时系统的架构之后,本实施例将从ECU端介绍对时方法的具体流程。
请参见图2,为本申请实施例提供的对时方法的一种流程示意框图,该方法可以包括以下步骤:
步骤S201、ECU向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间。其中,车辆网关设备分别与至少一个ECU通信连接,车辆网关设备与上级时钟源通信连接;车辆网关设备包括硬件时钟源,并周期性地与上级时钟源对时。
需要说明,上述第一发送时间是指ECU所生成的对时请求报文离开ECU时的时间,该发送时间的记录具体可以通过时间戳登记实现。而各个ECU可以单独地、周期性地与车辆网关设备进行对时。
步骤S202、在车辆网关设备接收对时请求报文,向ECU返回所生成的对时响应报文之后,ECU接收对时响应报文,并记录对时响应报文的第一到达时间;其中,对时响应报文包括对时请求报文的接收时间信息和对时响应报文的发送时间信息。
具体地,车辆网关设备接收到ECU的对时请求报文,并同时记录该对时请求报文的接收时间,然后根据对时请求报文执行应答操作,生成相应的对时响应报文,并将所记录的对时请求报文的接收时间信息和对时响应报文的发送时间信息填入至对时响应报文,并立即将对时响应报文返回ECU。
需要说明,上述对时请求报文的接收时间信息可以具体表现为对时请求报文的接收时间,对时响应报文的发送时间信息可以具体表现为对时响应报文的发送时间。即在对时响应报文中直接填入对时请求报文的接收时间和对时响应报文的发送时间。这样,ECU在接收到对时响应报文之后,通过解析该响应报文,可以直接获得对时请求报文的接收时间和对时响应报文的发送时间。
当然,在上述对时请求报文的接收时间信息为对时请求报文的接收时间时,上述对时响应报文的发送时间信息可以包括对时请求报文的接收时间(精确到秒)、对时请求报文的接收时间的毫秒数以及应答时延。其中,该应答时延是指车辆网关设备接收对时请求报文至发送对时响应报文之间的时长,由于车辆网关设备知道对时请求报文的接收时间和对时响应报文的发送时间,故可以将对时响应报文的发送时间减去对时请求报文的接收时间,以得该应答时延。当ECU接收到该响应报文之后,通过解析该报文获得对时请求报文的接收时间、对时请求报文的接收时间的毫秒数以及应答时延,将这三者相加即可得到对时响应报文的发送时间。
同理,在所述对时响应报文的发送时间信息为对时响应报文的发送时间时,上述对时请求报文的接收时间信息可以包括对时响应报文的发送时间(精确到秒)、对时响应报文的发送时间的毫秒数和应答时延。
步骤S203、ECU根据第一发送时间、第一到达时间、接收时间信息以及发送时间信息,计算ECU和车辆网关设备之间的时间偏差。
步骤S204、ECU根据时间偏差,调整本地时钟。
具体地,ECU接收到对时响应报文,通过解析对时响应报文,获得对时请求报文的接收时间信息和对时响应报文的发送时间信息,再结合自身记录的第一发送时间、第一到达时间,则可以计算出ECU与车辆网关设备之间的时间偏差值,根据该时间偏差值相应地调整本地时钟。
需要说明,当对时响应报文所携带的信息不同时,上述时间偏差的计算过程也可以相应的不同。
在一些实施例中,对时响应报文的接收时间信息为对时请求报文的第二到达时间,发送时间信息为对时响应报文的第二发送时间。此时,参见图3所示的计算时间偏差的一种流程示意框图,上述根据第一发送时间、第一到达时间、接收时间信息以及发送实时间信息,计算ECU和车辆网关设备之间的时间偏差具体包括:
步骤S301、计算第二到达时间和第一发送时间之间的第一差值。
步骤S302、计算第一到达时间和第二发送时间之间的第二差值。
步骤S303、计算二分之一第一差值和二分之一第二差值之间的第三差值,第三差值为ECU和车辆网关设备之间的时间偏差。
为了便于表述,以T1表示上述第一发送时间,T2表示上述第二到达时间,T3表示上述第二发送时间,T4表示上述第一到达时间,t表示上述时间偏差。并结合图4所示的对时原理示意图进行介绍说明。
如图4所示,包括ECU和车辆网关设备两条时间轴,ECU和车辆网关设备之间可能存在时间偏差,故两条时间轴上同一点对应时间可能不同。图4中的ECU上的时间为T1时,对应车辆网关设备上的时间为T1+t,车辆网关设备上的时间为T3时,对应ECU上的时间为T3-t。其具体过程可以为:ECU向车辆网关设备发送对时请求报文时,ECU上的时间为T1,而车辆网关设备上的时间为T1+t;车辆网关设备接收对时请求报文时,车辆网关设备上的时间为T2;然后,车辆网关设备执行应答操作,生成对时响应报文,在该对时响应报文填入相应的信息,并将立即将该报文返回给ECU,此时,车辆网关设备上的时间为T3,而对应ECU上的时间为T3-t;最后,ECU接收到该对时响应报文时,ECU上的时间为T4。其中,T1、T2、T3、T4均已经知道,需要求出时间偏差t。
基于图4的关系,考虑到报文传输过程可能出现时延,以d1和d2分别表示对时请求报文的传输时延和对时响应报文的传输时延。可以得到如下等式:
T2=T1+t+d1
T4=T3-t+d2
d=d1+d2
其中,T2为第二到达时间,T1为第一发送时间,t为时间偏差;T4为第一到达时间,T3为第二发送时间,d为总传输时延;在不考虑其他因素的情况下,对时请求报文和对时响应报文的传输时延相等,即d1=d2。
联立三个等式,可以得到:
d=(T2-T1)+(T4-T3)
由此可见,时间偏差t和传输时延d只与T2、T1的差值和T4、T3的差值相关,而与T2、T3的差值无关,即与车辆网关设备处理请求所需的时间无关。基于上述等式,即可根据T1、T2、T3、T4,计算ECU与车辆网关设备之间的时间偏差t。
ECU自身记录有对时请求报文的发送时间T1和对时响应报文的接收时间T4,车辆网关设备将对时请求报文的接收时间T2和对时响应报文的发送实际T3填入至对时响应报文中。ECU可以通过解析对时响应报文,获得T2和T3。然后,ECU则可以根据T1、T2、T3、T4与t的关系,求出时间偏差t。
一般情况下,车辆网关设备可以直接在报文中填入T2和T3的值,ECU通过解析报文即可直接获得T2和T3。但是,此时的T2和T3一般是精确到秒级的。当然,在CAN报文的有效数据长度没有限制的情况下,在响应报文中填入的T2和T3的值可以精确到毫秒级,甚至于更小。但是,如果CAN报文的有效数据长度过长,在数据传输时可能需要以数据包的形式发送,这样则需要进行拆包、组包等操作,相较于单帧传输,多帧传输的传输时延更高。
为了减少多帧传输延迟对精度的影响,在一些实施例中,可以使得CAN报文的有效数据长度小于或等于8个字节,且对时协议为CAN单帧格式,以降低传输时延。而一般情况下,T2和T3精确到秒级的数据各占4个字节,在尽快能降低传输时延的情况,假如在对时报文中直接填入T2和T3的值,对时精度只能精确到秒级。
此时,为了进一步提供对时精度,以使得对时精度精确到毫秒级,可以用于对时请求报文的接收时间、对时响应报文的发送时间以及应答时延表示T3的值。
在另一些实施例中,对时响应报文中的接收时间信息为对时请求报文的第三到达时间,发送时间信息包括第三到达时间、第三到达时间的毫秒数以及应答时延。其中,上述第三到达时间是指对时请求报文的接收时间,还用T2表示,对时响应报文的发送时间为第三发送时间,还用T3表示。此时,在对时响应报文中填入的为T2(精确到秒级)、T2的毫秒级数和应答时延,分别占4个字节、2个字节和2个字节。其中,应答时延由车辆网关设备计算得出,具体为图4中的T2至T3的时间段。
参见图5所示的计算时间偏差的另一种流程示意框图,上述根据第一发送时间、第一到达时间、接收时间信息以及发送实时间信息,计算ECU和车辆网关设备之间的时间偏差的具体过程包括:
步骤S501、将第三到达时间、第三到达时间的毫秒数以及应答时延相加,得到对时响应报文的第三发送时间。
步骤S502、计算第三到达时间和第一发送时间之间的第四差值。
步骤S503、计算第一到达时间和第三发送时间之间的第五差值。
步骤S504、计算二分之一第四差值和二分之一第五差值之间的第六差值,第六差值为ECU和车辆网关设备之间的时间偏差。
其中,第三到达时间用T2表示,第三发送时间用T3表示。
具体地,ECU在接收到对时响应报文之后,解析该响应报文,得到T2的值,以及T2的毫秒级数和应答时延,将T2的值加上T2的毫秒级数即可将T2的精度由秒级提升至毫秒级。然后,再将T2、T2的毫秒数和应答时延三者相加,得到T3的值,T3的值精确到毫秒级。在得到T2和T3的值之后,再计算出时间偏差t,具体计算过程和上述步骤S301至步骤S303相同,在此不再赘述。
同理,对时响应报文中也可以填入T3的值、T3的毫秒级数和应答时延,然后再根据T3计算出T2。
可见,在CAN报文的有效数据长度小于或等于8个字节的情况下,通过此方法可以进一步提高对时的精度。
一般情况下,对时请求报文和对时响应报文的时间记录是通过时间戳登记实现的。而时间戳盖戳的动作一般是由CAN总线的应用层执行。但为了减少任务调度引入的时延,使得时间戳盖戳动作应尽量接近于真实收发时刻,可以将盖戳动作由应用层移动至CAN的驱动层实现,即时间戳盖戳动作由CAN总线的驱动层实现。
为了进一步降低传输时延,使得d1=d2。可以提供报文传输的优先级,这样在总线负载较高时,对时报文可以获得总线仲裁成功,保证传输的实时性。故在一些实施例中,在上述ECU向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间之前,还可以包括:接收报文优先级设置信息;根据优先级设置信息,设置对时请求报文和对时响应报文的传输优先级。
可以理解,报文优先级可以人为设定,其优先级高低可以根据需要进行设定,在此不作限定。
本实施例中,通过将硬件时钟同步机制和软件时钟同步机制结合,对车辆的ECU进行时钟同步,即通过混合时钟同步机制对各ECU进行时钟同步,相较于硬件时钟同步机制,其只需在车辆网关设备设置硬件时钟源,不用在各个ECU设置硬件时钟源,硬件成本较低,而相较于软件时钟同步机制,其精度较高,从而使得混合时钟同步机制的应用范围较大,适用性较高。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例三
请参见图6,为本申请实施例提供的一种对时装置的结构示意框图,该装置可以包括:
对时请求报文发送模块61,用于向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间;
对时响应报文接收模块62,用于在车辆网关设备接收对时请求报文,向ECU返回所生成的对时响应报文之后,接收对时响应报文,并记录对时响应报文的第一到达时间;其中,对时响应报文包括对时请求报文的接收时间信息和对时响应报文的发送时间信息;
时间偏差计算模块63,用于根据第一发送时间、第一到达时间、接收时间信息以及发送时间信息,计算ECU和车辆网关设备之间的时间偏差;
时钟调整模块64,用于根据时间偏差,调整本地时钟;
其中,车辆网关设备分别与至少一个ECU通信连接,车辆网关设备与上级时钟源通信连接;车辆网关设备包括硬件时钟源,并周期性地与上级时钟源对时。
在一种可行的实现方式中,接收时间信息为对时请求报文的第二到达时间,发送时间信息为对时响应报文的第二发送时间;
上述时间偏差计算模块包括:
第一计算单元,用于计算第二到达时间和第一发送时间之间的第一差值;
第二计算单元,用于计算第一到达时间和第二发送时间之间的第二差值;
第三计算单元,用于计算二分之一第一差值和二分之一第二差值之间的第三差值,第三差值为ECU和车辆网关设备之间的时间偏差。
在一种可行的实现方式中,对时请求报文和对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
在一种可行的实现方式中,接收时间信息为对时请求报文的第三到达时间,发送时间信息包括第三到达时间、第三到达时间的毫秒数以及应答时延;
上述时间偏差计算模块包括:
相加单元,用于将第三到达时间、第三到达时间的毫秒数以及应答时延相加,得到对时响应报文的第三发送时间;
第四计算单元,用于计算第三到达时间和第一发送时间之间的第四差值;
第五计算单元,用于计算第一到达时间和第三发送时间之间的第五差值;
第六计算单元,用于计算二分之一第四差值和二分之一第五差值之间的第六差值,第六差值为ECU和车辆网关设备之间的时间偏差。
在一种可行的实现方式中,对时请求报文和对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现。
在一种可行的实现方式中,上述装置还包括:
设置信息接收模块,用于接收报文优先级设置信息;
优先级设置模块,用于根据优先级设置信息,设置对时请求报文和对时响应报文的传输优先级。
本实施例中,通过将硬件时钟同步机制和软件时钟同步机制结合,对车辆的ECU进行时钟同步,即通过混合时钟同步机制对各ECU进行时钟同步,相较于硬件时钟同步机制,其只需在车辆网关设备设置硬件时钟源,不用在各个ECU设置硬件时钟源,硬件成本较低,而相较于软件时钟同步机制,其精度较高,从而使得混合时钟同步机制的应用范围较大,适用性较高。
实施例四
图7是本申请一实施例提供的终端设备的示意图。如图7所示,该实施例的终端设备7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72。所述处理器70执行所述计算机程序72时实现上述各个对时方法实施例中的步骤,例如图2所示的步骤S201至S204。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各模块或单元的功能,例如图6所示模块61至64的功能。
示例性的,所述计算机程序72可以被分割成一个或多个模块或单元,所述一个或者多个模块或单元被存储在所述存储器71中,并由所述处理器70执行,以完成本申请。所述一个或多个模块或单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端设备7中的执行过程。例如,所述计算机程序72可以被分割成对时请求报文发送模块、对时响应报文接收模块、时间偏差计算模块以及时钟调整模块,各模块具体功能如下:
对时请求报文发送模块,用于向车辆网关设备发送对时请求报文,并记录对时请求报文的第一发送时间;对时响应报文接收模块,用于在车辆网关设备接收对时请求报文,向ECU返回所生成的对时响应报文之后,接收对时响应报文,并记录对时响应报文的第一到达时间;其中,对时响应报文包括对时请求报文的接收时间信息和对时响应报文的发送时间信息;时间偏差计算模块,用于根据第一发送时间、第一到达时间、接收时间信息以及发送时间信息,计算ECU和车辆网关设备之间的时间偏差;时钟调整模块,用于根据时间偏差,调整本地时钟。
所述终端设备7为ECU设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置、终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置、终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块或单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (6)
1.一种对时方法,其特征在于,包括:
ECU向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
在所述车辆网关设备接收所述对时请求报文,向所述ECU返回所生成的对时响应报文之后,所述ECU接收所述对时响应报文,并记录所述对时响应报文的第一到达时间;其中,所述对时响应报文包括所述对时请求报文的第三到达时间、所述第三到达时间的毫秒数以及应答时延;
将所述第三到达时间、所述第三到达时间的毫秒数以及所述应答时延相加,得到所述对时响应报文的第三发送时间;
计算所述第三到达时间和所述第一发送时间之间的第四差值;
计算所述第一到达时间和所述第三发送时间之间的第五差值;
计算二分之一所述第四差值和二分之一第五差值之间的第六差值,所述第六差值为所述ECU和所述车辆网关设备之间的时间偏差;
所述ECU根据所述时间偏差,调整本地时钟;
其中,所述车辆网关设备分别与至少一个所述ECU通信连接,所述车辆网关设备与上级时钟源通信连接;所述车辆网关设备包括硬件时钟源,并周期性地与所述上级时钟源对时,所述ECU不包括硬件时钟源;
所述对时请求报文和所述对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现;
所述对时请求报文和所述对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
2.根据权利要求1所述的对时方法,其特征在于,在所述ECU向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间之前,还包括:
接收报文优先级设置信息;
根据所述优先级设置信息,设置所述对时请求报文和所述对时响应报文的传输优先级。
3.一种对时装置,其特征在于,包括:
对时请求报文发送模块,用于向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
对时响应报文接收模块,用于在所述车辆网关设备接收所述对时请求报文,向ECU返回所生成的对时响应报文之后,接收所述对时响应报文,并记录所述对时响应报文的第一到达时间;其中,所述对时响应报文包括所述对时请求报文的第三到达时间、所述第三到达时间的毫秒数以及应答时延;
时间偏差计算模块,用于将所述第三到达时间、所述第三到达时间的毫秒数以及所述应答时延相加,得到所述对时响应报文的第三发送时间;计算所述第三到达时间和所述第一发送时间之间的第四差值;计算所述第一到达时间和所述第三发送时间之间的第五差值;计算二分之一所述第四差值和二分之一第五差值之间的第六差值,所述第六差值为所述ECU和所述车辆网关设备之间的时间偏差;
时钟调整模块,用于根据所述时间偏差,调整本地时钟;
其中,所述车辆网关设备分别与至少一个所述ECU通信连接,所述车辆网关设备与上级时钟源通信连接;所述车辆网关设备包括硬件时钟源,并周期性地与所述上级时钟源对时,所述ECU不包括硬件时钟源;
所述对时请求报文和所述对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现;
所述对时请求报文和所述对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
4.一种对时系统,其特征在于,包括车辆网关设备、与所述车辆网关设备通信连接的至少一个ECU以及与所述车辆网关设备通信连接的上级时钟源;所述车辆网关设备包括硬件时钟源,周期性地与所述上级时钟源进行对时,所述ECU不包括硬件时钟源;
所述ECU用于向车辆网关设备发送对时请求报文,并记录所述对时请求报文的第一发送时间;
所述车辆网关设备用于接收所述对时请求报文,向所述ECU返回所生成的对时响应报文,并记录所述对时响应报文的第一到达时间;其中,所述对时响应报文包括所述对时请求报文的第三到达时间、所述第三到达时间的毫秒数以及应答时延;
所述ECU还用于将所述第三到达时间、所述第三到达时间的毫秒数以及所述应答时延相加,得到所述对时响应报文的第三发送时间;计算所述第三到达时间和所述第一发送时间之间的第四差值;计算所述第一到达时间和所述第三发送时间之间的第五差值;计算二分之一所述第四差值和二分之一第五差值之间的第六差值,所述第六差值为所述ECU和所述车辆网关设备之间的时间偏差;根据所述时间偏差,调整本地时钟;
所述对时请求报文和所述对时响应报文的接收时间、发送时间的记录均通过时间戳登记实现,其中,时间戳盖戳动作由CAN总线的驱动层实现;
所述对时请求报文和所述对时响应报文的有效数据均小于或等于8字节,且均为单帧格式。
5.一种终端设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至2任一项所述方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至2任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910142354.2A CN109981206B (zh) | 2019-02-26 | 2019-02-26 | 对时方法、装置、系统及终端设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910142354.2A CN109981206B (zh) | 2019-02-26 | 2019-02-26 | 对时方法、装置、系统及终端设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109981206A CN109981206A (zh) | 2019-07-05 |
CN109981206B true CN109981206B (zh) | 2021-01-26 |
Family
ID=67077433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910142354.2A Active CN109981206B (zh) | 2019-02-26 | 2019-02-26 | 对时方法、装置、系统及终端设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981206B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023001342A1 (de) * | 2021-07-20 | 2023-01-26 | Continental Automotive Technologies GmbH | Verfahren zur weitergabe einer synchronisationsinformation in einer kommunikationsvorrichtung, kommunikationsvorrichtung und fahrzeug |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111601189B (zh) * | 2020-04-30 | 2022-01-25 | 云南电网有限责任公司迪庆供电局 | 一种应用于电缆测距装置的精确对时方法及系统 |
CN113746588A (zh) * | 2021-08-26 | 2021-12-03 | 中国舰船研究设计中心 | 一种基于以太网网络的设备时钟误差检测方法 |
CN114489237A (zh) * | 2021-12-24 | 2022-05-13 | 北京万集科技股份有限公司 | 时间同步方法、控制系统及计算机可读存储介质 |
CN117639991A (zh) * | 2023-11-14 | 2024-03-01 | 小米汽车科技有限公司 | 车辆的时间同步方法及其装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737006A (zh) * | 2018-05-30 | 2018-11-02 | 南京南瑞继保电气有限公司 | 一种时间同步方法、客户端及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103093059B (zh) * | 2013-02-05 | 2015-08-05 | 中国电子科技集团公司电子科学研究院 | 一种实时高效的分布式半实物仿真系统构建方法 |
JP2015035158A (ja) * | 2013-08-09 | 2015-02-19 | ルネサスエレクトロニクス株式会社 | データ処理システム |
CN106341218A (zh) * | 2015-07-06 | 2017-01-18 | 北京东土军悦科技有限公司 | 一种基于windows操作系统的时钟同步方法及装置 |
CN106788836B (zh) * | 2016-04-06 | 2019-09-06 | 新华三技术有限公司 | 一种系统时间的同步方法及装置 |
-
2019
- 2019-02-26 CN CN201910142354.2A patent/CN109981206B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737006A (zh) * | 2018-05-30 | 2018-11-02 | 南京南瑞继保电气有限公司 | 一种时间同步方法、客户端及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
基于CAN总线时钟同步机制的研究;谢经明等;《计算机工程与应用》;20051111;第2-3节 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023001342A1 (de) * | 2021-07-20 | 2023-01-26 | Continental Automotive Technologies GmbH | Verfahren zur weitergabe einer synchronisationsinformation in einer kommunikationsvorrichtung, kommunikationsvorrichtung und fahrzeug |
Also Published As
Publication number | Publication date |
---|---|
CN109981206A (zh) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981206B (zh) | 对时方法、装置、系统及终端设备、存储介质 | |
KR20150143801A (ko) | 타임스탬프를 생성하는 방법, 장치, 그리고 시스템 | |
EP1427121A1 (en) | Radio access network, radio communication method, synchronous server and node | |
CN111585682B (zh) | 传感器时间同步方法、装置及终端设备 | |
US11979481B2 (en) | Time synchronisation | |
CN109687931B (zh) | 用于移动网络的授时方法、设备及可读存储介质 | |
CN103546268A (zh) | 一种系统时间的补偿方法及设备 | |
CN105610727A (zh) | 一种网络数据传输方法及装置 | |
CN107566794B (zh) | 一种视频数据的处理方法、系统及终端设备 | |
CN111130674B (zh) | 汽车电子控制单元信号同步采集方法、电子设备、服务器及存储介质 | |
CN112034811A (zh) | 控制器诊断装置及方法 | |
CN108768573B (zh) | 一种时钟同步方法及装置 | |
KR101847366B1 (ko) | 시각 동기 장치 및 시각 동기 시스템 | |
US20090109954A1 (en) | Method and arrangement for transferring a time of day value between network elements | |
JP2001324584A (ja) | 時刻同期装置、時刻同期システム及び時刻同期装置の制御方法 | |
EP0873019A2 (en) | Device and method for transmitting digital audio and video data | |
CN116566534A (zh) | 时间的同步方法、装置、车辆和可读存储介质 | |
CN116015523A (zh) | 一种时间同步的方法、装置及电子设备 | |
US20150106647A1 (en) | Method and a Device for Maintaining a Synchronized Local Timer Using a Periodic Signal | |
CN112740579B (zh) | 数据传输方法、装置及相关设备 | |
CN114928425A (zh) | 终端设备对时同步系统、方法、设备及存储介质 | |
CN113259039A (zh) | 时间同步方法、装置、计算机设备和存储介质 | |
CN111464772A (zh) | 对录制视频设置时间戳的方法、装置及车辆 | |
CN115225775B (zh) | 多通道的延迟修正方法、装置、计算机设备 | |
CN115085851B (zh) | 车载ecu时间同步方法、装置、车载ecu及存储介质 |
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 |