文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.01.021
中文引用格式: 魏亞敏,李軼,張申,等. 礦山物聯(lián)網(wǎng)時(shí)間同步系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(1):81-83.
英文引用格式: Wei Yamin,Li Yi,Zhang Shen,et al. Design and implementation of time synchronization system of mine IoT[J].Application of Electronic Technique,2017,43(1):81-83.
0 引言
礦山物聯(lián)網(wǎng)要進(jìn)行分布式測量,生產(chǎn)環(huán)境需通過多樣泛在式的傳感器對礦山環(huán)境、生產(chǎn)設(shè)備健康、工作人員安全等進(jìn)行實(shí)時(shí)監(jiān)測、感知、保障,實(shí)現(xiàn)礦井及時(shí)定位、事故問題反應(yīng)[1]等功能。而這些業(yè)務(wù)的實(shí)現(xiàn)和正常工作,必須要保證各傳感器或節(jié)點(diǎn)間具有準(zhǔn)確、統(tǒng)一的時(shí)鐘同步。物聯(lián)網(wǎng)時(shí)間同步概念的提出,可充分滿足礦井系統(tǒng)中對生產(chǎn)自動(dòng)化和信息化的高標(biāo)準(zhǔn)要求[2]。本文研究設(shè)計(jì)了一種礦山物聯(lián)網(wǎng)時(shí)間同步方案,并采用現(xiàn)今具有較高性價(jià)比的、基于STM32F407的IEEE 1588方案實(shí)現(xiàn),極好地滿足了各種應(yīng)用要求,尤其在中高端工業(yè)控制的分布式應(yīng)用中具有較高的市場價(jià)值和工程意義。
1 時(shí)間同步系統(tǒng)
1.1 系統(tǒng)方案
針對已有的礦山網(wǎng)絡(luò)環(huán)境,為了減少網(wǎng)絡(luò)的重復(fù)建設(shè),希望在現(xiàn)有的主干網(wǎng)絡(luò)環(huán)境下實(shí)現(xiàn)時(shí)間同步[3]。因此采用了如下時(shí)間同步系統(tǒng)方案。
井上父時(shí)鐘通過GPS或北斗模塊與標(biāo)準(zhǔn)時(shí)間同步,獲得當(dāng)前的精確時(shí)間[4];井下時(shí)間同步節(jié)點(diǎn)通過支持交換機(jī)與子網(wǎng)中的父時(shí)鐘進(jìn)行時(shí)間同步,獲得當(dāng)前子網(wǎng)內(nèi)的精確時(shí)間,完成時(shí)間同步;井下時(shí)間同步節(jié)點(diǎn)完成時(shí)間同步后開始進(jìn)行數(shù)據(jù)采集,將采集到的數(shù)據(jù)加上時(shí)間戳并進(jìn)行數(shù)據(jù)壓縮后通過數(shù)據(jù)傳輸子網(wǎng)傳輸?shù)綌?shù)據(jù)中心,從而實(shí)現(xiàn)全網(wǎng)數(shù)據(jù)的精確時(shí)間同步。圖1為時(shí)間同步系統(tǒng)方案圖。
1.2 設(shè)計(jì)實(shí)現(xiàn)
IEEE1588協(xié)議采用軟硬件結(jié)合的方式,可實(shí)現(xiàn)高精度的時(shí)間同步[5]。其精度可優(yōu)于NTP(Network Time Protocol),而且達(dá)到次毫秒級同步精度[6]的同時(shí)對系統(tǒng)資源的耗費(fèi)并不很高。IEEE1588協(xié)議針對網(wǎng)絡(luò)化、本地化的系統(tǒng)設(shè)計(jì),適用于分布式工業(yè)網(wǎng)絡(luò)的各種應(yīng)用。IEEE1588協(xié)議可基于標(biāo)準(zhǔn)TCP/IP協(xié)議棧設(shè)計(jì),這極大地?cái)U(kuò)展了其應(yīng)用范圍[7]。
IEEE1588協(xié)議實(shí)現(xiàn)利用STM32F407提供的硬件開發(fā)功能開發(fā)驅(qū)動(dòng)并編寫IEEE1588協(xié)議軟件部分,以此實(shí)現(xiàn)整體IEEE1588協(xié)議棧。結(jié)構(gòu)圖如圖2。
TCP/IP是IEEE1588協(xié)議報(bào)文傳輸?shù)妮d體,所以必須選擇合適的通信載體,即合適的TCP/IP協(xié)議棧。本文選擇Lwip協(xié)議棧[8]。
2 時(shí)間同步節(jié)點(diǎn)硬件總體方案
本文以微控制器STM32F407為硬件系統(tǒng)核心,采用以太網(wǎng)物理層收發(fā)器DP83848進(jìn)行底層網(wǎng)絡(luò)通信,實(shí)現(xiàn)系統(tǒng)節(jié)點(diǎn)的硬件結(jié)構(gòu)。硬件總體框架圖如圖3所示。
從圖3可以看出,硬件系統(tǒng)由主芯片STM32F407和一些外設(shè)接口構(gòu)成,外設(shè)接口主要包括以太網(wǎng)接口、串口等,這些接口負(fù)責(zé)對外部信號的發(fā)送或者接收。測試時(shí)可通過觀察輸出的PPS脈沖分析同步精度。電源模塊為系統(tǒng)中所有模塊提供動(dòng)力。串口用于接收用戶配置的參數(shù)并輸出當(dāng)前系統(tǒng)信息,主要用于系統(tǒng)監(jiān)控和調(diào)試。以太網(wǎng)接口用于TCP/IP通信,完成對網(wǎng)絡(luò)中數(shù)據(jù)的接收和發(fā)送。
3 時(shí)間同步節(jié)點(diǎn)軟件設(shè)計(jì)
3.1 IEEE1588同步原理
時(shí)間同步系統(tǒng)中主時(shí)鐘、從時(shí)鐘相互發(fā)送各類報(bào)文實(shí)現(xiàn)了IEEE1588協(xié)議的精確時(shí)間同步。IEEE1588同步過程可以被分為偏移測量和延時(shí)測量兩個(gè)階段[9,10]。
toffset表示主時(shí)鐘與從時(shí)鐘之間的偏差,tmtsdelay表示報(bào)文傳輸中主時(shí)鐘到從時(shí)鐘的延遲,tstmdelay表示報(bào)文傳輸中從時(shí)鐘到主時(shí)鐘的延遲。時(shí)間關(guān)系為:
3.2 協(xié)議實(shí)現(xiàn)流程設(shè)計(jì)
本文采用的時(shí)間同步協(xié)議流程如圖4所示。
在該時(shí)間同步協(xié)議流程中,優(yōu)化去除原有時(shí)間同步協(xié)議流程中的最佳主時(shí)鐘算法,默認(rèn)井上控制時(shí)鐘為主時(shí)鐘,井下時(shí)鐘為從時(shí)鐘,以節(jié)約系統(tǒng)運(yùn)行時(shí)間。在本地時(shí)鐘接收到有效同步報(bào)文后,直接對報(bào)文進(jìn)行解包,解包之后判斷是否接收超時(shí),未超時(shí)則繼續(xù)接收跟隨報(bào)文,超時(shí)則重新接收同步報(bào)文。
4 優(yōu)化設(shè)計(jì)以及系統(tǒng)測試
4.1 優(yōu)化設(shè)計(jì)
通過前期對協(xié)議棧內(nèi)各函數(shù)運(yùn)行時(shí)間的分析發(fā)現(xiàn),協(xié)議棧內(nèi)時(shí)鐘伺服函數(shù)運(yùn)行時(shí)間最長,占用CPU資源較多。針對此問題,提出將協(xié)議棧內(nèi)計(jì)算一路延遲的IIR濾波器、主從偏差FIR濾波器及PI控制器采用STM32F407內(nèi)部的DSP模塊加速進(jìn)行處理的方法[11]。
圖5為未優(yōu)化伺服函數(shù)的程序CPU資源占用率與優(yōu)化伺服函數(shù)后程序的CPU資源占用率對比,CPU資源占用率減少了16.28%。
4.2 系統(tǒng)測試
系統(tǒng)測試連接方案如圖6所示,將STM32開發(fā)板的主機(jī)、從機(jī)連接交換機(jī),計(jì)算機(jī)連接交換機(jī)。通過觀察示波器上從STM32上輸出的PPS信號,觀察主從設(shè)備是否同步以及同步誤差。
在系統(tǒng)實(shí)物連接中,利用示波器觀察脈沖同步波形,將主時(shí)鐘PTP秒脈與從時(shí)鐘接收到的脈沖進(jìn)行比較,圖7為多次同步誤差分析圖。由圖可知,主、從機(jī)在達(dá)到穩(wěn)定同步后,同步誤差可在較長時(shí)間控制于100 ns之內(nèi)。
5 結(jié)論
時(shí)間同步是礦山物聯(lián)網(wǎng)分布式測量、定位、事故救援各系統(tǒng)協(xié)同運(yùn)轉(zhuǎn)的關(guān)鍵。本文提出了井下時(shí)間同步系統(tǒng)方案及實(shí)現(xiàn),并通過對噪聲進(jìn)行濾波的方法解決了時(shí)間同步伺服函數(shù)對系統(tǒng)資源占用率較高的問題。實(shí)驗(yàn)測試表明,該設(shè)計(jì)同步精度高,工作穩(wěn)定可靠,可擴(kuò)展性強(qiáng),能夠較好地滿足現(xiàn)有礦山物聯(lián)網(wǎng)應(yīng)用對時(shí)間同步的需求,具備較高的實(shí)用和推廣價(jià)值。
參考文獻(xiàn)
[1] 張申,丁恩杰,徐釗,等.物聯(lián)網(wǎng)與感知礦山專題講座之二——感知礦山與數(shù)字礦山、礦山綜合自動(dòng)化[J].工礦自動(dòng)化,2010(11):129-132.
[2] 陳珍萍,黃友銳,唐超禮,等.物聯(lián)網(wǎng)感知層低能耗時(shí)間同步方法研究[J].電子學(xué)報(bào),2016(1):193-199.
[3] 王盼,張鋒,吳海,等.礦井節(jié)點(diǎn)地震儀低功耗時(shí)間同步系統(tǒng)設(shè)計(jì)[J].煤炭技術(shù),2015(1):263-265.
[4] 趙龍,李本喜,王皓,等.GPS精密授時(shí)系統(tǒng)在煤礦微震監(jiān)測定位中的應(yīng)用[J].黑龍江大學(xué)自然科學(xué)學(xué)報(bào),2005(6):819-821.
[5] 陳大峰,白瑞林,鄒駿宇.嵌入式設(shè)備的精確時(shí)鐘同步技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2013(4):82-86.
[6] 徐立,趙平.基于IEEE 1588精確時(shí)鐘同步軟件實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2010(24):47-50.
[7] 王力生,梅巖,曹南洋.輕量級嵌入式TCP/IP協(xié)議棧的設(shè)計(jì)[J].計(jì)算機(jī)工程,2007(2):246-248.
[8] 孫樂鳴,江來,代鑫.嵌入式TCP/IP協(xié)議棧LWIP的內(nèi)部結(jié)構(gòu)探索與研究[J].電子元器件應(yīng)用,2008(3):79-82.
[9] 庾智蘭,李智.IEEE1588精密時(shí)鐘同步協(xié)議的分析與實(shí)現(xiàn)[J].電子測量技術(shù),2009(4):56-58.
[10] 桂本烜,馮冬芹,褚健,等.IEEE1588的高精度時(shí)間同步算法的分析與實(shí)現(xiàn)[J].工業(yè)儀表與自動(dòng)化裝置,2006(4):20-23.
[11] 張文亮,田沛,劉暉,等.基于FreeRTOS的lwip協(xié)議棧的移植與測試[J].自動(dòng)化技術(shù)與應(yīng)用,2015(11):25-29.
作者信息:
魏亞敏1,2,李 軼1,2,張 申2,張 然1,2
(1.中國礦業(yè)大學(xué) 信息與電氣工程學(xué)院,江蘇 徐州221008;
2.中國礦業(yè)大學(xué) 物聯(lián)網(wǎng)(感知礦山)研究中心,江蘇 徐州221008)