本發(fā)明涉及一種混合網(wǎng)絡(luò)中的級聯(lián)式時(shí)間同步方法,其主要面向自動化工業(yè)控制系統(tǒng),用于同步智能裝備、大型自動化系統(tǒng)中各個(gè)子設(shè)備的時(shí)間,使整個(gè)系統(tǒng)中所有設(shè)備均以統(tǒng)一的時(shí)間基準(zhǔn)運(yùn)行。
背景技術(shù):
:在大型智能裝備或工業(yè)自動化系統(tǒng)的設(shè)計(jì)中,通常各個(gè)設(shè)備工作的同步性對系統(tǒng)運(yùn)行的正確性是極為重要的。為了能夠使系統(tǒng)中的各個(gè)子設(shè)備能夠按照同樣的時(shí)鐘節(jié)拍運(yùn)行,使各個(gè)設(shè)備的動作先后順序具有確定性,同時(shí)使測試數(shù)據(jù)具有可比性,需要對系統(tǒng)中的各個(gè)設(shè)備進(jìn)行時(shí)間同步。系統(tǒng)的模塊化、分層化設(shè)計(jì)思想大大地增加了系統(tǒng)的可擴(kuò)展性,但同時(shí)給時(shí)間同步過程帶來了困難。通信過程的時(shí)延以及通信的串行性等都會影響同步的精確性。同型通信網(wǎng)中,通信網(wǎng)中的各站點(diǎn)同步可以通過廣播帶有當(dāng)前系統(tǒng)時(shí)間值的消息來實(shí)現(xiàn),而在異型通信網(wǎng)中,無法采用廣播消息的方式進(jìn)行時(shí)間同步。目前涉及時(shí)間同步的系統(tǒng)中,通常將需要同步的站點(diǎn)直接掛接在總線上,當(dāng)總線站點(diǎn)數(shù)量有限制,如1553b總線,就只能被迫放棄這種總線形式了,隨之不得不放棄的還有1553b總線的高可靠性。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的技術(shù)解決問題是:克服現(xiàn)有技術(shù)的不足,提出一種混合網(wǎng)絡(luò)中的級聯(lián)式時(shí)間同步方法,通過解決混合總線網(wǎng)絡(luò)中父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)站點(diǎn)的時(shí)間同步問題,擴(kuò)展了父層網(wǎng)絡(luò)可進(jìn)行時(shí)間同步的站點(diǎn)數(shù)量。本發(fā)明的技術(shù)解決方案是:一種混合網(wǎng)絡(luò)中的級聯(lián)式時(shí)間同步方法,所述混合網(wǎng)絡(luò)包括父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò),父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)之間內(nèi)部各站點(diǎn)之間按照其各自獨(dú)立的方式進(jìn)行時(shí)間同步,所述父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)之間設(shè)置共享適配站點(diǎn),共享適配站點(diǎn)同時(shí)采用父層網(wǎng)絡(luò)時(shí)間系統(tǒng)時(shí)間與子層網(wǎng)絡(luò)時(shí)間系統(tǒng)時(shí)間計(jì)時(shí),父層網(wǎng)絡(luò)中任意站點(diǎn)作為時(shí)間同步控制站點(diǎn),通過共享適配站點(diǎn)與子層網(wǎng)絡(luò)其他任意站點(diǎn)進(jìn)行時(shí)間同步的方法包括如下步驟:(1)、父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)向共享適配站點(diǎn)發(fā)送時(shí)間同步消息,所述時(shí)間同步消息包括預(yù)估的共享適配站點(diǎn)收到所述時(shí)間同步消息時(shí)刻的父層時(shí)間系統(tǒng)時(shí)間tsyn;(2)、共享適配站點(diǎn)收到時(shí)間同步消息之后,進(jìn)行解析得到當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間tsyn,同時(shí)記錄時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn;(3)、以共享適配站點(diǎn)為子層網(wǎng)絡(luò)時(shí)間同步控制站點(diǎn),共享適配站點(diǎn)根據(jù)自身的子層時(shí)間系統(tǒng)時(shí)間tlocal,對子層網(wǎng)絡(luò)中的其他站點(diǎn)進(jìn)行時(shí)間同步;(4)、共享適配站點(diǎn)收到子層網(wǎng)絡(luò)中的任意其他站點(diǎn)發(fā)送的帶有子層時(shí)間系統(tǒng)時(shí)間標(biāo)記tsub的時(shí)間標(biāo)記消息之后,采用最新得到的父層時(shí)間系統(tǒng)時(shí)間tsyn,及其相應(yīng)的時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn,將tsub轉(zhuǎn)換為父層網(wǎng)絡(luò)中的時(shí)間值taftersyn,形成父層網(wǎng)絡(luò)時(shí)間標(biāo)記消息,并將其反饋至父層網(wǎng)絡(luò)實(shí)現(xiàn)混合網(wǎng)絡(luò)之間的時(shí)間同步。所述父層網(wǎng)絡(luò)為1553b總線網(wǎng)絡(luò)。所述父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)為bc時(shí),父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)向共享適配站點(diǎn)實(shí)時(shí)發(fā)送時(shí)間同步消息,共享適配站點(diǎn)預(yù)計(jì)收到所述時(shí)間同步消息時(shí)的父層時(shí)間系統(tǒng)時(shí)間tsyn為時(shí)間同步控制站點(diǎn)中記載的當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間。所述父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)和共享適配站點(diǎn)均為rt時(shí),父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)向共享適配站點(diǎn)發(fā)送時(shí)間同步消息和共享適配站點(diǎn)向父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)發(fā)送父層網(wǎng)絡(luò)時(shí)間同步消息的具體方法為:(1.1)、發(fā)送方先將時(shí)間同步消息或者父層網(wǎng)絡(luò)時(shí)間同步消息存入相應(yīng)的發(fā)送子地址中;(1.2)、定義網(wǎng)絡(luò)中每一個(gè)rt站點(diǎn)的特定子地址為通信請求子地址,發(fā)送方將通信請求消息放于通信請求子地址,所述通信請求消息包括發(fā)送數(shù)據(jù)的rt地址、需要發(fā)送消息的發(fā)送子地址,發(fā)送的字個(gè)數(shù),接收數(shù)據(jù)的rt地址、接收子地址,接收的字個(gè)數(shù);(1.3)、bc對網(wǎng)絡(luò)中的各個(gè)rt站點(diǎn)的通信請求子地址進(jìn)行周期性巡檢,當(dāng)bc在巡檢過程中發(fā)現(xiàn)任意一個(gè)rt站點(diǎn)的請求子地址有新的通信請求消息時(shí),將通信請求消息中發(fā)送數(shù)據(jù)的rt對應(yīng)的發(fā)送子地址相應(yīng)字個(gè)數(shù)的需要發(fā)送的消息轉(zhuǎn)發(fā)至通信請求消息中接收數(shù)據(jù)的rt對應(yīng)的接收子地址中。所述共享適配站點(diǎn)預(yù)計(jì)收到所述時(shí)間同步消息時(shí)的父層時(shí)間系統(tǒng)時(shí)間tsyn為未來最近一次bc巡檢rt通信請求子地址時(shí)刻對應(yīng)的父層時(shí)間系統(tǒng)時(shí)間。所述步驟(3)中共享適配站點(diǎn)根據(jù)自身的子層時(shí)間系統(tǒng)時(shí)間tlocal,對子層網(wǎng)絡(luò)中的其他站點(diǎn)進(jìn)行時(shí)間同步的具體方法為:適配站點(diǎn)作為子層網(wǎng)絡(luò)中時(shí)間同步控制站點(diǎn)在本地串行總線網(wǎng)絡(luò)計(jì)時(shí)器開始啟動計(jì)時(shí)的時(shí)刻向其他站點(diǎn)廣播發(fā)送時(shí)間同步消息復(fù)位幀;然后,共享適配站點(diǎn)在自身的子層時(shí)間系統(tǒng)時(shí)間tlocal的每個(gè)整秒時(shí)刻,向子層網(wǎng)絡(luò)中的站點(diǎn)發(fā)送時(shí)間同步消息非復(fù)位幀,所述時(shí)間同步消息非復(fù)位幀包括共享適配站點(diǎn)的子層時(shí)間系統(tǒng)時(shí)間tlocal秒位值,即tlocal舍去毫秒值后的時(shí)間值;子層網(wǎng)絡(luò)站點(diǎn)在收到時(shí)間同步消息復(fù)位幀后,則將本地子層網(wǎng)絡(luò)時(shí)間清零,子層網(wǎng)絡(luò)計(jì)時(shí)器開始計(jì)時(shí),收到時(shí)間同步消息非復(fù)位幀后,設(shè)置本地的秒值,使之與共享適配站點(diǎn)的子層網(wǎng)絡(luò)時(shí)間秒值同步,且本地毫秒時(shí)間部分清零,本地子層網(wǎng)絡(luò)計(jì)時(shí)器從該秒值開始,繼續(xù)計(jì)時(shí),實(shí)現(xiàn)網(wǎng)絡(luò)時(shí)間同步。定義將父層網(wǎng)絡(luò)時(shí)間標(biāo)記轉(zhuǎn)換成子層網(wǎng)絡(luò)時(shí)間標(biāo)記表達(dá)方式的轉(zhuǎn)換操作為tr(t),子層網(wǎng)絡(luò)時(shí)間標(biāo)記轉(zhuǎn)換成父層網(wǎng)絡(luò)時(shí)間標(biāo)記表達(dá)方式的轉(zhuǎn)換操作為tr-1(t),將tsub轉(zhuǎn)換為父層網(wǎng)絡(luò)中的時(shí)間值taftersyn的具體方法為:taftersyn=tsyn+tr-1(tsub-tlocal_syn)。本發(fā)明相對于現(xiàn)有技術(shù)的有益效果是:(1)、本發(fā)明所述方法通過將時(shí)間層次化嵌入的方法來實(shí)現(xiàn)混合網(wǎng)絡(luò)中各站點(diǎn)的時(shí)間同步,該方法較好地提高了時(shí)間同步系統(tǒng)的可擴(kuò)展性,還可節(jié)省系統(tǒng)總線站點(diǎn)數(shù)量,提高時(shí)間同步效率;(2)、本發(fā)明父層網(wǎng)絡(luò)與子層網(wǎng)絡(luò)之間各自建立獨(dú)立的時(shí)間同步系統(tǒng),任何一個(gè)網(wǎng)絡(luò)時(shí)間系統(tǒng)的偏差對另一個(gè)網(wǎng)絡(luò)沒有影響,各個(gè)局部網(wǎng)絡(luò)設(shè)備可以根據(jù)自身功能需要,自適應(yīng)定義局部計(jì)時(shí)精度;(3)、本發(fā)明將父層網(wǎng)絡(luò)與子層網(wǎng)絡(luò)的時(shí)間系統(tǒng),在共享適配站點(diǎn)進(jìn)行交換時(shí)轉(zhuǎn)換成統(tǒng)一的時(shí)間計(jì)算形式,可以適應(yīng)于多種計(jì)時(shí)方式;(4)、本發(fā)明在共享適配點(diǎn)收到子層網(wǎng)絡(luò)時(shí)間標(biāo)記之后,再根據(jù)最收到時(shí)間進(jìn)行同步,再將子層網(wǎng)絡(luò)時(shí)間轉(zhuǎn)換為父層網(wǎng)絡(luò)中的時(shí)間值,相對于每收到一次系統(tǒng)時(shí)間就進(jìn)行時(shí)間同步的方法而言,大大節(jié)約了計(jì)算資源,網(wǎng)間交換時(shí)間差計(jì)算結(jié)果為同一網(wǎng)絡(luò)時(shí)間系統(tǒng)的相對值,絕對值較小,可以實(shí)現(xiàn)較高的精度;(5)、本發(fā)明針對1553b總線,提出了一種在不使用模式命令的情況下,在1553b總線上的任意rt站點(diǎn)實(shí)現(xiàn)主動通信的一種方法,避免了采用模式命令的解決方式帶來的由于信號干擾產(chǎn)生非法指令導(dǎo)致如rt關(guān)閉等嚴(yán)重總線故障。附圖說明圖1為本發(fā)明實(shí)施例的網(wǎng)絡(luò)連接拓?fù)涫疽鈭D。具體實(shí)施方式以下結(jié)合說明書附圖和具體實(shí)施例對本發(fā)明進(jìn)行詳細(xì)說明。本發(fā)明提供了一種混合網(wǎng)絡(luò)中的級聯(lián)式時(shí)間同步方法,所述混合網(wǎng)絡(luò)包括父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò),所述方法采用時(shí)間同步局部化的思想,將時(shí)間同步過程分為父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)兩個(gè)局部網(wǎng)絡(luò)的同步過程,父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)擁有自己的時(shí)間同步控制站點(diǎn),父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)之間內(nèi)部各站點(diǎn)之間按照其各自獨(dú)立的方式進(jìn)行時(shí)間同步,所述父層網(wǎng)絡(luò)和子層網(wǎng)絡(luò)之間設(shè)置共享適配站點(diǎn),共享適配站點(diǎn)同時(shí)采用父層網(wǎng)絡(luò)時(shí)間系統(tǒng)時(shí)間與子層網(wǎng)絡(luò)時(shí)間系統(tǒng)時(shí)間計(jì)時(shí),父層網(wǎng)絡(luò)中任意站點(diǎn)作為時(shí)間同步控制站點(diǎn),通過共享適配站點(diǎn)與子層網(wǎng)絡(luò)其他任意站點(diǎn)進(jìn)行時(shí)間同步。子層網(wǎng)絡(luò)以共享適配站點(diǎn)作為時(shí)間同步控制站點(diǎn)負(fù)責(zé)將子層網(wǎng)絡(luò)內(nèi)部的各個(gè)站點(diǎn)同步為它的本地時(shí)間,將時(shí)間同步過程局限在子層網(wǎng)絡(luò)內(nèi)部,同時(shí)子層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)被掛接到父層網(wǎng)絡(luò)中,單獨(dú)進(jìn)行父層網(wǎng)絡(luò)系統(tǒng)時(shí)間同步,從而父層網(wǎng)絡(luò)與子層網(wǎng)絡(luò)形成級聯(lián)式時(shí)間同步方式,子層網(wǎng)絡(luò)中的時(shí)間經(jīng)過共享適配站點(diǎn)進(jìn)行轉(zhuǎn)換,從而得到父層網(wǎng)絡(luò)中的時(shí)間值。該方法較好地提高了時(shí)間同步系統(tǒng)的可擴(kuò)展性,同時(shí)其父層網(wǎng)絡(luò)與子層網(wǎng)絡(luò)時(shí)間同步的獨(dú)立性保證了各個(gè)局部網(wǎng)絡(luò)設(shè)備可以根據(jù)自身功能需要,自適應(yīng)定義局部計(jì)時(shí)精度,同時(shí)還可節(jié)省系統(tǒng)總線站點(diǎn)數(shù)量,提高時(shí)間同步效率。上述方法具體包括如下步驟:(1)、父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)向共享適配站點(diǎn)發(fā)送時(shí)間同步消息,所述時(shí)間同步消息包括預(yù)估的共享適配站點(diǎn)預(yù)計(jì)收到所述時(shí)間同步消息時(shí)刻的父層時(shí)間系統(tǒng)時(shí)間tsyn;(2)、共享適配站點(diǎn)收到時(shí)間同步消息之后,進(jìn)行解析得到當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間tsyn,同時(shí)記錄時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn;(3)、以共享適配站點(diǎn)為子層網(wǎng)絡(luò)時(shí)間同步控制站點(diǎn),共享適配站點(diǎn)根據(jù)自身的子層時(shí)間系統(tǒng)時(shí)間tlocal,對子層網(wǎng)絡(luò)中的其他站點(diǎn)進(jìn)行時(shí)間同步;(4)、共享適配站點(diǎn)收到子層網(wǎng)絡(luò)中的任意其他站點(diǎn)發(fā)送的帶有子層時(shí)間系統(tǒng)時(shí)間標(biāo)記tsub的時(shí)間標(biāo)記消息之后,采用最新得到的父層時(shí)間系統(tǒng)時(shí)間tsyn,和相應(yīng)的時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn,將tsub轉(zhuǎn)換為父層網(wǎng)絡(luò)中的時(shí)間值taftersyn,形成父層網(wǎng)絡(luò)時(shí)間標(biāo)記消息,并將反饋至父層網(wǎng)絡(luò)實(shí)現(xiàn)混合網(wǎng)絡(luò)之間的時(shí)間同步。以下以1553b網(wǎng)絡(luò)作為上層網(wǎng)絡(luò),串行總線網(wǎng)絡(luò)作為下層網(wǎng)絡(luò)的混合形式網(wǎng)絡(luò)為例,對本發(fā)明進(jìn)行詳細(xì)說明。實(shí)施例如圖1所示,本發(fā)明的實(shí)施例的站點(diǎn)網(wǎng)絡(luò)拓?fù)溥B接圖中,rt1為rtmaster,即作為1553b總線中發(fā)起時(shí)間同步行為的站點(diǎn),rt7為共享適配站點(diǎn),rt7接收rt1的1553b總線同步信息,同時(shí)rt7作為uartmaster,作為串行總線網(wǎng)絡(luò)的控制站點(diǎn),負(fù)責(zé)同步串行總線網(wǎng)絡(luò)。rt7作為一個(gè)1553b總線網(wǎng)絡(luò)站點(diǎn),可以接收rt1的信息,同時(shí)可以接收串行總線網(wǎng)絡(luò)中的帶時(shí)間標(biāo)記的信息,并將其中的時(shí)間標(biāo)記轉(zhuǎn)換為1553b總線網(wǎng)絡(luò)中的時(shí)間值。rt7內(nèi)部具備兩個(gè)獨(dú)立的計(jì)時(shí)器,一個(gè)與1553b總線網(wǎng)絡(luò)時(shí)間同步,另一個(gè)與串行總線網(wǎng)絡(luò)時(shí)間同步。實(shí)施例中的串行總線選擇rs485串行總線。以1553b網(wǎng)絡(luò)中rt1作為時(shí)間同步控制站點(diǎn),其與串行總線網(wǎng)絡(luò)中的站點(diǎn)時(shí)間同步的方法包括如下步驟:(1)、rt1向rt7發(fā)送時(shí)間同步消息,所述時(shí)間同步消息包括預(yù)估的共享適配站點(diǎn)收到所述時(shí)間同步消息時(shí)刻的父層時(shí)間系統(tǒng)時(shí)間tsyn。rt1每分鐘向1553b站點(diǎn)同步一次,由于1553b總線是典型的時(shí)分制命令/響應(yīng)式多路復(fù)用數(shù)據(jù)總線,各rt站點(diǎn)需通過申請bc為其進(jìn)行消息服務(wù)來完成。所述父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)rt1為bc時(shí),rt1向rt7直接發(fā)送時(shí)間同步消息,rt7預(yù)計(jì)收到所述時(shí)間同步消息時(shí)的父層時(shí)間系統(tǒng)時(shí)間tsyn為rt1中記載的當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間。當(dāng)所述父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)rt1和共享適配站點(diǎn)rt7均為rt時(shí),父層網(wǎng)絡(luò)的時(shí)間同步控制站點(diǎn)rt1向共享適配站點(diǎn)rt7發(fā)送時(shí)間同步消息的具體方法為:(1.1)、rt1先將時(shí)間同步消息存入相應(yīng)的發(fā)送子地址中,所述時(shí)間同步消息包括預(yù)估的rt7收到所述時(shí)間同步消息時(shí)刻的父層時(shí)間系統(tǒng)時(shí)間tsyn;;(1.2)、定義網(wǎng)絡(luò)中每一個(gè)rt站點(diǎn)的特定子地址為通信請求子地址(如:子地址30),rt1將稱為時(shí)間同步請求消息的通信請求消息放于通信請求子地址,所述時(shí)間同步請求消息格式如下:字1字2字3發(fā)送命令字接收命令字crc校驗(yàn)碼其中,發(fā)送命令字1定義rt7發(fā)送時(shí)間同步消息的通信子地址,需要通信的數(shù)據(jù)字個(gè)數(shù),同時(shí)將自身地址告知bc,而接收命令字2則定義了接收rt1的地址和子地址以及需要通信的數(shù)據(jù)字字個(gè)數(shù)。此兩個(gè)命令字具體定義格式如下:bit15bit10~bit14bit5~bit9bit0~bit4保留為0發(fā)送/接收地址發(fā)送/接收子地址數(shù)據(jù)字個(gè)數(shù)rt需要發(fā)送消息到bc時(shí),接收命令字置零,發(fā)送命令字表示發(fā)送rt的地址與子地址和所要發(fā)送給bc的數(shù)據(jù)字個(gè)數(shù)。(1.3)、bc對網(wǎng)絡(luò)中的各個(gè)rt站點(diǎn)的通信請求子地址進(jìn)行周期性巡檢,當(dāng)bc在巡檢過程中發(fā)現(xiàn)任意一個(gè)rt站點(diǎn)的請求子地址有新的通信請求消息時(shí),將通信請求消息中發(fā)送數(shù)據(jù)的rt對應(yīng)的發(fā)送子地址相應(yīng)字個(gè)數(shù)的需要發(fā)送的消息轉(zhuǎn)發(fā)至通信請求消息中接收數(shù)據(jù)的rt對應(yīng)的接收子地址中。rt1還可以通過1553b總線廣播消息,對總線上的所有其他站點(diǎn),包括站點(diǎn)rt7發(fā)送時(shí)間同步消息,所述時(shí)間同步消息定義如下:這樣,所述共享適配站點(diǎn)rt7預(yù)計(jì)收到所述時(shí)間同步消息時(shí)的父層時(shí)間系統(tǒng)時(shí)間tsyn為未來最近一次bc巡檢rt1通信請求子地址時(shí)刻對應(yīng)的父層時(shí)間系統(tǒng)時(shí)間。所述rt1發(fā)送時(shí)間同步消息的間隔應(yīng)長于bc巡檢通信請求子地址的周期的兩倍值。整個(gè)1553b網(wǎng)絡(luò)時(shí)間同步控制站點(diǎn)rt1周期性向網(wǎng)絡(luò)中的其余的所有站點(diǎn)發(fā)送時(shí)間同步消息,而其余站點(diǎn)收到時(shí)間同步消息后,對消息中的crc碼校驗(yàn)正確后,得到當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間tsys,將本地父層網(wǎng)絡(luò)時(shí)間變更為時(shí)間同步消息中的時(shí)間同步控制站點(diǎn)網(wǎng)絡(luò)時(shí)間,使之與時(shí)間同步控制站點(diǎn)時(shí)間同步,從而實(shí)現(xiàn)父層網(wǎng)絡(luò)時(shí)間同步。(2)、1553b總線上的站點(diǎn)rt7,收到父層網(wǎng)絡(luò)時(shí)間同步消息并對消息中的crc碼校驗(yàn)正確后,得到當(dāng)前時(shí)刻父層時(shí)間系統(tǒng)時(shí)間tsyn,并同時(shí)記錄時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn。(3)、以rt7作為子層網(wǎng)絡(luò)時(shí)間同步控制站點(diǎn),rt7根據(jù)自身的子層時(shí)間系統(tǒng)時(shí)間tlocal,對子層網(wǎng)絡(luò)中的其他站點(diǎn)進(jìn)行時(shí)間同步。rt7作為串行總線的時(shí)間控制站點(diǎn),通過廣播消息對串行總線網(wǎng)絡(luò)中的其他站點(diǎn)進(jìn)行時(shí)間同步,將串行總線網(wǎng)絡(luò)的時(shí)間統(tǒng)一為與rt7的本地串行總線網(wǎng)絡(luò)時(shí)間同步的時(shí)間的具體方法為:rt7作為串行總線網(wǎng)絡(luò)中時(shí)間同步控制站點(diǎn),在本地串行總線網(wǎng)絡(luò)計(jì)時(shí)器開始啟動計(jì)時(shí)的時(shí)刻向其他站點(diǎn)廣播發(fā)送時(shí)間同步消息復(fù)位幀,然后,在隨后運(yùn)行的每個(gè)整秒時(shí)刻,向串行總線網(wǎng)絡(luò)中的站點(diǎn)發(fā)送時(shí)間同步消息非復(fù)位幀,所述時(shí)間同步消息非復(fù)位幀包括時(shí)間同步控制站點(diǎn)在本地串行總線網(wǎng)絡(luò)計(jì)時(shí)器的秒位值;串行總線網(wǎng)絡(luò)站點(diǎn)在收到時(shí)間同步消息復(fù)位幀后,則將本地串行總線網(wǎng)絡(luò)時(shí)間清零,串行總線網(wǎng)絡(luò)計(jì)時(shí)器開始計(jì)時(shí),收到時(shí)間同步消息非復(fù)位幀后,設(shè)置本地的秒值,使之與共享適配站點(diǎn)的子層網(wǎng)絡(luò)時(shí)間秒值同步,且本地毫秒時(shí)間部分清零,本地串行總線網(wǎng)絡(luò)計(jì)時(shí)器從該秒值開始,繼續(xù)計(jì)時(shí),實(shí)現(xiàn)網(wǎng)絡(luò)時(shí)間同步。例如:rt7在上電初始化本地硬件完畢后,向串行網(wǎng)絡(luò)中的站點(diǎn)u1,u2,u3發(fā)送一幀時(shí)間同步消息復(fù)位幀,該時(shí)間同步消息復(fù)位幀的復(fù)位命令標(biāo)志字段為0xaa,串行網(wǎng)絡(luò)中的站點(diǎn)u1,u2,u3在收到該消息后,對自身時(shí)間清零,并開始計(jì)時(shí)。隨后,rt7根據(jù)自身的子層時(shí)間系統(tǒng)時(shí)間tlocal,每1s時(shí)刻向串行網(wǎng)絡(luò)發(fā)送一次時(shí)間同步消息非復(fù)位幀,時(shí)間同步消息復(fù)位幀和時(shí)間同步消息復(fù)位幀消息格式定義如下:串行網(wǎng)絡(luò)中的站點(diǎn)u1,u2,u3接收到同步消息后,在校核幀序號、校驗(yàn)碼無誤后,識別幀標(biāo)志為時(shí)間同步幀,則查看復(fù)位命令標(biāo)志是否為0xaa,若是,則認(rèn)為該幀數(shù)據(jù)為時(shí)間同步消息復(fù)位幀,將本地時(shí)間清零,等待下一次時(shí)間同步信息,若復(fù)位命令標(biāo)志是0x55,則認(rèn)為該幀數(shù)據(jù)為時(shí)間同步消息非復(fù)位幀,根據(jù)字節(jié)4~字節(jié)7設(shè)置本地的秒值,且本地毫秒時(shí)間部分清零。(4)、rt7收到子層網(wǎng)絡(luò)中的任意其他站點(diǎn)發(fā)送的帶有子層時(shí)間系統(tǒng)時(shí)間標(biāo)記tuart的時(shí)間標(biāo)記消息之后,采用最新得到的父層時(shí)間系統(tǒng)時(shí)間tsyn,和相應(yīng)的時(shí)間同步消息收到時(shí)刻的本地時(shí)間tlocal_syn,將tsub轉(zhuǎn)換為父層網(wǎng)絡(luò)中的時(shí)間值taftersyn,形成父層網(wǎng)絡(luò)時(shí)間標(biāo)記消息,并將反饋至父層網(wǎng)絡(luò)實(shí)現(xiàn)混合網(wǎng)絡(luò)之間的時(shí)間同步。由于rs485串行總線屬于獨(dú)占型總線,即在某一時(shí)刻只能有一個(gè)站點(diǎn)發(fā)送消息,故u1,u2,u3的消息發(fā)送過程由rt7調(diào)度完成,實(shí)施例中,rt7通過i/o信號來調(diào)度u1,u2,u3的信息發(fā)送。rt7每50ms通過i/o信號發(fā)送一個(gè)脈沖來選通一個(gè)串行總線站點(diǎn),u1,u2,u3在檢測到串行總線選通信號脈沖時(shí),發(fā)送一幀數(shù)據(jù)到串行總線上。當(dāng)rt7要發(fā)送時(shí)間同步消息復(fù)位幀和時(shí)間同步消息非復(fù)位幀時(shí),則優(yōu)先發(fā)送時(shí)間同步消息復(fù)位幀和時(shí)間同步消息非復(fù)位幀給其他三個(gè)站點(diǎn),在下一個(gè)50ms時(shí)刻繼續(xù)選通需要選通的串行總線站點(diǎn)。由于u1,u2,u3回復(fù)給rt7的信息通過rt7選通各個(gè)站點(diǎn)實(shí)現(xiàn),因此,回復(fù)消息中可以沒有接收站點(diǎn)地址標(biāo)示字段。但若要串行總線中的每個(gè)站點(diǎn)均能夠互相通信,則回復(fù)消息中也應(yīng)該包含接收站點(diǎn)地址標(biāo)示字段。當(dāng)u1,u2,u3所返回的消息帶有時(shí)間標(biāo)記時(shí),認(rèn)為該站點(diǎn)將被rt7同步后的時(shí)間作為時(shí)間標(biāo)記,向rt7返回帶時(shí)間標(biāo)記tuart的網(wǎng)間時(shí)間同步消息,所述網(wǎng)間時(shí)間同步消息字段定義為:假設(shè),定義將父層網(wǎng)絡(luò)時(shí)間標(biāo)記轉(zhuǎn)換成子層網(wǎng)絡(luò)時(shí)間標(biāo)記表達(dá)方式的轉(zhuǎn)換操作為tr(t),子層網(wǎng)絡(luò)時(shí)間標(biāo)記轉(zhuǎn)換成父層網(wǎng)絡(luò)時(shí)間標(biāo)記表達(dá)方式的轉(zhuǎn)換操作為tr-1(t)。本實(shí)施例中,所述1553b總線網(wǎng)絡(luò)中的時(shí)間值用年月日時(shí)分秒毫秒計(jì)時(shí)形式,即表示為{year,month,day,hour,minute,second,millisecond}的結(jié)構(gòu)體,1553b總線網(wǎng)絡(luò)時(shí)間標(biāo)記用以毫秒單位的時(shí)間值表示,串口網(wǎng)絡(luò)時(shí)間以ms為單位表示。定義以年月日時(shí)分秒毫秒為表示形式的時(shí)間值轉(zhuǎn)換為以毫秒單位的時(shí)間值的轉(zhuǎn)換操作為tr(t):tr(t)=(((((t.year×12+t.month)×30+t.day)×24+t.hour)×60+t.minute)×60+t.second)×1000+t.millisecond以毫秒單位的時(shí)間值轉(zhuǎn)換成年月日時(shí)分秒毫秒為表示形式的時(shí)間值的轉(zhuǎn)換操作為tr-1(t)則,tr-1(t)可以表示為:tr-1(t).year=[t/(86400×30×12×1000)],tr-1(t).month=[(t%(86400×30×12×1000))/(86400×30×1000)],tr-1(t).day=[(t%(86400×30×1000))/(86400×1000)],tr-1(t).hour=[(t%(86400×1000))/(3600×1000)],tr-1(t).minute=[(t%(3600×1000))/(60×1000)],tr-1(t).second=[(t%(60×1000))/1000],tr-1(t).millisecond=t%1000。其中,中括弧“[]”表示向下取整運(yùn)算,百分號“%”表示取余運(yùn)算。設(shè)串行總線網(wǎng)絡(luò)中的站點(diǎn)返回的網(wǎng)間時(shí)間同步消息中的時(shí)間為tsub,用以毫秒單位的時(shí)間值表示,則將串行總線網(wǎng)絡(luò)時(shí)間轉(zhuǎn)換成1553b總線網(wǎng)絡(luò)時(shí)間taftersyn的方式如下:taftersyn=tsyn+tr-1(tsub-tlocal_syn)tr-1(tsub-tlocal_syn)為網(wǎng)間交換時(shí)間差。rt7將所述父層網(wǎng)絡(luò)時(shí)間標(biāo)記消息反饋至父層網(wǎng)絡(luò)的通信方式與rt1向rt7發(fā)送時(shí)間同步消息的方式相同。本發(fā)明可以應(yīng)用于n層架構(gòu)的不同類型的網(wǎng)絡(luò)(如第1層網(wǎng)絡(luò)為以太網(wǎng)、第2層網(wǎng)絡(luò)為1553b總線網(wǎng)絡(luò)、第3層為串行總線網(wǎng)絡(luò)等等),所述n≥2,自頂向下依次為第1~第n層網(wǎng)絡(luò),每層網(wǎng)絡(luò)內(nèi)部各站點(diǎn)之間時(shí)間同步,各層網(wǎng)絡(luò)之間各站點(diǎn)之間時(shí)間相互獨(dú)立,第i層網(wǎng)絡(luò)與第i+1層網(wǎng)絡(luò)之間存在一個(gè)共享站點(diǎn),i≥1,所述共享站點(diǎn)同時(shí)具備第i層網(wǎng)絡(luò)與第i+1層網(wǎng)絡(luò)兩個(gè)獨(dú)立的計(jì)時(shí)器,所述時(shí)間同步方法采用上述級聯(lián)的方法實(shí)現(xiàn)各層網(wǎng)絡(luò)之間的時(shí)間同步,每一級包括相鄰兩層網(wǎng)絡(luò),以上層網(wǎng)絡(luò)中任意站點(diǎn)作為時(shí)間同步控制站點(diǎn),其與下層網(wǎng)絡(luò)中的站點(diǎn)時(shí)間同步。為了保證時(shí)間同步精度,網(wǎng)絡(luò)層次中的各個(gè)站點(diǎn)本地具備計(jì)時(shí)功能,且計(jì)時(shí)精度為毫秒級,即各層網(wǎng)絡(luò)內(nèi)部時(shí)間同步精度為毫秒級。本發(fā)明未詳細(xì)描述內(nèi)容為本領(lǐng)域技術(shù)人員公知技術(shù)。當(dāng)前第1頁12