CN117375757A - 一种基于can总线的时间同步方法、设备及存储介质 - Google Patents
一种基于can总线的时间同步方法、设备及存储介质 Download PDFInfo
- Publication number
- CN117375757A CN117375757A CN202311359791.2A CN202311359791A CN117375757A CN 117375757 A CN117375757 A CN 117375757A CN 202311359791 A CN202311359791 A CN 202311359791A CN 117375757 A CN117375757 A CN 117375757A
- Authority
- CN
- China
- Prior art keywords
- time
- node
- bus
- synchronous clock
- sending
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 230000001360 synchronised effect Effects 0.000 claims abstract description 60
- 230000005540 biological transmission Effects 0.000 claims abstract description 15
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
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
- 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
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明涉及CAN节点时钟同步技术领域,公开了一种基于CAN总线的时间同步方法、设备及存储介质,包括CAN总线、设置在CAN总线上的同步时钟节点及多个对时节点,获取对时节点与同步时钟节点之间报文传输的发送时间及接收时间,再根据获知的第一发出时间、第二发出时间、第一接收时间、第二接收时间,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步。本发明通过基于CAN总线设置一个同步时钟节点以及若干个对时节点,通过计算对时节点与同步时钟节点之间的传输延时d及时间偏差Δt,以此实现对时节点与同步时钟节点的时间同步,减少因CAN节点的本地时钟不同步而导致软件在算法及策略上产生偏差的问题。
Description
技术领域
本发明涉及CAN节点时钟同步技术领域,特别涉及一种基于CAN总线的时间同步方法、设备及存储介质。
背景技术
每个CAN节点都有自己的本地时钟,但每个节点本地时钟不可避免的存在时间误差,基于CAN总线的系统在对时钟同步要求比较高的场景下,基于本地时钟的的数据收发无法实现带有准确系统时间戳的报文发送,CAN接收节点收到报文的时间戳跟该节点本地时间存在误差,很可能导致软件在算法和策略上的偏差,甚至错误。
发明内容
为了解决现有技术中各个CAN节点的本地时钟不同步而导致软件在算法及策略上产生偏差的技术问题,本发明提供了一种基于CAN总线的时间同步方法、设备及存储介质。
本发明的技术方案如下:
一种基于CAN总线的时间同步方法,包括CAN总线、设置在所述CAN总线上的同步时钟节点及多个对时节点,所述时间同步方法包括以下步骤:
记录所述对时节点第一次发送对时报文至同步时钟节点上的第一发出时间;
记录所述同步时钟节点第一次接收到对时报文的第一接收时间;
通过所述同步时钟节点发送携带第一接收时间的帧报文至对时节点上并记录所述同步时钟节点发送该帧报文的第二发出时间;
获取所述对时节点接收同步时钟节点发送的携带有第一接收时间的帧报文的第二接收时间;
通过所述同步时钟节点再次向对时节点发送携带第二发出时间的帧报文;
所述对时节点通过上述步骤获知第一发出时间、第二发出时间、第一接收时间、第二接收时间,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步。
进一步地,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步时,通过下述公式计算出报文在CAN总线上的传输延时及对时节点与同步时钟节点之间的时间偏差:
T2=t1+d+Δt (1);
t4+Δt=T3+d (2);
其中,t1为第一发出时间,T2为第一接收时间,T3为第二发出时间,t4为第二接收时间,d为报文在CAN总线上传输的延时,Δt为对时节点与同步时钟节点之间的时间偏差。
进一步地,从式(1)、(2)计算出d、Δt
d=[(t4-t1)-(T3-T2)]/2 (3);
Δt=[(t3-T4)-(T1-t2)]/2 (4)。
进一步地,所述对时节点与同步时钟节点进行同步通过:
T=t+Δt (5);
T为对时节点与同步时钟节点进行同步后的时间,t为对时节点当下接收报文的时间。
进一步地,设置在所述CAN总线上的多个对时节点均通过与同步时钟节点进行CAN报文的交换实现每个对时节点与同步时钟节点的时间同步。
进一步地,所述对时节点与同步时钟节点双向进行CAN报文传输时的延时d相同。
本发明还提供了一种基于CAN总线的时间同步设备,包括:
存储器,用于存储可执行指令;
处理器,用于运行所述存储器存储的可执行指令时,实现上述任一项所述的基于CAN总线的时间同步方法。
本发明还提供了一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现上述任一项所述的基于CAN总线的时间同步方法。
有益效果包括:本发明通过基于CAN总线设置一个同步时钟节点以及若干个对时节点,通过计算对时节点与同步时钟节点之间的传输延时d及时间偏差Δt,以此实现对时节点与同步时钟节点的时间同步,减少因CAN节点的本地时钟不同步而导致软件在算法及策略上产生偏差的问题。
附图说明
图1为本发明提供的一种基于CAN总线的时间同步方法的CAN总线结构示意图。
图2为本发明提供的一种基于CAN总线的时间同步方法的对时报文传输路径示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
结合图1-2所示,本发明提供了一种基于CAN总线的时间同步方法,包括CAN总线、设置在所述CAN总线上的同步时钟节点及多个对时节点,所述时间同步方法包括以下步骤:
记录所述对时节点第一次发送对时报文至同步时钟节点上的第一发出时间;
记录所述同步时钟节点第一次接收到对时报文的第一接收时间;
通过所述同步时钟节点发送携带第一接收时间的帧报文至对时节点上并记录所述同步时钟节点发送该帧报文的第二发出时间;
获取所述对时节点接收同步时钟节点发送的携带有第一接收时间的帧报文的第二接收时间;
通过所述同步时钟节点再次向对时节点发送携带第二发出时间的帧报文;
所述对时节点通过上述步骤获知第一发出时间、第二发出时间、第一接收时间、第二接收时间,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步。
进一步地,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步时,通过下述公式计算出报文在CAN总线上的传输延时及对时节点与同步时钟节点之间的时间偏差:
T2=t1+d+Δt (1);
t4+Δt=T3+d (2);
其中,t1为第一发出时间,T2为第一接收时间,T3为第二发出时间,t4为第二接收时间,d为报文在CAN总线上传输的延时,Δt为对时节点与同步时钟节点之间的时间偏差。
进一步地,从式(1)、(2)计算出d、Δt
d=[(t4-t1)-(T3-T2)]/2 (3);
Δt=[(t3-T4)-(T1-t2)]/2 (4)。
进一步地,所述对时节点与同步时钟节点进行同步通过:
T=t+Δt (5);
T为对时节点与同步时钟节点进行同步后的时间,t为对时节点当下接收报文的时间。
进一步地,设置在所述CAN总线上的多个对时节点均通过与同步时钟节点进行CAN报文的交换实现每个对时节点与同步时钟节点的时间同步。
进一步地,所述对时节点与同步时钟节点双向进行CAN报文传输时的延时d相同。
实现对时节点与同步时钟节点的步骤具体如下:
首先对时CAN节点发送对时报文给同步时钟节点,并记录该报文发出的时间t1,t1为第一发出时间;
同步时钟节点接收对时CAN节点报文,并记录接收报文自身时间为T2,T2为第一接收时间;
同步时钟节点向对时CAN节点发送携带有T2时间的帧报文,并记录该报文发送时自身时间T3,T3为第二发出时间;
对时节点接收到同步时钟节点携带有T2时间的帧报文,并记录自身本地时间t4,t4为第二接收时间;
同步时钟节点再向对时CAN节点发送携带有T3时间的帧报文;
由此,对时CAN节点已知时间有t1、t4、T2、T3;
设对时节点与同步时钟节点之间的时间偏差为Δt,报文在CAN总线上传输的延时为d,并且对时节点与同步时钟节点之间双向传输的延时相同,从而得出公式(1)、(2);
由公式(1)、(2)推导出d与Δt:
d=[(t4-t1)-(T3-T2)]/2;
Δt=[(t3-T4)-(T1-t2)]/2;
如此,即可通过式(5)T=t+Δt,实现对时节点与同步时钟节点之间的时间同步。
本发明还提供了一种基于CAN总线的时间同步设备,包括:
存储器,用于存储可执行指令;
处理器,用于运行所述存储器存储的可执行指令时,实现上述任一项所述的基于CAN总线的时间同步方法。
本发明还提供了一种计算机可读存储介质,存储有可执行指令,所述可执行指令被处理器执行时实现上述任一项所述的基于CAN总线的时间同步方法。
本发明通过基于CAN总线设置一个同步时钟节点以及若干个对时节点,通过计算对时节点与同步时钟节点之间的传输延时d及时间偏差Δt,以此实现对时节点与同步时钟节点的时间同步,减少因CAN节点的本地时钟不同步而导致软件在算法及策略上产生偏差的问题。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种基于CAN总线的时间同步方法,其特征在于:包括CAN总线、设置在所述CAN总线上的同步时钟节点及多个对时节点,所述时间同步方法包括以下步骤:
记录所述对时节点第一次发送对时报文至同步时钟节点上的第一发出时间;
记录所述同步时钟节点第一次接收到对时报文的第一接收时间;
通过所述同步时钟节点发送携带第一接收时间的帧报文至对时节点上并记录所述同步时钟节点发送该帧报文的第二发出时间;
获取所述对时节点接收同步时钟节点发送的携带有第一接收时间的帧报文的第二接收时间;
通过所述同步时钟节点再次向对时节点发送携带第二发出时间的帧报文;
所述对时节点通过上述步骤获知第一发出时间、第二发出时间、第一接收时间、第二接收时间,根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步。
2.根据权利要求1所述的基于CAN总线的时间同步方法,其特征在于:根据所述第一发出时间、第二发出时间、第一接收时间、第二接收时间实现对时节点基于CAN总线的时间同步时,通过下述公式计算出报文在CAN总线上的传输延时及对时节点与同步时钟节点之间的时间偏差:
T2=t1+d+Δt (1);
t4+Δt=T3+d (2);
其中,t1为第一发出时间,T2为第一接收时间,T3为第二发出时间,t4为第二接收时间,d为报文在CAN总线上传输的延时,Δt为对时节点与同步时钟节点之间的时间偏差。
3.根据权利要求2所述的基于CAN总线的时间同步方法,其特征在于:从式(1)、(2)计算出d、Δt
d=[(t4-t1)-(T3-T2)]/2 (3);
Δt=[(t3-T4)-(T1-t2)]/2 (4)。
4.根据权利要求3所述的基于CAN总线的时间同步方法,其特征在于:所述对时节点与同步时钟节点进行同步通过:
T=t+Δt (5);
T为对时节点与同步时钟节点进行同步后的时间,t为对时节点当下接收报文的时间。
5.根据权利要求4所述的基于CAN总线的时间同步方法,其特征在于:设置在所述CAN总线上的多个对时节点均通过与同步时钟节点进行CAN报文的交换实现每个对时节点与同步时钟节点的时间同步。
6.根据权利要求2所述的基于CAN总线的时间同步方法,其特征在于:所述对时节点与同步时钟节点双向进行CAN报文传输时的延时d相同。
7.一种基于CAN总线的时间同步设备,其特征在于:包括:
存储器,用于存储可执行指令;
处理器,用于运行所述存储器存储的可执行指令时,实现如权利要求1-6任一项所述的基于CAN总线的时间同步方法。
8.一种计算机可读存储介质,其特征在于:存储有可执行指令,所述可执行指令被处理器执行时实现如权利要求1-6任一项所述的基于CAN总线的时间同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311359791.2A CN117375757A (zh) | 2023-10-20 | 2023-10-20 | 一种基于can总线的时间同步方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311359791.2A CN117375757A (zh) | 2023-10-20 | 2023-10-20 | 一种基于can总线的时间同步方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117375757A true CN117375757A (zh) | 2024-01-09 |
Family
ID=89401806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311359791.2A Pending CN117375757A (zh) | 2023-10-20 | 2023-10-20 | 一种基于can总线的时间同步方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117375757A (zh) |
-
2023
- 2023-10-20 CN CN202311359791.2A patent/CN117375757A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2528254B1 (en) | Method and device for time synchronization | |
CN101960770B (zh) | 时钟同步系统、节点和时钟同步方法 | |
JP4558094B2 (ja) | 通信システム及び管理装置及び通信装置及びコンピュータプログラム | |
US9374214B2 (en) | Communication apparatus, communication system, and communication method | |
EP2288070B1 (en) | Time synchronizing method, device and system of master clock side and slave clock side in synchronous network | |
EP3284217A1 (en) | Methods, systems, and computer readable media for synchronizing timing among network interface cards (nics) in a network equipment test device | |
CN103873179A (zh) | 使无源光网络具备支持时间同步能力的装置与方法 | |
CN105027489B (zh) | 精确时钟协议同步方法和节点 | |
CN107947888B (zh) | 一种基于网络通信的任务级同步方法 | |
CN112398567B (zh) | 加密通信过程中时钟同步方法和装置以及多设备系统 | |
WO2010091624A1 (zh) | 流程跟踪方法以及装置和系统 | |
EP3720053B1 (en) | Flexible ethernet delay measurement method and related device | |
CN110572230A (zh) | 一种用于实现时间同步的修正方法及装置 | |
CN107395307A (zh) | 一种时钟同步方法和设备 | |
CN112187393A (zh) | Pon总线时间同步方法、装置、计算机设备和存储介质 | |
WO2014075260A1 (zh) | 一种时延补偿方法及装置 | |
JP6261822B2 (ja) | 時刻同期装置及び時刻同期システム及び時刻同期方法 | |
CN101420281B (zh) | 用于在网络要素之间传送日内时间值的方法和装置 | |
CN117375757A (zh) | 一种基于can总线的时间同步方法、设备及存储介质 | |
CN116800366A (zh) | 一种时钟同步方法、设备及存储介质 | |
CN109120469B (zh) | 一种线路传输延时计算方法及装置 | |
CN103401813B (zh) | 一种非对称延迟补偿方法及交换机 | |
WO2016177240A1 (zh) | 一种实现频率同步的方法和装置 | |
CN112636861A (zh) | 一种时钟同步方法、装置、设备及存储介质 | |
CN112600641A (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 |