關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 分布式數據采集系統中的時鐘同步

        分布式數據采集系統中的時鐘同步

        作者:重慶大學 王驥 張玲 時間:2008-07-14 來源:單片機與嵌入式系統應用 收藏

          1.3 同步實現

        本文引用地址:http://www.104case.com/article/85655.htm

          如圖2所示,從端發出延遲統計包,主端反饋后,從端求得Delay。在每個整秒左右時刻收到同步包后,進行時鐘修正,即從屬時鐘與主時鐘實現了精確同步[5]。

        圖2 同步過程

          2 系統簡介

          系統屬于局域網構架,單元間通過網絡進行數據交互,由集線器和微采集系統組成,每個微采集器成為一個獨立“單元”。可以支持一主多從的模型:設置其中一個微采集系統作為主單元,其他的作為從單元。分布系統結構框圖如圖3所示。

        圖3 分布數據采集系統結構框圖

          各個單元的設計完全相同,均由一個系統控制板和多個功能板構成。系統控制板是采集器的核心,它控制著單元內的各個功能卡的配置和單元內的數據傳輸,同時保持與外部通信。功能板用以實現A/D、FIFO處理等功能,用于數據采集和傳送。各個單元中的所有板卡皆采用獨立時鐘。

          此分布式采集系統中各個單元構成一個星形網。系統控制板成為星形網絡中的節點,節點間用網線相連。系統符合協議IEEE802.3、CSMA/CD標準,可以與標準的以太網完美兼容。

          3 基于的實現

          3.1 分布式系統中各個單元的體系結構

          由于開發靈活,精度上能達到系統要求,開發周期短,且成本低。系統中各個系統控制板采用技術,即采用微控制器及其對應的外設接口和相應的軟件來實現[6]。利用Nios II處理體系,將系統劃分為各個功能模塊,并考慮到系統所需的資源和生成代碼的大小。設計的系統由以下幾部分組成:Altera的Cyclone系列芯片,包括嵌入Nios II軟核、系統定時器、同步時鐘定時器、DM9000A以及Avalon總線等設計。

          網絡接口芯片DM9000A實現以太網媒體介質訪問層(MAC)和物理層(PHY)的功能。系統采用無鏈接的UDP通信,且采用多個定時器,用于和工作周期的制定。

          3.2 具體軟件設計流程

          同步定時器每秒鐘產生一次中斷。作為同步時鐘,另一個定時器將一個同步周期劃分為幾個等時段,為工作周期。主從單元通過網絡互相交換數據,在每一個系統周期內將各自的數據發送到網絡中。為了預防發送時刻點的沖突,在配置信息中注明每個周期該單元的發送時刻。

          系統有以下幾種狀態:初始狀態、預同步狀態、實時工作狀態。

          ① 初始狀態:分布式系統上電后,主從單元進入初始狀態對各項參數進行初始化,注冊timer中斷和網絡中斷等。初始化后進入預同步狀態。

          ② 預同步狀態:主要是每小時進行一次網絡延時的測量,然后從端會將自己與主端的一次傳輸時延保存起來。

          ③ 實時工作狀態:預同步完畢后各單元進入實時工作狀態。一小時后又再次進入預同步狀態。實時工作狀態將處理多個線程。

          (1) 同步線程

          ① 主單元,將同步timer的周期置為1 s的同步約定周期,即每1s產生1次中斷。主單元會在每秒到來時刻(中斷),發出同步包(syns)。

          ② 從端在接收到同步包后,調整定時器時鐘為同步包內時刻與時延之和。

          (2) 數據傳輸

          線程系統在避開同步階段的時刻進行實時數據的傳輸,主要是根據系統對各個工作周期的劃定。

          (3) 數據采集和處理線程

          由系統中各單元的各自任務來決定,不占用網絡。對傳感器采集數據進行處理,同時也處理網絡傳送來的數據。

          4 同步測試

          在系統的實時工作狀態下,驗證其同步效果。由于同步定時器產生的脈沖為一個系統時鐘寬度(32MHz),不便于觀察。為了便于演示,主從端都在定時器產生的同步時鐘上升沿到達時將同步信號置1,主單元在發送完同步包后將同步信號置0;從單元則在收到同步包后將同步信號置0。這樣得到的信號與定時器產生的同步時鐘是同頻的,只是放寬了脈沖寬度。同步效果如圖4所示。

        圖4 同步效果

          圖4 (a)中,每個柵格為500 ms;圖4(b)將其放大1 000倍,每柵格為500μs。每幅圖中,上面的1通道為主單元同步信號,下面的2通道為從單元同步信號。由圖4(a)可見,同步時鐘周期為1 024 ms。

          由于從單元是在收到同步包后,將信號置0,必定滯后于主單元發送同步包時刻(主端將同步信號置0時刻),從圖4(b)中可見,從單元脈沖寬度比主單元寬,因此只需比對同步信號的上升沿。圖4(b)是將圖像保持時間置為無限,信號上升沿處陰影表示運行時間以來的偏移情況。測試時間為24h(小時),測量陰影的長度Δx=20 μs(上升沿偏移),即為同步效果最大的同步偏差可以控制在20 μs以內。

          5 結論

          由于系統工作于局域網,借鑒IEEE1588協議思想,提出并實現了簡易的設想;占用資源少,精度高,可行性高。驗證是在實時工作狀態下測試的,并將同步偏差控制在20μs,滿足的要求;同時,以FPGA技術為載體,軟件開發平臺為Nios II,易于系統移植和功能擴展。鑒于方案的高效和高可行性,可以進一步推廣到其他分布式局域網的應用系統中。

          參考文獻

          [1] 王娜, 慕德俊. 分布式試驗系統管理中的時鐘同步技術研究[J]. 電子技術應用,2006(12): 25-27.

          [2] 桂本烜,馮冬芹,褚健,等. IEEE1588的高精度時間同步算法的分析與實現[J]. 工業儀表與自動化裝置,2006(4):20-23.

          [3] IEEE1588, Standard for a Precision Clock Synchronization Protocol forNetworkedMeasurementandControl Systems[S],IEEE15882002 Standard, November 2002.

          [4] Ferrari P,Flammini A, Marioli D,et al. IEEE 1588based Synchronization System for a Displacement Sensor Network[C]. Instrumentation and Measurement Technology Conference, 2006.

          [5] Depari A, Ferrari P, Flammini A,et al. Evaluation of Timing Characteristics of Industrial Ethernet Networks Synchronized by means of IEEE 1588[C]. Instrumentation and Measurement Technology Conference,2007.

          [6] 彭澄廉,周博,等. 挑戰SOC——基于NIOS的SOPC設計與實踐[M]. 北京: 清華大學出版社,2004: 12-15,148-152.</P>


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 沐川县| 云梦县| 阿坝县| 甘孜| 常州市| 延津县| 平安县| 会理县| 绥滨县| 灯塔市| 茌平县| 林芝县| 白河县| 尉犁县| 富锦市| 葫芦岛市| 长葛市| 洪泽县| 泊头市| 健康| 星座| 荥经县| 宿迁市| 广宗县| 眉山市| 扎兰屯市| 南开区| 安吉县| 南充市| 东丽区| 双峰县| 两当县| 上杭县| 得荣县| 军事| 宝山区| 许昌市| 永丰县| 英山县| 株洲市| 安福县|