(西安航天自動化股份有限公司,西安 710065)
目前在工業(yè)無線傳感網(wǎng)技術(shù)方面,國際上已形成了WirelessHART、ISA100.11a以及WIA-PA 3個標(biāo)準(zhǔn)共存的局面。ISAl00.11a標(biāo)準(zhǔn)由國際自動化學(xué)會ISA(International Society of Automation)下屬的ISA100工業(yè)無線委員會制定。該標(biāo)準(zhǔn)的主要特點為提供過程工業(yè)應(yīng)用服務(wù),包括工廠自動化;物理層采用IEEE 802.15.4的2.4 GHz公共頻段;時隙跳頻的方式保證可靠和穩(wěn)定無線通信;使用一個簡單的應(yīng)用層提供本地和隧道協(xié)議,以實現(xiàn)廣泛的可用性;現(xiàn)場設(shè)備具有支持網(wǎng)狀和星型多種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的能力。相比于其他2個標(biāo)準(zhǔn),ISA100.11a標(biāo)準(zhǔn)在應(yīng)用的穩(wěn)定性和廣泛性方面具有突出的優(yōu)勢,更加適合應(yīng)用工業(yè)無線環(huán)境,并且具有較多的國際廠商支持。對于該標(biāo)準(zhǔn)的研究開發(fā)和應(yīng)用案例國內(nèi)還比較少,因此開發(fā)基于ISA100.11a標(biāo)準(zhǔn)的工業(yè)無線網(wǎng)絡(luò)系統(tǒng),可提高我國工業(yè)物聯(lián)網(wǎng)技術(shù)水平,并且能夠加快我國工業(yè)控制領(lǐng)域的產(chǎn)業(yè)升級[1]。
ISA100.11a標(biāo)準(zhǔn)支持多種網(wǎng)絡(luò)拓?fù)?,如星型結(jié)構(gòu)、Mesh結(jié)構(gòu)等。在ISA100.11a網(wǎng)絡(luò)結(jié)構(gòu)中引入骨干網(wǎng),來減小數(shù)據(jù)傳輸時延。所有現(xiàn)場終端設(shè)備通過骨干路由器BBR(backbone router)接入骨干網(wǎng),現(xiàn)場終端設(shè)備和路由器組成的網(wǎng)絡(luò)為 DL(data link)子網(wǎng)。DL子網(wǎng)和骨干網(wǎng)就組成了ISA100.11a網(wǎng)絡(luò)[2],如圖1所示。工廠網(wǎng)絡(luò)作為工業(yè)現(xiàn)場應(yīng)用的控制網(wǎng)絡(luò),面對不同的現(xiàn)場環(huán)境區(qū)別較大,并且該網(wǎng)絡(luò)的規(guī)定在ISA100.11a標(biāo)準(zhǔn)中不涉及。
圖1 ISA100.11a拓?fù)鋱DFig.1 Topology graph of ISA100.11a
骨干網(wǎng)由BBR、網(wǎng)關(guān)、系統(tǒng)管理器和安全管理器功能角色構(gòu)成。骨干網(wǎng)絡(luò)標(biāo)準(zhǔn)中沒有明確要求,但骨干網(wǎng)的通信協(xié)議應(yīng)該是高性能的網(wǎng)絡(luò)。
網(wǎng)關(guān)角色提供工業(yè)傳感網(wǎng)和工廠網(wǎng)絡(luò)之間的接口。網(wǎng)關(guān)應(yīng)具有將符合本標(biāo)準(zhǔn)的通信和其他通信之間轉(zhuǎn)換的能力,并在本標(biāo)準(zhǔn)的應(yīng)用層和其他應(yīng)用層之間承擔(dān)了協(xié)議轉(zhuǎn)換器的職責(zé)。
安全管理器是一個與系統(tǒng)管理器和可選的帶有安全系統(tǒng)操作的外部安全系統(tǒng)共同工作的特殊功能。安全管理器在邏輯上是可分離的,且在某些用例下會固定于一個在分離地域中的一個分離設(shè)備上。
系統(tǒng)管理器是一個特殊的角色,它負(fù)責(zé)統(tǒng)籌網(wǎng)絡(luò)運行、設(shè)備入網(wǎng)離網(wǎng)管理以及通信資源管理。系統(tǒng)管理器表現(xiàn)為基于策略的網(wǎng)絡(luò)運行時配置控制、通信配置上的監(jiān)視器和報告、性能以及操作狀態(tài),并且提供時間相關(guān)的服務(wù)。
終端設(shè)備或路由器的協(xié)議體系結(jié)構(gòu)參考標(biāo)準(zhǔn)的ISO/OSI 7層結(jié)構(gòu)模型,主要由物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層組成[3]。其中物理層采用的是IEEE 802.15.4協(xié)議[4],數(shù)據(jù)鏈路層包括IEEE 802.15.4 MAC子層、ISA100.11a的MAC擴(kuò)展子層和數(shù)據(jù)鏈路層上層,應(yīng)用層包括應(yīng)用子層、用戶應(yīng)用進(jìn)程和設(shè)備管理應(yīng)用進(jìn)程[5]。
采用ISA100.11a標(biāo)準(zhǔn)來設(shè)計開發(fā)面向工業(yè)現(xiàn)場的物聯(lián)網(wǎng)采集控制應(yīng)用系統(tǒng)。詳細(xì)的技術(shù)方案如下描述。
如圖2所示,基于ISA100.11a標(biāo)準(zhǔn)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),分為工廠網(wǎng)絡(luò)、骨干網(wǎng)和無線子網(wǎng)3個部分。工廠網(wǎng)絡(luò)主要為網(wǎng)關(guān)設(shè)備和控制監(jiān)視系統(tǒng)之間的通信;骨干網(wǎng)由若干個骨干路由器通過連接組成,主要功能為實現(xiàn)骨干路由的功能,減少無線網(wǎng)絡(luò)設(shè)備間傳輸延時;無線子網(wǎng)系統(tǒng)主要由一個骨干路由器,現(xiàn)場路由設(shè)備和現(xiàn)場I/O設(shè)備組成。所有子網(wǎng)設(shè)備的數(shù)據(jù)經(jīng)由骨干網(wǎng),通過網(wǎng)關(guān)傳輸?shù)焦S網(wǎng)絡(luò)。
圖2 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖Fig.2 Network topology architecture
在本系統(tǒng)中,將系統(tǒng)管理器、安全管理器和網(wǎng)關(guān)封裝在一個物理實體中,即網(wǎng)關(guān)設(shè)備,是系統(tǒng)中最核心模塊。其中,系統(tǒng)管理器負(fù)責(zé)對設(shè)備的加入離開以及子網(wǎng)路由和資源的分配等功能;安全管理器負(fù)責(zé)對網(wǎng)絡(luò)中密鑰維護(hù)、設(shè)備安全管理;網(wǎng)關(guān)負(fù)責(zé)外部協(xié)議和ISA100.11a協(xié)議的轉(zhuǎn)換,并且和工廠網(wǎng)絡(luò)上的系統(tǒng)監(jiān)視控制系統(tǒng)之間進(jìn)行數(shù)據(jù)信息傳輸。
基于上述的技術(shù)方案,現(xiàn)場I/O終端設(shè)備采集信息,通過子網(wǎng)路由將數(shù)據(jù)信息送給BBR,BBR再通過Socket機(jī)制將數(shù)據(jù)傳輸?shù)骄W(wǎng)關(guān)設(shè)備,傳輸媒介目前采用以太網(wǎng),在某些特殊情況下可以采用無線局域網(wǎng)技術(shù)傳輸。網(wǎng)關(guān)設(shè)備將該數(shù)據(jù)進(jìn)行服務(wù)協(xié)議的轉(zhuǎn)換,最終顯示在監(jiān)控終端;同樣,監(jiān)控終端可以將符合某個工業(yè)現(xiàn)場標(biāo)準(zhǔn)的數(shù)據(jù)通過該路徑傳輸?shù)浆F(xiàn)場I/O設(shè)備,完成對子網(wǎng)內(nèi)任意設(shè)備的無線控制功能。
從研發(fā)設(shè)計的角度考慮,將網(wǎng)關(guān)設(shè)備軟件系統(tǒng)劃分為網(wǎng)關(guān)、系統(tǒng)管理器、安全管理器和骨干網(wǎng)路由傳輸模塊,如圖3所示。其中,考慮到安全管理器只和系統(tǒng)管理器通信,故將安全管理器作為系統(tǒng)管理器的一個模塊,負(fù)責(zé)網(wǎng)絡(luò)的安全管理功能。
圖3 網(wǎng)關(guān)系統(tǒng)軟件模塊劃分Fig.3 Gateway system software module
BBR和網(wǎng)關(guān)、系統(tǒng)管理器3個模塊之間通過Socket機(jī)制通信,這樣3個模塊同時運行在Linux操作系統(tǒng)上,采用多線程設(shè)計思路,提高運行穩(wěn)定性,降低硬件資源消耗。網(wǎng)關(guān)通過TCP/IP接口將無線網(wǎng)絡(luò)信息和設(shè)備采集信息傳輸給Monitor-Host模塊,Monitor-Host將該信息寫入數(shù)據(jù)庫;當(dāng)用戶通過Web服務(wù)器模塊獲取網(wǎng)絡(luò)和設(shè)備信息時,Web服務(wù)器訪問數(shù)據(jù)庫方式來獲取網(wǎng)絡(luò)信息,并通過該接口完成對網(wǎng)絡(luò)設(shè)備的配置命令等操作。
在設(shè)計過程中,網(wǎng)關(guān)設(shè)備的硬件主要由2部分組成,主板模塊和核心模塊。主板模塊包括電源、存儲器、UART接口、以太網(wǎng)接口,以及工業(yè)現(xiàn)場總線通信(Modbus、Profibus)模塊等。核心模塊主要是高性能處理模塊,設(shè)計采用了TI公司的DM3730芯片,該芯片基于ARM CORTEX-A8內(nèi)核的處理器,搭載Linux操作系統(tǒng),滿足多線程運行的實時性調(diào)度。
骨干路由器設(shè)備具有將數(shù)據(jù)包通過骨干網(wǎng)的路由功能。骨干路由器可以使外部網(wǎng)絡(luò)能以攜帶本地協(xié)議并封裝PDU的形式傳輸數(shù)據(jù)。
本方案中骨干網(wǎng)基于IPv6數(shù)據(jù)傳輸協(xié)議,圖4描述了骨干路由器的模塊,分為協(xié)議子棧、數(shù)據(jù)包解析和轉(zhuǎn)換模塊、UDP接口模塊。協(xié)議子棧主要功能是與DL子網(wǎng)通信,發(fā)送廣播幀、接收來自終端設(shè)備的無線幀。協(xié)議子棧的NL層解析后,如果是要經(jīng)過骨干網(wǎng)到其他設(shè)備的數(shù)據(jù),則通過對無線幀處理封裝成IPv6包,通過Socket端口發(fā)送出去。
圖4 BBR模塊圖Fig.4 Module diagram of BBR
終端設(shè)備的主要功能為按照協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送和接收處理。圖5是終端設(shè)備的模塊劃分示意圖,分為傳感采集模塊和協(xié)議棧核心模塊。傳感采集模塊實現(xiàn)用戶應(yīng)用進(jìn)程和感知信息處理,和協(xié)議棧之間通過SPI/UART接口實現(xiàn)數(shù)據(jù)傳輸。采用該設(shè)計的優(yōu)勢是傳感采集模塊可以根據(jù)不同的應(yīng)用進(jìn)行實現(xiàn),具有廣泛的應(yīng)用。協(xié)議棧核心模塊按照標(biāo)準(zhǔn)的分層設(shè)計,如下詳細(xì)描述。
圖5 終端設(shè)備模塊圖Fig.5 Module diagram of terminal
應(yīng)用子層不包含任何用戶應(yīng)用,只在那些應(yīng)用和網(wǎng)絡(luò)服務(wù)間提供接口,即給用戶應(yīng)用進(jìn)程和設(shè)備管理進(jìn)程提供各種服務(wù)。
傳輸層提供端到端的通信服務(wù),負(fù)責(zé)傳輸層幀頭的裝載和解析,傳輸層的安全和管理信息庫的管理。傳輸層支持IPv6數(shù)據(jù)包格式。
DL層包括IEEE802.15.4的MAC層和數(shù)據(jù)鏈路層上層。MAC層主要負(fù)責(zé)時間同步、跳信道和通信調(diào)度,提供點對點的重傳機(jī)制。數(shù)據(jù)鏈路子層主要負(fù)責(zé)幀頭的裝載和解析、DL層安全、DL子網(wǎng)內(nèi)路由、鄰居發(fā)現(xiàn)等功能。
物理層主要功能有激活和休眠射頻收發(fā)器,發(fā)射功率控制,信道能量檢測,檢測接收數(shù)據(jù)包的鏈路質(zhì)量指示,空閑信道評估和收發(fā)數(shù)據(jù)。
從開發(fā)復(fù)雜度和節(jié)約成本的角度,節(jié)點的設(shè)計采用主處理器+射頻模塊的方案。在選用國內(nèi)外主流的嵌入微處理器、微控制器的基礎(chǔ)上,構(gòu)造出易于擴(kuò)展、適應(yīng)性強(qiáng)的無線傳感器網(wǎng)絡(luò)小型化硬件平臺,可以采集或輸出工業(yè)現(xiàn)場常見的數(shù)字量輸入輸出信號,以及模擬量輸入輸出信號。
ISA100.11a網(wǎng)絡(luò)拓?fù)浞譃?層結(jié)構(gòu),分別為骨干網(wǎng)和 DL子網(wǎng)。因此,本設(shè)計根據(jù)網(wǎng)絡(luò)的結(jié)構(gòu)基于分級同步的思想進(jìn)行時間同步控制。系統(tǒng)管理器作為系統(tǒng)時鐘源,BBR入網(wǎng)過程中,系統(tǒng)管理器在回復(fù)的響應(yīng)數(shù)據(jù)中攜帶當(dāng)前時間信息,BBR接收到該信息進(jìn)行時間同步;當(dāng)骨干網(wǎng)完成時間同步后,BBR便向其所在的DL子網(wǎng)內(nèi)的終端設(shè)備發(fā)送廣播幀,終端設(shè)備根據(jù)廣播幀中攜帶的時間信息來進(jìn)行時間同步。這樣,經(jīng)過兩級同步后達(dá)到全網(wǎng)同步的目的。
實現(xiàn)確定性調(diào)度技術(shù)的核心是協(xié)議棧在實現(xiàn)時間同步的基礎(chǔ)上必須能夠提供精確的時隙。時隙的劃分為協(xié)議棧調(diào)度的運行提供時間。當(dāng)一個新的時隙到來之后,協(xié)議棧將判斷在該時隙是否有鏈路觸發(fā),流程圖如圖6所示。具體步驟是根據(jù)當(dāng)前時隙偏移,依次和鏈路表中鏈路的時隙偏移進(jìn)行對比,如果當(dāng)前時隙偏移和鏈路表中某一個鏈路的時隙偏移相等,那么就認(rèn)為該條鏈路觸發(fā)了,否則認(rèn)為該時隙處于空閑狀態(tài)。如果在該時隙有一條鏈路或有多條鏈路觸發(fā),那么根據(jù)鏈路的優(yōu)先級進(jìn)行排序,設(shè)備將選擇優(yōu)先級最高的一條鏈路執(zhí)行相應(yīng)操作。
圖6 確定性調(diào)度中斷處理流程Fig.6 Deterministic scheduling interrupt handling procedure
當(dāng)判斷當(dāng)前信道為Active_RX,則進(jìn)入RX處理流程,此時設(shè)備將打開接收機(jī)等待接收數(shù)據(jù)幀;若當(dāng)前信道為Active_TX,則進(jìn)入TX處理流程,檢查發(fā)送緩沖區(qū)是否有要發(fā)送的幀,如果有再打開發(fā)射機(jī)發(fā)送數(shù)據(jù)給目的設(shè)備。
在保證傳輸距離滿足工業(yè)現(xiàn)場應(yīng)用的情況下,在終端設(shè)備的開發(fā)過程中采用低功耗管理和設(shè)計思路。主要涉及微處理器模塊和射頻模塊,對微處理器模塊采用的技術(shù)為在休眠時降低時鐘頻率,采用32.768 kHz時鐘頻率作為低功耗狀態(tài)下。對射頻模塊在發(fā)送或接收到幀后及時關(guān)閉收發(fā)機(jī)來降低射頻功耗。
微處理器低功耗設(shè)計,通過配置睡眠控制寄存器。根據(jù)每個時隙到來時,不同的鏈路模式來進(jìn)行控制。若當(dāng)前時隙為空閑時隙,則配置寄存器進(jìn)入Doze模式(該模式下保持低頻晶振運行),不做任何業(yè)務(wù)處理;若當(dāng)前時隙為發(fā)送時隙,則在接收到發(fā)送完成中斷后立刻關(guān)掉射頻發(fā)射機(jī);在當(dāng)前時隙接收到無線幀后,先關(guān)閉接收機(jī),等待回復(fù)Ack幀時,再打開發(fā)射機(jī),接收到發(fā)送完成中斷時關(guān)閉接收機(jī)。
基于該方案的工業(yè)傳感網(wǎng)系統(tǒng)設(shè)計合理,能滿足工業(yè)用戶的不同需求。目前,基于ISA100.11a標(biāo)準(zhǔn)的工業(yè)傳感網(wǎng)通信協(xié)議棧軟件、終端設(shè)備以及監(jiān)控顯示系統(tǒng)的原型機(jī)基本實現(xiàn),形成了一套完整的ISA100.11a工業(yè)物聯(lián)網(wǎng)系統(tǒng),具有很好的應(yīng)用前景。
[1] 王平,劉其琛,王恒,等.一種適用于ISAl00.11a工業(yè)無線網(wǎng)絡(luò)的通信調(diào)度方法[J].儀器儀表學(xué)報,2011,32(5):1189-1195
[2] Wireless Systems for Industrial Automation:Process Control and Related Applications[S].ISA Std.100.11a,2011.
[3] Project Proposal-ISA100.11a[EB/OL].https://github.com/ESE519/ ISA100.11a/wiki/Project-Proposal,2014.
[4] IEEE Standard for Information Technology Telecommunications and Information Exchange Between Systems Local and Metropolitan Area Networks Specific Requirements[S].IEEE Std 802.15.4,2006.
[5] 張海鵬.ISA100.11a協(xié)議棧研究與開發(fā)—應(yīng)用層關(guān)鍵技術(shù)的研究與實現(xiàn)[D].重慶:重慶郵電大學(xué),2010.