一種實(shí)時(shí)以太網(wǎng)的微秒級(jí)時(shí)鐘同步方法
【專利摘要】本發(fā)明提供一種實(shí)時(shí)以太網(wǎng)的微秒級(jí)時(shí)鐘同步方法,通過系統(tǒng)的時(shí)鐘校準(zhǔn)方法實(shí)現(xiàn)時(shí)鐘同步。本發(fā)明提出的時(shí)鐘同步方法采用微秒級(jí)定時(shí)器作為系統(tǒng)的時(shí)鐘源,通過定時(shí)器作為系統(tǒng)的定時(shí)基準(zhǔn)。各主從通信站點(diǎn)均配置有定時(shí)器,系統(tǒng)主通信站點(diǎn)定時(shí)廣播系統(tǒng)同步信號(hào),從通信站點(diǎn)接收主通信站點(diǎn)的同步信號(hào)。時(shí)鐘校準(zhǔn)模塊由定時(shí)器模塊、加蓋時(shí)間戳模塊、定時(shí)器模塊組成。本發(fā)明解決以太網(wǎng)系統(tǒng)時(shí)鐘同步過程中時(shí)間戳不穩(wěn)定、同步精度低的問題,可滿足現(xiàn)有工業(yè)以太網(wǎng)系統(tǒng)中同步數(shù)據(jù)采集和控制的實(shí)時(shí)性要求。
【專利說明】—種實(shí)時(shí)以太網(wǎng)的微秒級(jí)時(shí)鐘同步方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種精確時(shí)鐘同步方法,該方法主要用于需要精確時(shí)鐘同步控制的網(wǎng)絡(luò)系統(tǒng),特別是對(duì)實(shí)時(shí)性要求高的以太網(wǎng)系統(tǒng)。
【背景技術(shù)】
[0002]對(duì)于工業(yè)自動(dòng)化系統(tǒng)來說,目前根據(jù)不同的應(yīng)用場(chǎng)合,將實(shí)時(shí)性要求劃分為三個(gè)范圍,它們是:信息集成和較低要求的過程自動(dòng)化應(yīng)用場(chǎng)合,實(shí)時(shí)響應(yīng)時(shí)間要求是10ms或更長(zhǎng);絕大多數(shù)的工廠自動(dòng)化應(yīng)用場(chǎng)合實(shí)時(shí)響應(yīng)時(shí)間的要求最少為5-lOms ;對(duì)于高性能的同步運(yùn)動(dòng)控制應(yīng)用,特別是在多傳感器信息同步采集處理、控制信號(hào)同步傳輸處理、多節(jié)點(diǎn)的伺服運(yùn)動(dòng)控制應(yīng)用場(chǎng)合,實(shí)時(shí)響應(yīng)時(shí)間要求低于1ms,同步傳送精度要小于I μ S。
[0003]目前,工業(yè)自動(dòng)化系統(tǒng)中普遍采用以太網(wǎng)進(jìn)行信息交互,以太網(wǎng)的通信調(diào)度采用帶有沖突檢測(cè)的載波偵聽多路訪問機(jī)制(CSMA/CD),是一種非確定性的通信調(diào)度方式,要將以太網(wǎng)應(yīng)用到高性能的同步運(yùn)動(dòng)控制系統(tǒng)中,必須提高以太網(wǎng)的實(shí)時(shí)性和確定性,通常從改變網(wǎng)絡(luò)架構(gòu)、通信協(xié)議和調(diào)度方式、同步方式等提高以太網(wǎng)性能,也就是采用實(shí)時(shí)以太網(wǎng)系統(tǒng)。一般來說,以太網(wǎng)的同步性能受到三個(gè)因素的影響:一是網(wǎng)絡(luò)通訊鏈路傳輸延遲時(shí)間的不確定性,二是網(wǎng)絡(luò)傳輸路徑的不對(duì)稱性,三是同步時(shí)鐘本身的精度。可以看出,時(shí)鐘同步是實(shí)現(xiàn)以太網(wǎng)實(shí)時(shí)性和確定性的重要手段,通過提高時(shí)鐘精度和改進(jìn)時(shí)鐘同步算法,可提高設(shè)備之間的同步誤差,在工業(yè)自動(dòng)化和武器裝備信息與控制領(lǐng)域都具有廣泛的應(yīng)用前景。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問題是提供一種實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法。
[0005]本發(fā)明的實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法,依次包括如下步驟:
通過采用時(shí)鐘源以及時(shí)鐘偏差校準(zhǔn)方法實(shí)現(xiàn)時(shí)鐘同步;
各主從通信站點(diǎn)均配置有定時(shí)器,系統(tǒng)主通信站點(diǎn)定時(shí)廣播系統(tǒng)同步信號(hào),各從通信站點(diǎn)接收主通信站點(diǎn)的同步報(bào)文,通過加蓋時(shí)間戳的同步報(bào)文可計(jì)算出從時(shí)鐘與主時(shí)鐘的偏差,偏差通過時(shí)鐘校準(zhǔn)模塊進(jìn)行校準(zhǔn);
當(dāng)從通信站點(diǎn)時(shí)鐘慢于主通信站點(diǎn)時(shí)鐘時(shí),增大計(jì)數(shù)頻率,快于主通信站點(diǎn)時(shí)鐘,則減小計(jì)數(shù)頻率,通過技術(shù)頻率調(diào)整實(shí)現(xiàn)時(shí)鐘校準(zhǔn)。
[0006]所述時(shí)鐘源采用微秒級(jí)定時(shí)器,定時(shí)器采用硬件計(jì)數(shù),定時(shí)精度為I μ s ;所述時(shí)鐘校準(zhǔn)模塊由定時(shí)器模塊、頻率校準(zhǔn)模塊、加蓋時(shí)間戳模塊組成;定時(shí)器模塊和頻率校準(zhǔn)模塊與CPU接口連接,加蓋時(shí)間戳模塊直接與以太網(wǎng)物理層連接。
[0007]所述時(shí)鐘偏差校準(zhǔn)方法包括如下步驟:
a、首先主通信站點(diǎn)向所有相連的從通信站點(diǎn)發(fā)同步報(bào)文,同時(shí)產(chǎn)生一個(gè)基于主通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是主通信站點(diǎn)發(fā)送同步報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ; b、從通信站點(diǎn)接收同步報(bào)文并產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)接收同步報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ;
C、主通信站點(diǎn)把a(bǔ))產(chǎn)生的發(fā)送同步報(bào)文的時(shí)間戳放入同步跟隨報(bào)文中并發(fā)送同步跟隨給從通信站點(diǎn),發(fā)送完成;
d、從通信站點(diǎn)發(fā)送一個(gè)延遲請(qǐng)求報(bào)文給主通信站點(diǎn),同時(shí)產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)發(fā)送延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ;
e、主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文并產(chǎn)生基于主通信站點(diǎn)的本地間戳,這個(gè)時(shí)間就是主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ;
f、主通信站點(diǎn)把接收延遲請(qǐng)求報(bào)文的時(shí)間放入延遲響應(yīng)報(bào)文并發(fā)送給從通信站點(diǎn);
g、在四個(gè)時(shí)間報(bào)文通信以后,從通信站點(diǎn)根據(jù)所掌握的四個(gè)時(shí)間戳來計(jì)算從通信站點(diǎn)與主通信站點(diǎn)的時(shí)間偏差,可得出,從通信站點(diǎn)與主通信站點(diǎn)的時(shí)鐘偏差,計(jì)算完成通過CPU接口傳送至CPU ;
h、各從站根據(jù)步驟g計(jì)算出的參數(shù)校準(zhǔn)本地時(shí)鐘,與主通信站點(diǎn)同步。
[0008]本發(fā)明的一種實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法,能夠克服以太網(wǎng)系統(tǒng)時(shí)鐘同步過程中時(shí)間戳不穩(wěn)定、同步精度低的不足,滿足現(xiàn)有工業(yè)以太網(wǎng)系統(tǒng)中同步數(shù)據(jù)采集和控制的實(shí)時(shí)性要求。
【專利附圖】
【附圖說明】
[0009]圖1本發(fā)明中的主從通信同步機(jī)制原理示意圖;
圖2本發(fā)明中的時(shí)鐘校準(zhǔn)模塊連接框圖。
【具體實(shí)施方式】
[0010]為滿足現(xiàn)有工業(yè)以太網(wǎng)系統(tǒng)中同步數(shù)據(jù)采集和控制的實(shí)時(shí)性要求,解決時(shí)鐘同步過程中時(shí)間戳不穩(wěn)定、同步精度低的問題,本發(fā)明提供了一種微秒級(jí)時(shí)鐘同步方法,通過系統(tǒng)的定時(shí)器、主從同步方法、時(shí)鐘校準(zhǔn)方法實(shí)現(xiàn)時(shí)鐘同步。
[0011]本發(fā)明提出的時(shí)鐘同步方法采用微秒級(jí)定時(shí)器作為系統(tǒng)的時(shí)鐘源,通過定時(shí)器作為系統(tǒng)的定時(shí)基準(zhǔn),定時(shí)器采用硬件計(jì)數(shù)實(shí)現(xiàn),定時(shí)精度可達(dá)I μ S。
[0012]本發(fā)明提出了一種主從同步方法,系統(tǒng)中的各通信站點(diǎn)均配置有定時(shí)器,系統(tǒng)主通信站點(diǎn)定時(shí)廣播系統(tǒng)同步(周期)信號(hào),各從通信站點(diǎn)接收到同步信號(hào)則表示系統(tǒng)同步(周期)開始。對(duì)于系統(tǒng)通信的同步,本發(fā)明從通信站點(diǎn)與主通信站點(diǎn)使用了五類同步報(bào)文:同步報(bào)文、同步跟隨報(bào)文、延遲請(qǐng)求報(bào)文、延遲應(yīng)答報(bào)文。通信過程中各站點(diǎn)發(fā)送或接受同步信息幀后,都加蓋時(shí)間戳,該時(shí)間戳值通過CPU接口傳送至CPU,根據(jù)主站點(diǎn)發(fā)送時(shí)間戳和從節(jié)點(diǎn)接收時(shí)間戳,計(jì)算出時(shí)鐘偏差,并通過CPU接口電路送至頻率校準(zhǔn)電路進(jìn)行時(shí)鐘校準(zhǔn)。
[0013]時(shí)鐘偏差補(bǔ)償值計(jì)算方式如下:
a )首先主通信站點(diǎn)向所有相連的從通信站點(diǎn)發(fā)同步報(bào)文,同時(shí)產(chǎn)生一個(gè)基于主通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是主通信站點(diǎn)發(fā)送同步報(bào)文的時(shí)間,計(jì)算完成轉(zhuǎn)入b); b)從通信站點(diǎn)接收同步報(bào)文并產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)接收同步報(bào)文的時(shí)間,計(jì)算完成轉(zhuǎn)入C);
C )主通信站點(diǎn)把a(bǔ))產(chǎn)生的發(fā)送同步報(bào)文的時(shí)間戳放入同步跟隨報(bào)文中并發(fā)送同步跟隨給從通信站點(diǎn),發(fā)送完成進(jìn)入d);
d )從通信站點(diǎn)發(fā)送一個(gè)延遲請(qǐng)求報(bào)文給主通信站點(diǎn),同時(shí)產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)發(fā)送延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成進(jìn)入e);
e )主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文并產(chǎn)生基于主通信站點(diǎn)的本地間戳,這個(gè)時(shí)間就是主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成進(jìn)入f);
f)主通信站點(diǎn)把接收延遲請(qǐng)求報(bào)文的時(shí)間放入延遲響應(yīng)報(bào)文并發(fā)送給從通信站點(diǎn),進(jìn)入g);
g )在四個(gè)時(shí)間報(bào)文通信以后,從通信站點(diǎn)根據(jù)所掌握的四個(gè)時(shí)間戳來計(jì)算從通信站點(diǎn)與主通信站點(diǎn)的時(shí)間偏差,可得出,從通信站點(diǎn)與主通信站點(diǎn)的時(shí)鐘偏差,計(jì)算完成進(jìn)入h);
h )各從站根據(jù)g)計(jì)算出的參數(shù)校準(zhǔn)本地時(shí)鐘,與主通信站點(diǎn)同步。
[0014]在本發(fā)明所述系統(tǒng)中,要使從時(shí)鐘同步于主時(shí)鐘,首先要確定從時(shí)鐘與主時(shí)鐘的偏差。
[0015]如圖1所示,主通信站點(diǎn)向所有相連的從通信站點(diǎn)發(fā)同步報(bào)文,同時(shí)產(chǎn)生一個(gè)基于主通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳h,這個(gè)時(shí)間就是主通信站點(diǎn)發(fā)送同步報(bào)文的時(shí)間。從通信站點(diǎn)接收同步報(bào)文并產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳〖2,這個(gè)時(shí)間就是從通信站點(diǎn)接收同步報(bào)文的時(shí)間。主通信站點(diǎn)把上次發(fā)送同步報(bào)文的時(shí)間戳h放入同步跟隨報(bào)文中并發(fā)送同步跟隨給從通信站點(diǎn)。從通信站點(diǎn)發(fā)送一個(gè)延遲請(qǐng)求報(bào)文給主通信站點(diǎn),同時(shí)產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳t3,這個(gè)時(shí)間就是從通信站點(diǎn)發(fā)送延遲請(qǐng)求報(bào)文的時(shí)間。主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文并產(chǎn)生基于主通信站點(diǎn)的本地間戳t4,這個(gè)時(shí)間就是主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文的時(shí)間。主通信站點(diǎn)把接收延遲請(qǐng)求報(bào)文的時(shí)間t4放入延遲響應(yīng)報(bào)文并發(fā)送給從通信站點(diǎn)。
[0016]在四個(gè)時(shí)間報(bào)文通信以后,從通信站點(diǎn)根據(jù)所掌握的^ t2, t3和t4四個(gè)時(shí)間戳來計(jì)算從通信站點(diǎn)與主通信站點(diǎn)的時(shí)間偏差,可得出,
從通信站點(diǎn)與主通信站點(diǎn)的時(shí)鐘偏差:toffset= [(Vt1)- (t4-t3) ] /2。
[0017]主站點(diǎn)到從站點(diǎn)的時(shí)延:tm—s—delay=[(Vt1H(Vt3)]/2。
[0018]各從站根據(jù)此參數(shù)調(diào)整本地時(shí)鐘,與主通信站點(diǎn)同步。
[0019]在本發(fā)明所述系統(tǒng)中,除要確定從時(shí)鐘與主時(shí)鐘的偏差,還需對(duì)主從時(shí)鐘進(jìn)行校準(zhǔn)。如圖2所示為時(shí)鐘校準(zhǔn)模塊組成,校準(zhǔn)模塊由定時(shí)器模塊122、頻率校準(zhǔn)模塊123、加蓋時(shí)間戳模塊121組成。定時(shí)器和頻率校準(zhǔn)模塊與CPU接口 11連接,加蓋時(shí)間戳模塊121直接與以太網(wǎng)物理層13連接。
[0020]時(shí)間偏差會(huì)導(dǎo)致各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的時(shí)鐘不同步,時(shí)間不一致。因此,必須根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)的主從關(guān)系對(duì)從節(jié)點(diǎn)的時(shí)間進(jìn)行校準(zhǔn),由于時(shí)間直接校準(zhǔn)可能破壞時(shí)間的連續(xù)性,造成任務(wù)的丟失,所以直接進(jìn)行時(shí)間的校準(zhǔn)不科學(xué)。而采用頻率校準(zhǔn),從時(shí)鐘慢于主時(shí)鐘,增大計(jì)數(shù)頻率,快于主時(shí)鐘,則減小技術(shù)頻率,不會(huì)造成時(shí)間的間斷和任務(wù)的丟失。
【權(quán)利要求】
1.一種實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法,依次包括如下步驟: 通過采用時(shí)鐘源以及時(shí)鐘偏差校準(zhǔn)方法實(shí)現(xiàn)時(shí)鐘同步; 各主從通信站點(diǎn)均配置有定時(shí)器,系統(tǒng)主通信站點(diǎn)定時(shí)廣播系統(tǒng)同步信號(hào),各從通信站點(diǎn)接收主通信站點(diǎn)的同步報(bào)文,通過加蓋時(shí)間戳的同步報(bào)文可計(jì)算出從時(shí)鐘與主時(shí)鐘的偏差,偏差通過時(shí)鐘校準(zhǔn)模塊進(jìn)行校準(zhǔn); 當(dāng)從通信站點(diǎn)時(shí)鐘慢于主通信站點(diǎn)時(shí)鐘時(shí),增大計(jì)數(shù)頻率,快于主通信站點(diǎn)時(shí)鐘,則減小計(jì)數(shù)頻率,通過技術(shù)頻率調(diào)整實(shí)現(xiàn)時(shí)鐘校準(zhǔn)。
2.根據(jù)權(quán)利要求1所述的實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法,其特征在于:所述時(shí)鐘源采用微秒級(jí)定時(shí)器,定時(shí)器采用硬件計(jì)數(shù),定時(shí)精度為?μ s;所述時(shí)鐘校準(zhǔn)模塊由定時(shí)器模塊(122)、頻率校準(zhǔn)模塊(123)、加蓋時(shí)間戳模塊(121)組成;定時(shí)器模塊(122)和頻率校準(zhǔn)模塊(123 )與CPU接口( 11)連接,加蓋時(shí)間戳模塊(121)直接與以太網(wǎng)物理層(13)連接。
3.根據(jù)權(quán)利要求1所述的實(shí)時(shí)以太網(wǎng)微秒級(jí)時(shí)鐘同步方法,其特征在于:所述時(shí)鐘偏差校準(zhǔn)方法包括如下步驟: a、首先主通信站點(diǎn)向所有相連的從通信站點(diǎn)發(fā)同步報(bào)文,同時(shí)產(chǎn)生一個(gè)基于主通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是主通信站點(diǎn)發(fā)送同步報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU; b、從通信站點(diǎn)接收同步報(bào)文并產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)接收同步報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ; c、主通信站點(diǎn)把a(bǔ))產(chǎn)生的發(fā)送同步報(bào)文的時(shí)間戳放入同步跟隨報(bào)文中并發(fā)送同步跟隨給從通信站點(diǎn),發(fā)送完成; d、從通信站點(diǎn)發(fā)送一個(gè)延遲請(qǐng)求報(bào)文給主通信站點(diǎn),同時(shí)產(chǎn)生一個(gè)基于從通信站點(diǎn)的本地時(shí)鐘的時(shí)間戳,這個(gè)時(shí)間就是從通信站點(diǎn)發(fā)送延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ; e、主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文并產(chǎn)生基于主通信站點(diǎn)的本地間戳,這個(gè)時(shí)間就是主通信站點(diǎn)接收延遲請(qǐng)求報(bào)文的時(shí)間,計(jì)算完成通過CPU接口傳送至CPU ; f、主通信站點(diǎn)把接收延遲請(qǐng)求報(bào)文的時(shí)間放入延遲響應(yīng)報(bào)文并發(fā)送給從通信站點(diǎn); g、在四個(gè)時(shí)間報(bào)文通信以后,從通信站點(diǎn)根據(jù)所掌握的四個(gè)時(shí)間戳來計(jì)算從通信站點(diǎn)與主通信站點(diǎn)的時(shí)間偏差,可得出,從通信站點(diǎn)與主通信站點(diǎn)的時(shí)鐘偏差,計(jì)算完成通過CPU接口傳送至CPU ; h、各從站根據(jù)步驟g計(jì)算出的參數(shù)校準(zhǔn)本地時(shí)鐘,與主通信站點(diǎn)同步。
【文檔編號(hào)】H04J3/06GK104243079SQ201410526879
【公開日】2014年12月24日 申請(qǐng)日期:2014年10月9日 優(yōu)先權(quán)日:2014年10月9日
【發(fā)明者】朱松柏, 劉治紅, 陳濤, 王鈐 申請(qǐng)人:四川省綿陽西南自動(dòng)化研究所