于玉珠,殷春莉
(1.新疆華隆油田科技股份有限公司,克拉瑪依834000;2.新疆油田公司數據公司)
我國石油資源分布廣,開采環境比較惡劣,采油輸油覆蓋面廣且大多在野外。隨著開采規模和區域的逐年擴大,為了提高石油生產效率和管理水平,將油田生產管理方式由事后現場被動管理轉變為事先遠程主動管理,保障油田的安全生產,提高處理油田突發事件的應急能力。這就要求實現生產數據自動采集、遠程監控、生產預警,以及“無人值守、集中監控、定期巡檢、自動操作”。[1]
物聯網技術的快速發展,為油田生產提供了新的思路和方法,在油田數據采集[2]、遠程監控以及地面全面信息化等領域有非常廣闊的應用前景。物聯網控制系統不僅可以實現跨地域實時協同工作,緊密連接生產的各個環節,而且還可以實現油田業務與技術的整合,為后期的大數據云服務提供數據源基礎。
油田采輸物聯網監控系統由物聯網監控單元、無線數據傳輸網和監控中心組成,如圖1所示。物聯網監控單元是系統的核心和基礎,它獲取現場數據信息、下達執行指令,并通過無線數據傳輸網向遠程監控中心傳輸現場數據信息并接收監控中指令。
物聯網監控單元的物聯網云控制器主要由ARM低功耗微處理器[3]、無線通信模塊、外圍電路構成,附加現場傳感器和執行機構。實現以下主要功能:
①實時現場感知數據的采集與處理,并建立Client與Server的連接,然后把實時數據上傳到監控中心服務器,供云服務處理。

圖1 系統應用拓撲圖
②實時把遠程監控中心云服務相關執行指令或本地閉環控制指令下發到執行機構執行。
③通過分布廣泛的通信運營商無線通信網,實現與提供云服務的遠程監控中心連接。
監控中心主要是建立監控中心數據服務器,接收現場實時數據,下達現場實時執行指令,并與云服務系統進行實時數據交互。
與現有現場控制系統相比,本系統有以下特點:
①無線數據通信采用運營商的GPRS專用APN模式,覆蓋范圍廣、安全性相對高,適合油田采輸生產點分散、偏遠、自有數據網無法覆蓋的特點。
②可遠程無線實時監控,便于后端利用云計算處理。
③低功耗,可用電池供電,解決了電網無法覆蓋偏遠地區的監控問題。
物聯網云控制器的硬件接口如圖2所示,現場各種標準信號通過對應的I/O口輸入到微處理器LPC11C14FBD48,經過處理后傳送到M35,通過GPRS傳輸到遠端監控中心。同時微處理器把接收到的遠端監控中心指令或自身閉環控制指令,通過相應的I/O口傳到現場執行機構。CAN總線用于物聯網監控單元之間的數據與指令的交互連接,便于端口擴展。RS232[4]用于本地監控和內核程序下載、升級等。

圖2 主控板硬件接口圖
主控板實物圖如圖3所示。

圖3 主控板實物圖
基于ARM Cortex-M0架構的微處理器體積小、功耗低且十分節能。該系列處理器擁有超小的硅片面積和很小的代碼足跡,以8位處理器的價位就能實現32位性能。Cortex-M0可大大節約系統成本,同時保留了與Cortex-M3等功能豐富的處理器的工具和二進制兼容。[3]
Cortex-M0處理器在通常不到12K門的面積內的功耗僅為85μW/MHz,可支持創建超低功耗的模擬和混合信號器件。僅有56個指令,可以使開發人員快速掌握整個Cortex-M0指令集,其對C語言友好的架構,使開發變得簡單而快速。
本系統主要功能是現場數據采集處理并上傳至遠程監控中心和云服務中心,接收遠程監控中心和云服務中心的指令及自身閉環指令并下發,對現場設備進行控制[5]。現場一般比較偏遠、分散且環境惡劣,同一處所需的監控點一般較少,因此功耗、成本、環境適應性、遠程通信能力是主要要考慮的指標。目前微處理器種類繁多,本系統采用的LPC11C14FBD48是NXP公司基于ARM Cortex-M0的低成本32位微處理器,提供高性能、低功率、簡單指令集和內存尋址,與現有8位/16位架構相比,代碼尺寸更小;提供低動態功耗(110μA/MHz)并減小深度睡眠電流(小于2 μA);片內功率配置可以針對任何低功率應用進行優化,使設計師通過最少的設計干預實現最佳功耗。該處理器主頻為50 MHz,具有3.3 V單電源(2.6 V~3.6 V)、ADC、C_CAN控制器[4]、32 KB閃存、8 KB SRAM、LQFP48封裝,外部時鐘晶振頻率為12 MHz,LPC11C14FBD48的關聯電路及主要資源分配圖略——編者注。
由于主控模塊上傳監控數據流量較小,同時考慮日常全天候運行、偏遠地區的覆蓋、技術成熟與穩定性、日常運行費用等,無線通信方式采用運營商的GPRS方式。無線通信模塊采用上海移遠的M35無線GSM/GPRS通信模塊。M35是四頻GSM/GPRS模塊,尺寸僅為19.9 mm×23.6 mm×2.65 mm。憑借超小的尺寸、超低功耗和寬工作溫度范圍,M35是M2M應用的理想解決方案。適用于車載、工業及PDA、個人跟蹤、無線POS、智能計量以及其他M2M的應用,為其提供完善的GSM/GPRS短信、數據傳輸及語音服務。M35采用LCC封裝,可通過標準SMT設備實現模塊的快速生產,為客戶提供高可靠性的連接方式,特別適合自動化、大規模、低成本的現代化生產方式。憑借內置獨特的移遠遠程升級技術(QuecFOTATM),M35可實現遠程升級及維護。本系統的M35無線通信模塊的電路設計如圖4所示。

