基于ZigBee技術(shù)的公共時(shí)鐘系統(tǒng)構(gòu)建
摘要:構(gòu)建了一種基于ZigBee技術(shù)的公共時(shí)鐘系統(tǒng),依據(jù)ZigBee的不同技術(shù),分別構(gòu)建了它的總體結(jié)構(gòu)、時(shí)鐘同步算法以及軟硬件結(jié)構(gòu)。該公共時(shí)鐘系統(tǒng)在某電站辦公綜合樓內(nèi)經(jīng)過一年的實(shí)驗(yàn)運(yùn)行,結(jié)果表明系統(tǒng)時(shí)鐘同步精度高,運(yùn)行可靠穩(wěn)定。
關(guān)鍵詞:公共時(shí)鐘;時(shí)鐘同步;ZigBee;分布式網(wǎng)絡(luò)
引言
在科學(xué)技術(shù)、社會生活和生產(chǎn)活動(dòng)中,時(shí)間是個(gè)基本參量。隨著科技的進(jìn)步,許多公眾場所聚集了大量的設(shè)備系統(tǒng),這些系統(tǒng)必須依照統(tǒng)一的時(shí)間運(yùn)行,才能保證整個(gè)公眾場所的活動(dòng)有序協(xié)調(diào)地進(jìn)行。公共時(shí)鐘系統(tǒng)功能就是為公眾場所提供統(tǒng)一的標(biāo)準(zhǔn)時(shí)鐘,它對公共場所活動(dòng)的正常工作起著非常重要的作用。因此,公共時(shí)鐘系統(tǒng)是一種重要的基礎(chǔ)設(shè)備,已有越來越多的公眾場所建立這樣的公共時(shí)鐘系統(tǒng)。
公共時(shí)鐘系統(tǒng)是個(gè)分布式網(wǎng)絡(luò)系統(tǒng),標(biāo)準(zhǔn)時(shí)鐘通過這個(gè)網(wǎng)絡(luò)傳遞到公眾場所各系統(tǒng)中。目前,人們已經(jīng)利用局域網(wǎng)、CAN網(wǎng)和RS485網(wǎng)實(shí)現(xiàn)了公共時(shí)鐘系統(tǒng)。這些公共時(shí)鐘都是基于有線網(wǎng)絡(luò)的,有其自身的缺陷,如需要事先規(guī)劃布線、成本高、系統(tǒng)構(gòu)建不靈活等。
隨著無線傳感器網(wǎng)絡(luò)的發(fā)展,其非布線、自組織等優(yōu)點(diǎn),為公共時(shí)鐘系統(tǒng)的實(shí)現(xiàn)提供了新的技術(shù)途徑。目前無線技術(shù)有多種,如藍(lán)牙、WiFi及WLAN等。相比它們,ZigBee技術(shù)具有傳輸距離遠(yuǎn)、成本低和組網(wǎng)性能好等優(yōu)勢,已經(jīng)成為目前市場前景最廣闊的無線通信與網(wǎng)絡(luò)新技術(shù)之一。
本文以ZigBee技術(shù)為基礎(chǔ),構(gòu)建了一種公共時(shí)鐘系統(tǒng):首先依照ZigBee的簇狀拓?fù)浣Y(jié)構(gòu)及設(shè)備類型,構(gòu)建了公共時(shí)鐘系統(tǒng)總體結(jié)構(gòu);然后考慮到ZigBee傳輸?shù)牡退傩裕O(shè)計(jì)了一種精度高但簡單的時(shí)鐘同步算法;最后選擇了一種ZigBee專用芯片,設(shè)計(jì)了系統(tǒng)的硬件結(jié)構(gòu),基于ZigBee協(xié)議棧,編制了系統(tǒng)軟件。所設(shè)計(jì)的公共時(shí)鐘系統(tǒng)在某電站辦公綜合樓經(jīng)過了一年的實(shí)驗(yàn)運(yùn)行,實(shí)驗(yàn)結(jié)果表明系統(tǒng)時(shí)鐘同步精度高,運(yùn)行穩(wěn)定可靠。
1 系統(tǒng)總體設(shè)計(jì)
ZigBee技術(shù)具有網(wǎng)絡(luò)自組織的特點(diǎn),它支持星型結(jié)構(gòu)、網(wǎng)狀結(jié)構(gòu)和簇狀結(jié)構(gòu)。星型結(jié)構(gòu)網(wǎng)絡(luò)覆蓋地域有限,而網(wǎng)狀結(jié)構(gòu)網(wǎng)絡(luò)復(fù)雜,實(shí)際中實(shí)現(xiàn)起來困難。因此,本文采用簇狀結(jié)構(gòu)結(jié)構(gòu)來構(gòu)建公共時(shí)鐘系統(tǒng),如圖1所示。
系統(tǒng)中主要包括時(shí)鐘源、中繼路由器、時(shí)鐘終端和監(jiān)控系統(tǒng)。
時(shí)鐘源:接收GPS標(biāo)準(zhǔn)時(shí)間;通過路由器向時(shí)鐘發(fā)送標(biāo)準(zhǔn)時(shí)間;作為協(xié)調(diào)器組織網(wǎng)絡(luò),指定路徑進(jìn)行通信。
中繼路由器:按同步算法接收標(biāo)準(zhǔn)時(shí)間,反饋本地時(shí)鐘給監(jiān)控系統(tǒng),做信息的轉(zhuǎn)發(fā)工作。
時(shí)鐘終端:按同步算法接收標(biāo)準(zhǔn)時(shí)間,反饋本地時(shí)鐘給監(jiān)控系統(tǒng),在LED顯示屏上顯示標(biāo)準(zhǔn)時(shí)間。
監(jiān)控系統(tǒng):負(fù)責(zé)接收、處理和管理接收來的同步系統(tǒng)狀態(tài)數(shù)據(jù),是臺PC機(jī)。
公共時(shí)鐘系統(tǒng)時(shí)間同步所有的任務(wù)都從協(xié)調(diào)器開始,在組網(wǎng)時(shí)每一個(gè)節(jié)點(diǎn)都只有一個(gè)父節(jié)點(diǎn),協(xié)調(diào)器是最大的父節(jié)點(diǎn),協(xié)調(diào)器通過建立一個(gè)節(jié)點(diǎn)信息庫來管理整個(gè)網(wǎng)絡(luò)。同步系統(tǒng)通過中繼路由器將時(shí)間信息傳遞到時(shí)間源的廣播范圍之外,實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)的時(shí)間同步。
可見,公共時(shí)鐘系統(tǒng)遵循分層思想,所謂的一層,實(shí)際上是一個(gè)廣播通信域,在該層之內(nèi)的節(jié)點(diǎn)都在時(shí)間源或路由器的廣播通信域之內(nèi),中心節(jié)點(diǎn)的層次號設(shè)為0。時(shí)間同步過程中,首先對網(wǎng)絡(luò)中的節(jié)點(diǎn)進(jìn)行分層并賦給每個(gè)節(jié)點(diǎn)一個(gè)層次號,然后在每一層中利用時(shí)間同步算法進(jìn)行時(shí)間同步,最后形成全網(wǎng)時(shí)間同步。
2 同步算法設(shè)計(jì)
ZigBee技術(shù)具有低速率和大容量特點(diǎn)。因此,在設(shè)計(jì)公共時(shí)鐘系統(tǒng)時(shí),必須首先建立一個(gè)精簡準(zhǔn)確的時(shí)鐘同步算法。本文給出的時(shí)鐘同步算法如下:
①假設(shè)父節(jié)點(diǎn)與子節(jié)點(diǎn)的時(shí)間偏移量為△t;
②父節(jié)點(diǎn)記錄t1時(shí)間戳,發(fā)送t1和△t編碼給子節(jié)點(diǎn);
③子節(jié)點(diǎn)記錄接收到t1和△t編碼,并啟動(dòng)一精確延遲定時(shí)器,此定時(shí)器計(jì)數(shù)間隔為a;
④子節(jié)點(diǎn)對t1和△t編碼進(jìn)行處理和驗(yàn)證;
⑤若t1和△t編碼無誤,則在定時(shí)器計(jì)數(shù)完畢后,再次啟動(dòng)一精確延遲定時(shí)器,定時(shí)器計(jì)數(shù)間隔為a。同時(shí)子節(jié)點(diǎn)根據(jù)(t1+△t+a)調(diào)整自己的本地時(shí)間;
⑥定時(shí)器計(jì)數(shù)再次完畢后,子節(jié)點(diǎn)記錄當(dāng)前時(shí)刻t3時(shí)間戳,向父節(jié)點(diǎn)回復(fù)t3和a編碼;
⑦父節(jié)點(diǎn)記錄接收到t3和a編碼的時(shí)間戳t4;
⑧父節(jié)點(diǎn)按下式計(jì)算△t;
⑨在下一同步周期,返回②。
這種算法的優(yōu)點(diǎn)為:計(jì)算簡單,同步精度高,同步效率高,同步精度可以實(shí)時(shí)反饋給監(jiān)控系統(tǒng)。因此,上述時(shí)鐘同步算法適合低速、大容量的ZigBee網(wǎng)絡(luò)應(yīng)用。
評論