本申請屬于計算機(jī)處理,尤其涉及一種時間同步方法、電子設(shè)備及計算機(jī)存儲介質(zhì)。
背景技術(shù):
1、gptp(generalized?precision?time?protocol,廣義精確時間同步協(xié)議)是一種用于網(wǎng)絡(luò)設(shè)備之間進(jìn)行精確時間同步的協(xié)議,通常用于需要高精度時間同步的應(yīng)用場景,比如工業(yè)自動化、電信基礎(chǔ)設(shè)施和實時控制系統(tǒng)等。在gptp協(xié)議棧進(jìn)入“已同步”狀態(tài)后,從設(shè)備即采用主時鐘(master?clock)的時間戳來更新自己的本地時間。然而,在直接同步時間的方案中,如果底層網(wǎng)絡(luò)或硬件出現(xiàn)錯誤,可能會導(dǎo)致時間同步出現(xiàn)偏差。這些偏差可由網(wǎng)絡(luò)延遲的變化、硬件故障或其他不可預(yù)見的因素造成。如果偏差足夠大,那么從時鐘的時間會出現(xiàn)突然的跳變,從而導(dǎo)致時間控制系統(tǒng)失效。
2、前面的敘述在于提供一般的背景信息,并不一定構(gòu)成現(xiàn)有技術(shù)。
技術(shù)實現(xiàn)思路
1、針對上述技術(shù)問題,本申請?zhí)峁┮环N的時間同步方法、電子設(shè)備及計算機(jī)存儲介質(zhì),使用變步長卡爾曼濾波方法對時間偏差進(jìn)行過濾,動態(tài)調(diào)整卡爾曼濾波器的步長,以提高時間估計的準(zhǔn)確性和時間同步的穩(wěn)定性。
2、本申請?zhí)峁┝艘环N時間同步方法,包括:
3、獲取目標(biāo)報文和本地時間,所述本地時間包括獲取到所述目標(biāo)報文時記錄的時間戳;
4、根據(jù)所述目標(biāo)報文中的時間戳和所述本地時間得到計算時鐘偏差;
5、根據(jù)所述計算時鐘偏差和所述本地時間進(jìn)行變步長卡爾曼濾波,得到估計時鐘偏差和估計時間。
6、在一實施方式中,所述目標(biāo)報文包括sync報文、sync_followup報文、pdelay_resp報文、pdelay_resp_followup報文中的至少一項。
7、在一實施方式中,所述根據(jù)所述目標(biāo)報文中的時間戳和所述本地時間得到計算時鐘偏差,包括:
8、根據(jù)第一時間戳、所述pdelay_resp報文中的第二時間戳、所述pdelay_resp_followup報文中的第三時間戳和第四時間戳得到所述計算時鐘偏差;其中,所述第一時間戳為發(fā)送pdelay_req報文的本地時間,所述第四時間戳為獲取所述pdelay_resp報文時的本地時間。
9、在一實施方式中,根據(jù)如下公式得到所述計算時鐘偏差:
10、
11、式中,offset為計算時鐘偏差,t1為發(fā)送pdelay_req報文的第一時間戳;t2為所述pdelay_resp報文中的第二時間戳;t3為所述pdelay_resp_followup報文中的第三時間戳;t4為獲取所述pdelay_resp報文時的第四時間戳。
12、在一實施方式中,所述根據(jù)所述目標(biāo)報文中的時間戳和所述本地時間得到計算時鐘偏差,還包括:
13、根據(jù)第五時間戳和所述sync_followup報文中的第六時間戳的差值得到所述計算時鐘偏差,所述第五時間戳為獲取所述sync報文時的本地時間。
14、在一實施方式中,所述根據(jù)所述計算時鐘偏差和所述本地時間進(jìn)行變步長卡爾曼濾波,得到估計時鐘偏差和估計時間,包括:
15、根據(jù)所述本地時間和所述計算時鐘偏差構(gòu)建狀態(tài)向量;
16、根據(jù)所述目標(biāo)報文的獲取周期構(gòu)建狀態(tài)轉(zhuǎn)移矩陣;
17、根據(jù)所述狀態(tài)向量和所述狀態(tài)轉(zhuǎn)移矩陣進(jìn)行卡爾曼濾波,以得到所述估計時鐘偏差和所述估計時間。
18、在一實施方式中,所述方法,還包括:
19、根據(jù)所述目標(biāo)報文的獲取周期動態(tài)調(diào)整卡爾曼濾波頻率和卡爾曼增益。
20、在一實施方式中,所述方法,還包括:
21、實時監(jiān)測網(wǎng)絡(luò)狀態(tài);
22、根據(jù)所述網(wǎng)絡(luò)狀態(tài)調(diào)整所述目標(biāo)報文的獲取周期。
23、本申請還提供了一種電子設(shè)備,所述電子設(shè)備包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機(jī)程序,所述處理器執(zhí)行所述計算機(jī)程序時實現(xiàn)上述方法的步驟。
24、本申請還提供了一種計算機(jī)存儲介質(zhì),所述計算機(jī)存儲介質(zhì)存儲有計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)上述方法的步驟。
25、本申請?zhí)峁┑臅r間同步方法、電子設(shè)備及計算機(jī)存儲介質(zhì),時間同步方法包括:獲取目標(biāo)報文和本地時間,本地時間包括獲取到目標(biāo)報文時記錄的時間戳;根據(jù)目標(biāo)報文中的時間戳和本地時間得到計算時鐘偏差;根據(jù)計算時鐘偏差和本地時間進(jìn)行變步長卡爾曼濾波,得到估計時鐘偏差和估計時間。本申請的技術(shù)方案,使用變步長卡爾曼濾波方法對時間偏差進(jìn)行過濾,動態(tài)調(diào)整卡爾曼濾波器的步長,以提高時間估計的準(zhǔn)確性和時間同步的穩(wěn)定性。
1.一種時間同步方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述目標(biāo)報文包括sync報文、sync_followup報文、pdelay_resp報文、pdelay_resp_followup報文中的至少一項。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述目標(biāo)報文中的時間戳和所述本地時間得到計算時鐘偏差,包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)如下公式得到所述計算時鐘偏差:
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述目標(biāo)報文中的時間戳和所述本地時間得到計算時鐘偏差,還包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述計算時鐘偏差和所述本地時間進(jìn)行變步長卡爾曼濾波,得到估計時鐘偏差和估計時間,包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述方法,還包括:
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法,還包括:
9.一種電子設(shè)備,其特征在于,所述電子設(shè)備包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機(jī)程序,所述處理器執(zhí)行所述計算機(jī)程序時實現(xiàn)根據(jù)權(quán)利要求1至8任一項所述方法的步驟。
10.一種計算機(jī)存儲介質(zhì),所述計算機(jī)存儲介質(zhì)存儲有計算機(jī)程序,其特征在于,所述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)根據(jù)權(quán)利要求1至8任一項所述方法的步驟。