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