朱曉潔
(1.中煤科工集團常州研究院有限公司,江蘇 常州 213015;2.天地(常州)自動化股份有限公司,江蘇 常州 213015)
監(jiān)測數據是煤礦安全監(jiān)控系統(tǒng)進行分析、決策的基礎,因此保證監(jiān)測數據的一致性和完整性,對于監(jiān)控系統(tǒng)的可靠運行是至關重要的。
由于安全監(jiān)控系統(tǒng)架構復雜,數據傳輸涉及多層節(jié)點,包括傳感器、分站、網關、交換機和地面主機。在監(jiān)控系統(tǒng)運行過程中,可能存在供電不穩(wěn)、網絡中斷、網絡阻塞或系統(tǒng)設備失效等故障,導致監(jiān)測數據無法上傳,影響系統(tǒng)有效決策。為了保證監(jiān)測數據的連續(xù)性,在故障修復后,需要將故障期間的監(jiān)測數據重新上傳。
近年來,斷線續(xù)傳技術在各領域得到廣泛研究。李夏苗等[1]將斷線續(xù)傳應用于中繼衛(wèi)星調度,提高了數傳任務完成率;陳令等[2]在四載波基站遠程升級中采用斷線續(xù)傳技術提高了升級效率和穩(wěn)定性;朱宏志等[3]設計了異構系統(tǒng)的跨節(jié)點斷線續(xù)傳;張震等[4]利用多任務斷線續(xù)傳實現了智能車載域控制器數據的高效傳輸和準確提取。
由于上一代煤礦安全監(jiān)控系統(tǒng)采用時分制總線架構,巡檢周期長,若采用斷線續(xù)傳會影響正常巡檢周期內的數據上傳與控制[5],因此基本不支持斷線續(xù)傳功能。隨著工業(yè)環(huán)網在井下的普及應用,為斷線續(xù)傳提供了高速網絡傳輸通道[6]。目前,煤礦安全監(jiān)控系統(tǒng)經過升級改造,在數據智能采集、數據智能分析和智能控制等方面水平得到了很大提升[7],但是對斷線續(xù)傳的研究仍不多。有的監(jiān)控系統(tǒng)雖然支持斷線續(xù)傳功能,但使用效果并不理想,存在操作復雜、數據漏傳、數值錯誤和數據續(xù)傳耗時長等諸多問題。基于此,針對現有煤礦安全監(jiān)控系統(tǒng)的架構,分析了數據傳輸故障類型及數據特點,提出了一種基于礦用監(jiān)控分站的斷線續(xù)傳設計方案。
目前,主流安全監(jiān)控系統(tǒng)主要采用基于工業(yè)環(huán)網的分布式主從架構[8-9],煤礦安全監(jiān)控系統(tǒng)架構如圖1。
圖1 煤礦安全監(jiān)控系統(tǒng)架構Fig.1 Architecture of coal mine safety monitoring system
地面主機作為系統(tǒng)大腦安裝在地面,網關和各種交換機構成傳輸網絡,監(jiān)控分站和傳感器根據實際需求在井下分布安裝。傳感器數據通過RS485 等現場總線上傳至分站,分站通過網關或直接采用網絡通信將數據傳輸至地面主機。分站與上位機之間的數據傳輸稱為主通信,根據主通信方式將分站分為總線型分站和網絡型分站。
從傳感器數據流向來看,監(jiān)測數據經過傳感器、分站和網關上傳至主機,在此過程中,主要可能出現以下幾種數據傳輸故障[10-11]:①傳感器與分站通信中斷;②分站與上位機通信中斷;③分站與網關通信中斷;④網關與主機通信中斷。由于第1 種情況中分站功能失效,只能通過傳感器實現數據存儲及續(xù)傳;第2 種和第3 種情況,可通過分站進行斷線續(xù)傳;由于網關在系統(tǒng)中作為巡檢主站及數據透傳設備,不具備數據存儲功能,因此第4 種情況同樣需由分站完成數據存儲及續(xù)傳。為此,針對后3 種故障類型,采用基于分站的斷線續(xù)傳設計方案。
分站斷線續(xù)傳主要實現數據存儲和數據傳輸2 個功能。斷線續(xù)傳流程如圖2。
圖2 斷線續(xù)傳工作流程Fig.2 Workflow for continuous transmission after disconnection
首先分站監(jiān)測與網關或主機的通信狀態(tài),當主通信中斷無法傳輸數據時,觸發(fā)分站斷線存儲機制,對傳感器數據進行預處理并保存。待主通信恢復正常后,分站讀取存儲器數據,進行續(xù)傳準備,在與主機達成一致后,將續(xù)傳數據按照通信規(guī)約組織成數據包,發(fā)送至地面主機。
根據分站主通信方式分類,分別分析網絡型分站和總線型分站的數據傳輸故障檢測方法。
1)網絡型分站主通信故障檢測。網絡分站與主機間采用UDP 協(xié)議通信。由于UDP 為OSI 參考模型中1 種無連接的傳輸層協(xié)議,僅提供面向事務的簡單不可靠信息傳送[12]。為解決不可靠問題,主機與分站通信時,建立握手機制,從而保證可靠的通信傳輸。分站與主機通信模型如圖3。分站通過監(jiān)聽主機心跳進行故障判斷;監(jiān)控系統(tǒng)運行時,主機定時發(fā)送心跳,分站監(jiān)測到心跳表示通信成功,若超時未接收到心跳,則判定與主機通信中斷。
圖3 分站與主機通信模型Fig.3 Communication model between substation and host
2)總線型分站主通信故障檢測。網關與主機的通信機制與網絡分站一致,與分站之間通過下發(fā)巡檢或時隙命令建立通信。當網關與主機通信中斷時,停止發(fā)送巡檢命令。分站監(jiān)聽網關的巡檢命令,當超時未收到巡檢時,判定與網關通信中斷或網關與主機通信中斷。
為了實時監(jiān)測井下真實生產環(huán)境,要求感知層傳感器實時上傳過程數據,因此分站對傳感器采樣頻率高,時間序列維度高,產生的數據量大[13]。在被測環(huán)境或參數穩(wěn)定條件下,采集數據一般不會出現大的波動,有時因探頭采集靈敏度問題可能出現數據上下浮動變化。頻繁采樣得到重復數據或小幅變化數據,不僅浪費存儲空間,還占用傳輸網絡帶寬,降低了監(jiān)控系統(tǒng)數據分析效率。
結合監(jiān)控系統(tǒng)功能及傳感器特點,對監(jiān)測數據進行篩選。井下傳感器主要分為模擬量和離散量。模擬量為連續(xù)變化量,離散量為非連續(xù)變化量。對于模擬量傳感器,主要包括變化、報警、斷電和故障4 種狀態(tài),其中報警、斷電和故障屬于重要數據,需實時處理。對于離散量傳感器,包括0 值、1 值、故障3 種狀態(tài)。分站采樣得到傳感器數據后,以偏移時間作為數據時間標識,采用“不變不存”的原則篩選數據,避免數據重復存儲和處理。
1)模擬量數據預處理方法。在模擬量傳感器量程范圍內按照數據重要程度進行分段,并設定存儲閾值。以掘進工作面T1瓦斯傳感器量為例,分別設置報警的瓦斯體積分數為1.0%、斷電的瓦斯體積分數為1.5%。由于斷電門限高于報警門限,故采用報警的瓦斯體積分數的70%作為分段依據,將瓦斯體積分數值分成2 個區(qū)間:[0%,0.7%]、(0.7%,4.0%]。當瓦斯體積分數值不大于0.7%時,根據存儲閾值進行篩選,當瓦斯體積分數值大于0.7%時,數據一旦變化立即保存。瓦斯傳感器數據預處理結果見表1,其中瓦斯體積分數存儲閾值為0.2%。
表1 瓦斯傳感器數據預處理Table 1 Gas data preprocessing
2)離散量數據預處理方法。由于離散量傳感器存在短時反復跳動,根據離散量數值持續(xù)時間,分成穩(wěn)態(tài)和暫態(tài)2 種狀態(tài)。穩(wěn)態(tài)數值用8bit表示,00000000b 表示0 值,11111111b 表示1 值,11110000b 表示故障態(tài)。暫態(tài)數值用1bit 表示。以開停傳感器為例,數值持續(xù)3 s 不變?yōu)榉€(wěn)態(tài),開停傳感器數據預處理結果見表2。
表2 開停傳感器數據預處理Table 2 Switch data preprocessing
監(jiān)控分站的數據存儲設計包括存儲格式、存儲容量和存儲策略3 個方面[14]。
1)存儲格式。存儲格式示例圖如圖4。為了便于存儲、檢索和傳輸,采用二級目錄方式進行數據存儲。一級目錄為日期,二級目錄為時間。在二級目錄下為每個傳感器單獨開辟存儲空間,文件命名格式為:測點類型_測點編號。傳感器數據采用二進制格式進行存儲,以秒為最小存儲時間單位,數據內容為:時間偏移+傳感器數值。
圖4 存儲格式示例圖Fig.4 Sample storage format diagram
2)存儲器件。假設分站有4 個RS485 通信端口,與傳感器的通信速率為2 400 bps。結合巡檢時間、幀間隔和傳感器響應時間計算,分站巡檢傳感器時間為20 ms,由此分站1 s 內可接收20 個測點數據。按照上文中1 個測點信息最多占用4 Byte,存儲1 h 的數據需要280 kB。由于監(jiān)控系統(tǒng)出現故障后,礦上人員會及時采取措施處理,通常故障持續(xù)時間較短,因此按照7 d 的存儲需求設計,需要50 MB 存儲空間,故選用128 MB 的FLASH存儲器??紤]到FLASH 采用塊擦方式且讀寫次數有限制,為了延長器件使用壽命,采用二級存儲方式,鐵電存儲器作為第1 級存儲器,FLASH 作為第2 級存儲器。
3)存儲策略。按照二級存儲方式,先將數據緩存在鐵電存儲器中,當超過規(guī)定文件大小時,再將鐵電存儲器的數據重新寫入FLASH 中。在進行FLASH 數據存儲時,首先生成存儲路徑和文件名,判斷是否存在對應文件,若文件存在則采用追加寫入的方式在文件尾進行數據填充,否則創(chuàng)建新文件寫入數據。當存儲數據超過規(guī)定容量時,需刪除最早建立的文件,再創(chuàng)建新的文件。
1)網絡型分站數據續(xù)傳。當分站存在待續(xù)傳數據時,判斷文件名是否與主機配置一致,若配置一致,則讀取文件內容,進行數據校驗,并按照規(guī)定的格式組織報文上傳,報文格式為:剩余幀數+測點編號+數據內容。分站收到主機的通信握手表示數據上傳成功,接著準備下1 幀續(xù)傳數據,否則持續(xù)上傳上1 幀數據。為了不影響實時數據傳輸,分站首先確認是否存在實時數據,在無實時數據需傳輸的情況下方可進行數據續(xù)傳。
2)總線型分站數據續(xù)傳。總線型分站數據續(xù)傳框架如圖5??偩€型分站數據續(xù)傳分為2 個步驟:①由主機根據分站的故障情況,指定分站數據續(xù)傳時間,分站收到命令后,遍歷該時間目錄下所有的測點,找出與當前分站配置相一致的傳感器文件,加總計算得出總幀數告知主機;②主機發(fā)送續(xù)傳數據幀序號,分站根據幀序號讀取相應傳感器數據進行打包上傳。
圖5 總線型分站數據續(xù)傳框架Fig.5 Bus type substation data continuation framework
分站采用NXP 公司的i.mx6ull 芯片作為處理器,擴展128 M 的NandFLASH 和4 M 鐵電存儲器用于數據存儲。為了測試滿載條件下分站斷線續(xù)傳性能,按照分站最大容量,接入31 臺模擬傳感器。在[0,100]區(qū)間內,傳感器每隔2 s 以0.01的變化頻率進行自增或自減,模擬測點值變化上傳。
1)分站斷線續(xù)傳功能驗證。開啟分站斷線續(xù)傳功能,并中斷分站主傳輸通信,7 d 后恢復主通信。測點密采曲線如圖6(每日的采樣日刻均為17:25)。查看主機上測點密采曲線,在分站故障期間,起初密采曲線是空白的,讀取斷線續(xù)傳數據后,空白區(qū)域被斷線續(xù)傳數據填充,斷線續(xù)傳數據用虛線表示。通過比對傳感器上傳數據和主機獲取的續(xù)傳數據,數據完整率達到100%。在續(xù)傳過程中,分站實時數據上傳功能運行正常。
圖6 測點密采曲線Fig.6 Dense sampling curves of measuring points
2)分站斷線續(xù)傳時間測試。根據分站主通信中斷1、5、12 h 3 種情況,分別測試總線型分站與網絡型分站的數據續(xù)傳時間,其中總線型分站傳輸速率為4 800 bps。網絡型分站數據續(xù)傳每幀平均耗時0.4 s,總線型分站數據續(xù)傳每幀平均耗時1 s。
基于分站的斷線續(xù)傳方案,在分站主通信或上級設備故障時可將數據緩存在分站中,并在故障修復時將數據傳輸至主機,填補監(jiān)控系統(tǒng)歷史數據庫,有效解決了分站上級設備故障或通信故障導致的數據缺失問題,保證了數據的完整性,避免因數據缺失導致監(jiān)控系統(tǒng)控制決策受影響,或出現井下環(huán)境趨勢預測精度差的問題。對于分站下行通信的故障,需進一步研究基于傳感器的斷線續(xù)傳方案。