圖4 GPRS通信模塊電路設計
物聯網云控制器的軟件設計主要包括現場控制器本身的內核軟件和遠程的監控中心軟件。內核軟件是對控制器現場硬件資源進行分配與管理、數據處理和數據通信、系統初始化等。監控中心軟件負責接收現場傳輸來的數據,進行數據處理、存儲、顯示以及向現場設備發送控制指令等,同時與云計算服務中心進行數據交互。
3.1.1 系統架構
內核軟件是基于μC/OS-II開發的多線程程序,采用C/S模式與遠程服務器進行數據通信[6]。系統共創建了6個功能任務線程,每個線程都使用一個while(1)條件語句來實現無限循環,用以實現系統24小時全天候不間斷的功能任務,單個線程相當于一個功能子系統。設計的軟件看門狗用于防止系統死機,心跳檢測功能則用于防止與遠程監控中心通信假鏈。內核軟件系統的主流程如圖5所示。

圖5 主程序流程圖
主要數據結構等內容略——編者注。
3.1.2 內核開發工具
內核軟件的開發采用C++語言,開發工具選擇Real View MDK4.01。Real View MDK是ARM公司推出的基于微控制器的專業嵌入式開發工具。它采用了ARM的最新技術工具RVCT,集成了享譽全球的μVision IDE,因此特別易于使用,同時具備非常高的性能。與ARM之前的工具包ADS等相比,Real View編譯器的最新版本可將性能改善超過20%。
Real View開發界面如圖6所示。

圖6 RealView開發界面
3.2.1 監控中心開發工具
監控中心軟件使用的是C++Builder 2010開發環境,開發語言是C++語言。C++Builder是由Embarcadero公司推出的一款可視化集成開發工具。C++Builder具有快速的可視化開發環境,只要簡單地把控件(Component)拖到窗體(Form)上,定義它的屬性,設置它的外觀,就可以快速地建立應用程序界面。C++Builder內置了許多完全封裝了Windows公用特性且具有完全可擴展性(包括全面支持ActiveX控件)的可重用控件。C++Builder具有一個專業C++開發環境所能提供的全部功能:快速、高效、靈活的編譯器優化,逐步連接,CPU透視,命令行工具等。
3.2.2 系統架構
監控中心軟件是基于TCP/IP開發的事件驅動型軟件,采用C/S方式通過GPRS與遠端現場物聯網云控制器進行數據通信。通過ServerSocket控件的OnClient Read事件處理函數ServerSocketClient Read接收遠程數據,根據需要進行處理后顯示并存入實時庫。根據系統數據處理需要,通過ServerSocket-﹥Socket-﹥Connections[i]-﹥Send Text()向遠端現場物聯網云控制器發送數據或指令。通過定時器,定時把實時數據存入歷史數據庫。通過實時庫、歷史庫與云計算服務中心進行數據交互。本軟件的數據鏈接采用ADO控件,設計的定時發送心跳包功能為遠端設備提供心跳檢測信息。主監控界面圖及主要數據結構等內容略——編者注。
本油田采輸物聯網監控系統,得到了油田長輸管線和偏遠采油單井的實際驗證,取得了令人滿意的應用效果。無論是現場的軟硬件,還是遠程監控中心的軟件都具有很好的可移植性,方便在不同的系統中應用,并且對外提供標準的軟件接口和硬件接口,方便云計算等其他系統調研,解決了油田生產偏遠點無法遠程監控問題。該系統為油田物聯網與云計算提供了一種新的建設思路,具有一定的推廣價值。
編者注:本文為期刊縮略版,全文見本刊網站www.mesnet.com.cn。
[1]陳新發,曾穎,李清輝.數字油田建設與實踐[M].北京:石油工業出版社,2008.
[2]周根來.水處理島總線控制方案的探討[J].石油化工自動化,2011,47(2):39-41.
[3]張寅,袁剛.基于ARM的雙電機控制實驗平臺設計[J].單片機與嵌入式系統應用,2013,13(12):8-11.
[4]高志國.基于RS-485總線信號的可靠性研究[J].石油化工自動化,2011,47(2):42-43.
[5]遲瑛,李健.基于單臺PC機的工業過程虛擬實驗系統設計[J].控制工程,2008,15(6):688-691.
[6]肖軍模,劉軍,周海剛.網絡信息安全[M].北京:機械工業出版社,2006.