專利名稱:一種基于ieee1588的精確時鐘頻率同步方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及工業(yè)以太網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種基于IEEE1588的精確時鐘頻率同步方法及裝置。
背景技術(shù):
隨著計算機網(wǎng)絡的飛速發(fā)展,越來越多的工業(yè)領(lǐng)域?qū)r鐘同步提出了更高的要求,尤其是在大多數(shù)以工業(yè)以太網(wǎng)為基礎(chǔ)的分布式控制系統(tǒng)中,已經(jīng)對時鐘同步的同步要求達到了亞微秒級。特別是在智能變電站、分布式控制系統(tǒng)中,考慮到實時的數(shù)據(jù)采集、調(diào)度和控制,對時間統(tǒng)一的要求就更為嚴格。
IEEE1588 標準定義了一種精確時間協(xié)議(Precision Time Protocol, PTP),該協(xié)議為分布式測控應用而設(shè)計,基于報文流加時間戳的思想,采用軟、硬件結(jié)合的實現(xiàn)方式,旨在實現(xiàn)亞微秒級的同步精度。PTP協(xié)議是針對分布式網(wǎng)絡測控系統(tǒng)提出的精確時鐘同步協(xié)議,能夠?qū)⑦\行在局域網(wǎng)中的各個節(jié)點設(shè)備上各類不同精確度、分辨率和穩(wěn)定性的獨立時鐘同步到一個統(tǒng)一的時間標準上,占用最少的網(wǎng)絡和本地計算資源,并保證較高的同步精度。該協(xié)議完全兼容以太網(wǎng)技術(shù),由于其高同步精度、低成本實現(xiàn)、方便安裝與維護等優(yōu)越性,在供電管理、工業(yè)控制、測試和測量、網(wǎng)絡通信等領(lǐng)域得到了廣泛的應用。時鐘的頻率同步是指根據(jù)基準時鐘源與本地時鐘產(chǎn)生的頻率差,以某種算法處理獲得的頻率差,并根據(jù)該頻率差調(diào)整本地時鐘的輸出頻率,已達到節(jié)點時鐘與主時鐘同步的目的。隨著IEEE1588標準定在工業(yè)以太網(wǎng)的廣發(fā)應用,以IEEE 1588報文作為時鐘源進行時鐘的頻率同步就成為了工業(yè)以太網(wǎng)中常用的手段。但是,常規(guī)的基于IEEE1588的時鐘同步方法只對本地時鐘的時間進行修正,而不對本地時鐘的頻率進行修正。然而,節(jié)點時鐘一般是用一個由廉價的有源或無源晶振驅(qū)動的計數(shù)器來實現(xiàn)時間計量的。由于溫度變化、電磁干擾、振蕩器老化和生產(chǎn)調(diào)試等原因,時鐘的振蕩器頻率和標準頻率之間會出項偏差。若這些偏差經(jīng)過長時間的積累而不進行修正,就會使時鐘時間在短時間內(nèi)出現(xiàn)較大的漂移。解決上述問題以便維持節(jié)點時鐘良好地守時性能的方法有兩種,一是采用性能穩(wěn)定、精度較高的晶體振蕩器;但是這會增加系統(tǒng)的成本,另外,晶振老化問題依然不可避免。二是采用特定的算法和電路對晶振頻率進行動態(tài)的補償,以消除時鐘不穩(wěn)定性對同步精度的影響,然而現(xiàn)有的測量主時鐘秒脈沖的方法屬于粗測,只能根據(jù)本地晶振的性能測量單位時間內(nèi)的完整的時鐘周期數(shù),無法對非完整的時鐘周期數(shù)進行測量,在特殊的情況下這種誤差將非常大,因此,現(xiàn)有方法計算的頻率補償值不夠準確,從而導致節(jié)點時鐘頻率的同步精度得不到保障。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種基于IEEE1588的精確時鐘頻率同步方法及裝置,用以解決現(xiàn)有技術(shù)中由于頻率補償值不精確,而導致的節(jié)點時鐘頻率同步精度低的問題。
本發(fā)明提供了一種基于IEEE1588的精確時鐘頻率同步方法,該方法包括接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值;根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。本發(fā)明還提供了一種基于IEEE1588的精確時鐘頻率同步裝置,該裝置包括接收模塊,用于接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值;計算模塊,用于根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期;同步模塊,用于根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。本發(fā)明提供了一種基于IEEE1588的精確時鐘頻率同步方法及裝置,該方法通過接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值;根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期;根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。在本發(fā)明中通過設(shè)置多個檢測節(jié)點對非完整時鐘周期進行精確測量,并將測量結(jié)果體現(xiàn)到頻率補償值中,因此,有效的提高了頻率補償值的準確性,從而增加了節(jié)點時鐘頻率的同步精度。
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的前測量的線路時延進行時鐘校準,同時,節(jié)點設(shè)備向主設(shè)備發(fā)送延時請求報文并記錄其對應的發(fā)送時間作為延遲測量發(fā)送時間戳ts2 [k],主設(shè)備接收并解析該延時請求報文后,并向節(jié)點設(shè)備回復延時答復報文,從設(shè)備在收到延時答復報文后記錄該報文帶有的延時請求報文的接收時間,作為延遲測量接收時間戳tM2[k]并更新線路時延值。S102 :解析所述時鐘同步報文,獲取第一頻率補償值。具體的,節(jié)點設(shè)備通過記錄的四個時間戳,計算時間偏移量Offset [k]=tsl [k]-tM1 [k] -Delay_latest,并采用頻率補償公式計算頻率補償值FreqCompValue [K]
權(quán)利要求
1.一種基于IEEE1588的精確時鐘頻率同步方法,其特征在于,所述方法包括 接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值; 根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期; 根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。
2.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的整數(shù)時鐘周期數(shù)及非整數(shù)時鐘周期數(shù)包括 在第一個完整時鐘周期測量之前的每個檢測節(jié)點處,檢測是否出現(xiàn)脈沖跳變; 當出現(xiàn)脈沖跳變時,記錄檢測到的該脈沖跳變的檢測節(jié)點的序號; 根據(jù)該檢測節(jié)點的序號,以及檢測節(jié)點的設(shè)置周期,確定第一非完整時鐘周期數(shù); 在最后一個完整時鐘周期測量之后的每個檢測節(jié)點處,檢測是否出現(xiàn)脈沖跳變; 當出現(xiàn)脈沖跳變時,記錄檢測到的該脈沖跳變的檢測節(jié)點的序號; 根據(jù)該檢測節(jié)點的序號,以及檢測節(jié)點的設(shè)置周期,確定第二非完整時鐘周期數(shù); 根據(jù)第一非完整時鐘周期數(shù)和第二非完整時鐘周期數(shù),確定非完整時鐘周期數(shù)。
3.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步包括 將第一頻率補償值及第二頻率補償值進行累加,判斷所述累加后的頻率補償值是否大于當前保存的閾值; 當確定所述累加后的頻率補償值不大于該閾值時,根據(jù)所述累加后的頻率補償值修正本地時鐘的頻率。
4.如權(quán)利要求3所述的方法,其特征在于,當確定所述累加后的頻率補償值大于該閾值時,保持本地時鐘的頻率不變。
5.如權(quán)利要求4所述的方法,其特征在于,所述方法還包括 當所述累加后的頻率補償值大于該閾值時,采用所述累加后的頻率補償值對該閾值進行調(diào)整。
6.一種基于IEEE1588的精確時鐘頻率同步裝置,其特征在于,所述裝置包括 接收模塊,用于接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值; 計算模塊,用于根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期; 同步模塊,用于根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。
7.如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括 測量模塊,用于在第一個完整時鐘周期測量之前的每個檢測節(jié)點處,檢測是否出現(xiàn)脈沖跳變,當出現(xiàn)脈沖跳變時,記錄檢測到的該脈沖跳變的檢測節(jié)點的序號,根據(jù)該檢測節(jié)點的序號,以及檢測節(jié)點的設(shè)置周期,確定第一非完整時鐘周期數(shù);在最后一個完整時鐘周期測量之后的每個檢測節(jié)點處,檢測是否出現(xiàn)脈沖跳變,當出現(xiàn)脈沖跳變時,記錄檢測到的該脈沖跳變的檢測節(jié)點的序號,根據(jù)該檢測節(jié)點的序號,以及檢測節(jié)點的設(shè)置周期,確定第二非完整時鐘周期數(shù);根據(jù)第一非完整時鐘周期數(shù)和第二非完整時鐘周期數(shù),確定非完整時鐘周期數(shù)。
8.如權(quán)利要求6所述的裝置,其特征在于,所述同步模塊具體用于將第一頻率補償值及第二頻率補償值進行累加,判斷所述累加后的頻率補償值是否大于當前保存的閾值,當確定所述累加后的頻率補償值不大于該閾值時,根據(jù)所述累加后的頻率補償值修正本地時鐘的頻率。
9.如權(quán)利要求8所述的裝置,其特征在于,所述同步模塊具體還用于當確定所述累加后的頻率補償值大于該閾值時,保持本地時鐘的頻率不變。
10.如權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括 閾值調(diào)整模塊,用于當所述累加后的頻率補償值大于該閾值時,采用所述累加后的頻率補償值對該閾值進行調(diào)整。
全文摘要
本發(fā)明提供了一種基于IEEE1588的精確時鐘頻率同步方法及裝置,該方法通過接收主時鐘設(shè)備發(fā)送的時鐘同步報文,解析所述時鐘同步報文,獲取第一頻率補償值;根據(jù)設(shè)置的多個檢測節(jié)點測量的本地時鐘的完整時鐘周期數(shù)及非完整時鐘周期數(shù),計算第二頻率補償值,其中,相鄰檢測節(jié)點的時間間隔小于本地時鐘的時鐘周期;根據(jù)所述第一頻率補償值及所述第二頻率補償值,對本地時鐘的頻率進行同步。在本發(fā)明中通過設(shè)置多個檢測節(jié)點對非完整時鐘周期進行精確測量,并將測量結(jié)果體現(xiàn)到頻率補償值中,因此,有效的提高了頻率補償值的準確性,從而增加了節(jié)點時鐘頻率的同步精度。
文檔編號H04J3/06GK102710359SQ20121021695
公開日2012年10月3日 申請日期2012年6月27日 優(yōu)先權(quán)日2012年6月27日
發(fā)明者談黎, 黃劍超 申請人:北京東土科技股份有限公司