


摘 要: 深入分析遠程測控系統的個性與共性,基于軟硬件構件化的設計思想,提出了一個遠程測控系統的基本通用框架。該框架具有無線傳感器控制網絡(WSCN)與嵌入式以太網(E?Ethernet)無縫結合、WSCN節點與PC機或移動終端透明通信的特點。給出了以KW01?ZigBee微控制器為WSCN節點的主控芯片、以K64微控制器為WSCN?Ethernet網關主控芯片的工業設備稼動率管理系統設計方案作為實例。設計實例經過實際運行表明,系統框架設計合理、軟硬件可重用性高、穩定可靠,可為同類系統設計提供借鑒。
關鍵詞: 無線傳感器控制網絡; 嵌入式以太網; 遠程測控系統; 通用框架
中圖分類號: TN915?34 文獻標識碼: A 文章編號: 1004?373X(2016)02?0053?05
Research of remote measurement and control system framework based on
WSCN and E?Ethernet
FAN Ningning, WANG Yihuai, CHEN Ruijie
(School of Computer Science and Technology, Soochow University, Suzhou 215000, China)
Abstract: Through a deep analysis on the universality and the individuality of remote measurement and control systems (RMCSs), a general framework for RMCS is proposed on the basis of component based design idea for software and hardware. This framework is characterized by seamless combination of WSCN and E?Ethernet, and the transparent communication between WSCN nodes and PC or mobile terminal. As an example, a design scheme of industrial equipment utilization management system is proposed, in which KW01?Zigbee microcontroller is taken as the main control chip of WSCN nodes and K64 microcontrollers as the main control chip of WSCN?Ethernet gateway. The actual operation of this system demonstrates that the design of the system framework is reasonable and its software and hardware is stable, reliable and of good reusability, which provided a reference for the design of similar systems.
Keywords: WSCN; embedded Ethernet; remote measurement and control system; general framework
0 引 言
遠程測控系統是一種基于計算機技術的集軟硬件為一體的復雜系統,是目前工業自動化領域的研究熱點之一。近幾年,諸多工業制造強國、大國為爭當行業領頭羊,先后提出信息物理融合系統(Cyber Physical System,CPS)、“工業4.0”、“中國制造2025”等國家級工業制造戰略,標志著傳統工業自動化領域已邁向信息化、智能化的道路,信息孤島問題將不復存在[1],同時遠程測控系統作為實現戰略目標的重要途徑,也將其研究層次推上了一個新的高度。但是,由于遠程測控系統涉及的微控制器(Microcontroller Unit,MCU)種類繁多,而且不同系統的設計需求也不盡相同,如果每次開發新的系統都從頭開始,那么就會重復很多不必要的工作,導致開發成本增加、開發周期延長、開發效率降低[2],違背了我國的工業智能化戰略目標。統一軟硬件接口、數據通信協議,提高軟硬件構件的可復用性、可擴展性和可移植性,能夠避免許多重復工作;同時,嵌入式、軟件構件、信息融合等技術是不斷向前發展的;因此對遠程測控系統的理論與應用研究仍然是行業熱點。
本文通過分析遠程測控系統的個性與共性,在采用嵌入式以太網(Embedded Ethernet,E?Ethernet)、現代無線傳感器控制網絡(Wireless SensorControl Network,WSCN)、數據庫、Web等技術的基礎上,提出了一個基于WSCN與E?Ethernet相結合的遠程測控系統框架,為工業制造業向信息化、智能化迅速轉型升級提供統一框架。
1 系統框架總體設計方案
1.1 測控系統的一般結構分析
通過對各種應用系統的對比與分析可知,一個典型的測控系統通常包括:模擬量輸入/輸出部分、開關量輸入/輸出部分、其他信號輸入/輸出部分、數據通信部分[3]以及MCU工作支撐電路部分,如圖1所示。
圖1 一個典型的嵌入式測控系統結構框圖
實際模擬信號一般來源于物理世界,如:光照、溫度、壓力等,通過各種類型的傳感器從外界獲取這些模擬信號并將其轉換為電信號。但由于實際的電信號比較微弱,因此需要放大電路將微弱的電信號放大至MCU的可接收范圍,并通過模/數(A/D)轉換接口將電信號轉換為數字信號,交給MCU進行處理;經過數/模(D/A)轉換接口處理后的結果是無法直接驅動模擬量執行機構,必須通過相應的隔離和放大電路才可實現。
對于實際開關信號來說,只有開和關兩種狀態,狀態可以用“0”或“1”進行表示,信號一般來源于開關類傳感器(如:聲控開關)或手動開關等,通過開關量轉換電路調整信號范圍,然后送到MCU進行處理;同樣的,由于MCU引腳驅動能力有限,MCU送出的信號必須放大后方能驅動開關量執行機構。
MCU通過不同的通信接口與其他設備進行數據傳輸,常見的通信方式有:通用異步收發傳輸器(Universal Asynchronous Receiver/Transmitter,UART)、串行外設接口(Serial Peripheral Interface,SPI)、無線、以太網等。由于以太網具有通信實時性強、穩定性高、傳輸數據量大等特點,能夠滿足工業級遠程測控系統的需求;因此本系統框架采用以太網作為主通信方式。
MCU工作支撐電路是嵌入式測控系統的“心臟”,即MCU硬件最小系統,沒有它不僅MCU無法正常工作,整個系統也無法正常運行,它主要由電源、濾波、晶振及復位等電路組成,也可以包含寫入器接口電路。
1.2 遠程測控系統框架模型
遠程測控系統不僅要完成對實際物理數據的采集與控制,而且還要實現系統通用性,通過盡可能少地修改,便能將整個系統框架應用于多個不同企業的需求。遠程測控系統框架主要分為三個部分:eWSCN節點(數據傳輸格式為以太幀的WSCN節點)、WSCN?Ethernet網關(使用以太網接口的網關)、服務器,如圖2所示。
(1) eWSCN節點
eWSCN節點是整個系統框架中直接與物理世界接觸的部分,處于框架最底層,其主要負責采集外界各種物理量信息并通過無線發送給WSCN?Ethernet網關,同時負責執行WSCN?Ethernet網關轉發的控制指令。其無線數據幀格式為包裹MAC地址的以太幀格式,開發人員無需具有ZigBee相關項目經驗,只要掌握以太網的基本知識,便可快速組建無線網絡結構。
(2) WSCN?Ethernet網關
WSCN?Ethernet網關是基于eWSCN節點設計的具有嵌入式以太網功能的設備,其中無線模塊與以太網模塊通過串口進行數據交互,實現了WSCN與E?Ethernet的無縫結合,主要負責通過以太網模塊發送具有以太幀格式的無線數據,同時服務器發送給以太網模塊的以太幀,可以通過無線模塊發送至各eWSCN節點。
圖2 遠程測控系統框架圖
(3) 服務器
服務器端主要由Web程序和偵聽軟件組成。Web程序是服務器前端,提供實時遠程監控、配置節點信息、數據上傳等功能,用戶通過Internet可以從數據庫中查詢到各個eWSCN節點、WSCN?Ethernet網關的實時狀態及詳細信息,還能通過圖形化的界面直觀地獲取各節點當前和歷史的實際物理量信息,同時用戶可根據需要作出相應操作,以控制、管理各節點及網關。偵聽軟件是服務器后端,利用異步Socket機制,實現與WSCN?Ethernet網關之間的通信功能,對以太幀數據進行一系列邏輯處理并將結果上傳至數據庫,同時負責給網關發送用戶通過Internet下發的控制指令。Web程序和偵聽軟件之間的數據接口通過數據庫來實現。
2 基于硬件構件的遠程測控系統硬件框架設計
測控系統的基礎是位于系統底層的嵌入式硬件節點部分,它負責獲取和控制物理世界中實際的物理信號量,這些目標信號量類型各不相同,在設計硬件電路時會花費相當多的時間去重復相同或類似的工作,因此設計出具有可復用性的硬件構件,設計人員只需根據規范進行構件組裝來繪制硬件電路圖,便可省去很多時間和麻煩。
硬件構件是指一個可復用的硬件實體,其封裝了一個或多個硬件模塊、支撐電路以及相應的功能描述,同時對外提供一系列規范的輸入/輸出接口和功能實現,易于復用和組裝。基于此本文提出一個硬件構件模型,如圖3(a)所示。硬件構件的類型一般可分為三種:核心構件、中間構件和終端構件[4]。核心構件是MCU的硬件最小系統;中間構件則連接了核心構件和終端構件;而終端構件在嵌入式系統中最為常見,例如:鍵盤構件。然而,不論硬件構件的類型是什么,都可以利用本模型作為理論指導對電路原理圖進行繪制。
硬件支撐電路主要包含電容、電阻、電感、晶振、二極管等元器件。硬件功能模塊就是該構件的具體功能實現部分,模塊描述主要包含構件的中文名稱、英文引用名、使用說明等。接口由接口網標和接口注釋組成,是整個構件的精髓所在,是與外界交互的惟一部分,應從服務與需求(即輸入與輸出)的角度考慮接口如何設計。進一步考慮,可以將常用的硬件構件收集、保存為一個硬件構件庫,使用時只需從中選擇用到的硬件構件,通過構件接口之間的對應關系、修改接口網標,將各構件組裝為一個整體,從而縮短開發測控系統用于硬件部分的時長,提高開發效率。
3 基于軟件構件的遠程測控系統軟件框架設計
遠程測控系統的硬件部分和軟件部分設計是相輔相成、息息相關的,軟件部分主要包括eWSCN節點、WSCN?Ethernet網關中的嵌入式軟件和位于服務器端的上位機軟件。
3.1 構件化嵌入式軟件設計方法概述
嵌入式軟件構件主要分為底層驅動構件和高層軟件構件[5]。底層驅動構件是與硬件構件密不可分的,是實現硬件功能的軟件端最小執行單位,而高層軟件構件與硬件無關,是對底層構件的調用。嵌入式軟件構件一般由兩個部分組成:頭文件(.h)和源文件(.c)。頭文件通常包含:構件功能概要、公共要素頭文件、宏定義以及函數聲明等,而源文件則主要包含內部變量定義及函數的具體實現語句。
為實現各模塊的通用性,本文根據構件設計的封裝性、描述性、可移植性和可復用性四大基本原則,提出了軟件構件模型,如圖3(b)所示。將對軟件構件功能的實現、頭文件中函數定義及源文件中函數實現都封裝在可復用的構件中,合理設計函數對外交互接口部分,使得開發人員通過構件中文件描述便可獲知該構件實現的功能,而不必在意函數內部如何實現。
圖3 嵌入式軟、硬件構件模型
遠程測控系統中涉及到的模塊主要有:串口通信模塊、無線射頻模塊、以太網模塊、模擬量輸入/輸出模塊和開關量輸入/輸出模塊等。其中最后一項又稱為通用I/O模塊(General Purpose Input/Output,GPIO)。本文將系統所用到的常用軟件構件列表進行說明,見表1。
因此,實現嵌入式軟件的構件化,用戶可以在不同的測控系統中根據需要調用相應的嵌入式軟件構件,只需對構件頭文件進行略微的修改甚至無需任何改動,便可輕松地移植到同系列MCU內,減少重復工作。
3.2 eWSCN節點設計
eWSCN節點是具有采集和控制功能,并且采用以太幀格式進行無線數據的發送與接收的終端設備;因此,以太幀格式的WSCN節點(ethernet Wireless SensorControl Network Node)又稱作eWSCN節點。
eWSCN節點選用飛思卡爾公司于2013年正式推出的ARM Cortex?M0+內核Sub?1 GB射頻微控制器MKW01Z128(簡稱KW01?ZigBee)作為主控芯片。KW01?ZigBee運行速率高達48 MHz,功耗低達40 μA/MHz,
其包含128 KB FLASH和16 KB SRAM[6],且工作頻率范圍十分寬廣,涉及工業、科學和醫療等頻段[7]。
表1 遠程測控系統常用嵌入式軟件構件列表
設計時秉持著合理利用資源的理念,硬件方面,除實現數據無線收發外,也預留了常用的接口,如:AD、GPIO等,供連接各類型傳感器,采集和控制不同物理量時使用,軟件方面,調用3.1節所述的嵌入式軟件構件。此外,為避免不同無線局域網互相產生干擾,特地將固定的MAC地址/端口映射表存儲在KW01?ZigBee的FLASH區域中,實現了虛擬端口,保證了發送節點和目的節點同屬一個無線局域網,同時為提高無線局域網的整體性能,距離很近的節點之間就不進行存儲和轉發。圖4(a)給出eWSCN節點的模型。
3.3 WSCN?Ethernet網關設計
WSCN?Ethernet網關是在eWSCN節點的基礎上搭載帶有以太網模塊芯片的設備;因此,帶有以太網功能的WSCN網關(Wireless SensorControl Network?Ethernet Gateway)又稱作WSCN?Ethernet網關。它通過標準的以太網接口能夠延伸WSCN的覆蓋范圍,實現了WSCN與以太網的交織與融合。WSCN?Ethernet網關選用飛思卡爾公司于2014年正式推出的ARM Cortex?M4內核的微控制器MK64FN1M0VLL12(以下簡稱K64)作為主控芯片。K64主要面向物聯網、以太網及工業控制領域,其擁有1 MB FLASH、256 KB SRAM、66個I/O接口[8],包含UART、I2C、SPI、以太網等豐富的通信接口[9]。
設計時考慮到eWSCN節點若不采用以太網幀格式的無線數據,K64會出現還未處理完數據便接收新的無線數據這種情況,進而引發緩沖區溢出甚至數據丟包等異常,為避免這些情況的發生,實現WSCN?Ethernet網關的穩定可靠,將無線數據分成以太網幀格式,因此WSCN?Ethernet網關中的以太網模塊不需要對接收到的數據進行處理,直接轉發即可,同時,能夠使得WSCN?Ethernet網關通過路由器等網絡互聯設備便可實現eWSCN節點與PC機或移動設備之間進行的透明通信。另外,考慮到串口是MCU最常用的通信方式、抗干擾能力強且較為簡單,因此WSCN?Ethernet網關中無線模塊與以太網模塊之間選用串口作為通信方式。WSCN?Ethernet網關的模型如圖4(b)所示。
圖4 eWSCN節點及WSCN-Ethernet網關模型
3.4 服務器端設計
鑒于C/S結構適用面窄、安裝步驟繁瑣、后期維護成本高等缺點。本系統框架服務器端采用B/S結構,其具有適用面廣、交互性強等特點[6],用戶不論是使用PC機還是移動設備僅僅需要一個Web瀏覽器即可完成相應的線上瀏覽、查詢、配置、控制、告警等操作。服務器端的偵聽軟件主要發揮著WSCN?Ethernet網關與Web程序之間交互的橋梁作用,利用Socket中與編程語言無關性的特質,通過設置協議類型和端口號,建立自頂向下式和自底向上式的數據傳輸方式,即一方面接收到來自Web程序的命令,解析命令后,轉發給WSCN?Ethernet網關交由其控制下掛的eWSCN節點,另一方面接收到來自WSCN?Ethernet網關的數據,對數據進行處理后,上傳至Web程序,以便遠程監控。偵聽軟件工作流程如圖5(a)所示。Web程序除能實現一些基本的功能外,關鍵是用戶可根據各應用系統的不同需求進行個性化定制,如對界面信息(包括企業名稱、LOGO、界面主題等)、節點及網關等進行配置,從而實現通用框架到具體應用系統的轉換。Web程序工作流程如圖5(b)所示。
4 應用實例
在工業設備稼動率管理系統的研發過程中,應用了本文提出的遠程測控系統框架,取得了研發周期短、運行穩定等良好的效果。整個系統工作流程為:eWSCN節點負責采集和控制車間光照度,同時獲取車間各設備實時狀態數據,將數據進行轉發,WSCN?Ethernet網關接收到數據后將其轉發至服務器中,服務器的偵聽軟件將數據進行處理后上傳至數據庫,管理人員可通過PC機、平板或手機瀏覽Web頁面進行遠程訪問,獲取設備實時運行信息,也可獲得各生產部門、各類生產設備的利用率、故障率及生產率的日報、周報和月報,同時可以進行人工干預節點的燈控操作。工業設備稼動率管理系統的應用結構如圖6所示。
圖6 工業設備稼動率管理系統結構圖
5 結 語
為實現現代工業制造產業向智能制造的快速轉型升級,本文對一般測控系統進行深入分析,在總結其個性與共性的基礎上,對嵌入式軟硬件構件進行建模,提出一個具有可復用性、可擴展性、可配置性等特點的遠程測控系統基本通用框架。該框架實現了WSCN與E?Ethernet的網絡互聯、eWSCN節點與WSCN?Ethernet網關的透明通信。該框架已成功應用于工業設備稼動率管理系統中,為現代遠程測控系統開發提供了一個快速開發原型,對讀者有一定的參考價值。當然,系統框架還存在不足之處,今后將著力提高系統的穩定性和安全性。
參考文獻
[1] 繆學勤.智能工廠與裝備制造業轉型升級[J].自動化儀表,2014,35(3):1?6.
[2] 楊芙清,梅宏,李克勤.軟件復用與軟件構件技術[J].電子學報,2004,27(2):68?75.
[3] 王宜懷,朱仕浪,郭蕓.嵌入式技術基礎與實踐[M].3版.北京:清華大學出版社,2013.
[4] 王宜懷,蔣銀珍,王加俊.基于硬件構件的原理圖繪制規則研究[J].微計算機信息,2010,26(11):15?16.
[5] 王志超,王宜懷.基于硬件構件的嵌入式底層編程方法[J].單片機與嵌入式系統應用,2010(12):66?67.
[6] Freescale. MKW01Z128 Sub 1 GHz low power transceiver plus microcontroller data sheet [EB/OL]. [2014?05?03]. http://www. cache.freescale.com/files/microcontrollers/doc/data_sheet/01Z128.
[7] Freescale. MKW01Z128 Sub 1 GHz Low power transceiver plus microcontroller reference manual [EB/OL]. [2012?10?03]. http://www.cache.freescale.com/files/microcontrollers/doc/ref_manual/MKW01xxRM.
[8] Freescale. Kinetis K64F sub?family data sheet [EB/OL]. [2011?04?01]. http://www.cache.freescale.com/files/microcontrollers/doc/data_sheet/K64P144M120SF5.
[9] Freescale. K64 sub?family reference manual [EB/OL]. [2010?06?25]. http://www.cache.freescale.com/files/microcontrollers/doc/ref_
manual/K64P144M120SF5RM.
[10] 鄭洪靜,徐麗華,祝葉.基于MCF52233的通用遠程測控系統平臺的研究[J].電子技術應用,2010,36(3):79?82.