當(dāng)前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導(dǎo)讀]引言隨著移動技術(shù)和互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,移動網(wǎng)絡(luò)將是下一代網(wǎng)絡(luò)發(fā)展的大趨勢。而移動網(wǎng)絡(luò)的重要子網(wǎng)之一無線傳感器網(wǎng)絡(luò)能夠大大擴(kuò)展互聯(lián)網(wǎng)的觸角。由于無線傳感器網(wǎng)絡(luò)低功耗、低成本、分布式和資源有限等特點(diǎn),使

引言

隨著移動技術(shù)和互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,移動網(wǎng)絡(luò)將是下一代網(wǎng)絡(luò)發(fā)展的大趨勢。而移動網(wǎng)絡(luò)的重要子網(wǎng)之一無線傳感器網(wǎng)絡(luò)能夠大大擴(kuò)展互聯(lián)網(wǎng)的觸角。由于無線傳感器網(wǎng)絡(luò)低功耗、低成本、分布式和資源有限等特點(diǎn),使得開發(fā)無線傳感器網(wǎng)絡(luò)的相關(guān)協(xié)議成為無線傳感器網(wǎng)絡(luò)發(fā)展的關(guān)鍵技術(shù)因素之一。傳統(tǒng)的軟件開發(fā)方法顯然已經(jīng)不適合無線傳感器協(xié)議的開發(fā),而近來興起的新的開發(fā)模式是基于構(gòu)件化的軟件開發(fā)方法。

基于構(gòu)件化的軟件開發(fā)(CBSD,comp onent-based software development)方法是一種可以提供軟件復(fù)用性的開發(fā)方法。構(gòu)件是用于進(jìn)行軟件開發(fā)、復(fù)用和軟件組裝的基本單元。在面向構(gòu)件的技術(shù)里,一個應(yīng)用軟件不是通過大量的代碼來描述,而是通過數(shù)量有限的構(gòu)件來描述,如圖1(a)所示。與傳統(tǒng)的嵌入式軟件不同,構(gòu)件化的嵌入式軟件是由一組軟件構(gòu)件構(gòu)成的,這些構(gòu)件的一個或者幾個組合成一個完整的應(yīng)用;而且新的應(yīng)用也可以使用已有構(gòu)件,從而提高軟件復(fù)用性。傳統(tǒng)模式下開發(fā)出來的嵌入式軟件提供的是專用服務(wù),軟件與應(yīng)用是一一對應(yīng)的,如圖1(b)所示。整個過程中代碼量大,復(fù)雜度高,代碼重用性小,并且更新困難,不適應(yīng)無線傳感器節(jié)點(diǎn)資源有限的要求。

TinyOS是一種基于構(gòu)件化的無線傳感器網(wǎng)絡(luò)操作系統(tǒng),該系統(tǒng)本身就是一個構(gòu)件庫。其開發(fā)語言nesC 提供了對軟件構(gòu)件技術(shù)的支持。通過靈活組裝各個固定功能的芯片級構(gòu)件可以方便地搭建起不同硬件平臺級構(gòu)件。因此在TinyOS 系統(tǒng)下開發(fā)構(gòu)件化的無線傳感器協(xié)議的方法已被廣泛使用。但是,目前由于開發(fā)者過度依靠現(xiàn)有的集成構(gòu)件,導(dǎo)致開發(fā)出來協(xié)議性能并不理想。

 

 

圖1 構(gòu)件化的嵌入式軟件與傳統(tǒng)嵌入式軟件

1 現(xiàn)有開發(fā)方法描述

系統(tǒng)為了簡化開發(fā)者的開發(fā)難度,對各芯片的底層構(gòu)件進(jìn)行了構(gòu)件化包裝。調(diào)用硬件底層構(gòu)件所提供的最基本功能接口,來組合實(shí)現(xiàn)一些功能模塊,如配制芯片模塊、發(fā)送數(shù)據(jù)模塊、接收數(shù)據(jù)模塊等。系統(tǒng)對各芯片的硬件抽象層的集成化操作基本是一樣的,圖2 是CC2420系統(tǒng)集成構(gòu)件調(diào)用硬件抽象層構(gòu)件的關(guān)系。

 

 

圖2 系統(tǒng)集成構(gòu)件和硬件抽象層構(gòu)件關(guān)系

由圖2 可以看出,系統(tǒng)集成構(gòu)件起到一個橋梁作用,使開發(fā)者簡化了開發(fā)工作。但是,系統(tǒng)集成構(gòu)件在調(diào)用硬件抽象構(gòu)件實(shí)現(xiàn)自身功能的時候出現(xiàn)重復(fù)調(diào)用問題。并且構(gòu)件CC2420SpiC 在不同的層(系統(tǒng)集成層和硬件抽象層)都有使用,這本身使得系統(tǒng)集成層和物

理抽象層關(guān)系變得模糊和復(fù)雜,加大開發(fā)者開發(fā)難度。

根據(jù)構(gòu)件化系統(tǒng)編程可知,調(diào)用構(gòu)件的接口需要實(shí)現(xiàn)提供接口構(gòu)件中的event 事件。如果多個構(gòu)件重復(fù)使用同一個構(gòu)件的同一個接口,每個使用該接口的構(gòu)件都需要將該接口中的event 事件執(zhí)行一次。系統(tǒng)集成構(gòu)件同時調(diào)用相同的硬件抽象層構(gòu)件中的接口命令時,完成命令的signal 事件會通知每個使用該接口的構(gòu)件。這就導(dǎo)致了構(gòu)件化系統(tǒng)下編程常見問題:扇出(fan-out)。系統(tǒng)為了解決這一問題不得不將構(gòu)件性質(zhì)改為generic 類型。而這會引入新的構(gòu)件調(diào)用模式。所有這些使得系統(tǒng)集成構(gòu)件對硬件抽象層構(gòu)件的調(diào)用變得比實(shí)際要復(fù)雜,代碼的執(zhí)行效率大大降低。

2 直接調(diào)用底層構(gòu)件方法描述

對系統(tǒng)集成構(gòu)件的研究發(fā)現(xiàn),應(yīng)用層構(gòu)件在調(diào)用系統(tǒng)集成構(gòu)件時最終調(diào)用了硬件抽象層構(gòu)件,只是系統(tǒng)集成構(gòu)件將硬件抽象層構(gòu)件重新整合到某個大的集成構(gòu)件中,方便用戶查找接口。實(shí)際上,由于嵌入式軟件和硬件結(jié)合性高、硬件資源有限等特點(diǎn),為了使得軟件系統(tǒng)性能達(dá)到最高,嵌入式軟件開發(fā)者在開發(fā)之前對硬件已經(jīng)非常熟悉。在這種情況下沒有必要在硬件抽象層之上硬性加上系統(tǒng)抽象層。對開發(fā)者而言,直接調(diào)用底層硬件抽象層構(gòu)件會更直觀、簡單。

具體實(shí)現(xiàn)方法如圖3 所示,在構(gòu)件操作上對沒有引入新功能的構(gòu)件在配線構(gòu)件配線時候可以跨過整個系統(tǒng)集成構(gòu)件,而不會影響系統(tǒng)功能,并可以簡化開發(fā)過程,提高運(yùn)行效率。以下將這一方法簡稱為直接調(diào)用法。

 

 

圖3 構(gòu)件簡化過程

圖3 中構(gòu)件1 和構(gòu)件2 不是提供最底層功能的構(gòu)件,它們將底層構(gòu)件3、構(gòu)件4 和構(gòu)件5 進(jìn)行重新整合,最終使用的是構(gòu)件3、構(gòu)件4 和構(gòu)件5 的功能。所以,通過改進(jìn)后的方案中,讓應(yīng)用構(gòu)件直接調(diào)用構(gòu)件3、構(gòu)件4 和構(gòu)件5,讓構(gòu)件1 和構(gòu)件2 的功能交給應(yīng)用構(gòu)件去完成,這樣提高了代碼的執(zhí)行效率和開發(fā)效率。實(shí)際上,結(jié)合構(gòu)件化系統(tǒng)可知,圖3 的簡化過程解決了扇出問題,應(yīng)用構(gòu)件只要調(diào)用了一個硬件抽象層構(gòu)件,就可以在應(yīng)用構(gòu)件內(nèi)任何需要的地方去調(diào)用硬件抽象構(gòu)件所提供的接口中命令。配線構(gòu)件在配線時也變的簡單,沒有系統(tǒng)集成構(gòu)件中多個硬件抽象層構(gòu)件的重復(fù)配線操作。

對構(gòu)件化系統(tǒng)以及底層硬件抽象構(gòu)件和各具體芯片研究分析可知,系統(tǒng)集成構(gòu)件都是起到上述作用,同時又引入新的問題。若開發(fā)人員對硬件抽象構(gòu)件熟悉,就完全可以跨過系統(tǒng)集成構(gòu)件而直接使用硬件抽象層提供的構(gòu)件。這樣就簡化了原方案中系統(tǒng)集成構(gòu)件之間繁雜的調(diào)用關(guān)系,更重要的是可以大大提高系統(tǒng)的運(yùn)行效率,還以CC2420 系統(tǒng)集成構(gòu)件為例,其改進(jìn)后的構(gòu)件調(diào)用方案如圖4 所示:

 

 

圖4 改進(jìn)方案中構(gòu)件間關(guān)系

由圖4 可知,原來方案中的系統(tǒng)集成級構(gòu)件層的構(gòu)件沒有被調(diào)用,而直接調(diào)用硬件抽象層構(gòu)件。由圖4 與圖2 對比發(fā)現(xiàn),將原來系統(tǒng)集成層構(gòu)件*能移到PhyP 構(gòu)件中完成,這樣避免了對底層構(gòu)件的重復(fù)使用,整個結(jié)構(gòu)更清晰簡單。因此,需要對PhyP 構(gòu)件做改進(jìn),使得其能夠完成初始化射頻芯片,調(diào)用射頻芯片發(fā)送和接受數(shù)據(jù)。雖然看起來PhyP 構(gòu)件要比實(shí)際代碼量大,但是對改進(jìn)后系統(tǒng)運(yùn)行的測試結(jié)果表明,提高了10%的工作效率,縮減3000 行的代碼量。

3 測試直接調(diào)用法

將直接調(diào)用法應(yīng)用IEEE802.15.4 的設(shè)計(jì)與實(shí)現(xiàn)。IEEE802.15.4 標(biāo)準(zhǔn)目前已成為事實(shí)上的無線傳感器標(biāo)準(zhǔn),并在各自硬件平臺上開發(fā)該協(xié)議。以IEEE802.15.4 標(biāo)準(zhǔn)為例,在TinyOS系統(tǒng)、CC2420 射頻芯片的環(huán)境下使用本文直接調(diào)用法來設(shè)計(jì)實(shí)現(xiàn)該標(biāo)準(zhǔn),并測試其工作性能。

設(shè)計(jì)按照TinyOS 系統(tǒng)的構(gòu)件化編程思路進(jìn)行。物理層將設(shè)計(jì)兩個構(gòu)件(PhyP,PhyC),相關(guān)操作通過標(biāo)準(zhǔn)中定義的兩個接口進(jìn)行:數(shù)據(jù)訪問接口(PD)、管理接口(PLME)。構(gòu)件PhyP 是物理層的主要實(shí)現(xiàn)構(gòu)件,它具有初始化構(gòu)件、發(fā)送數(shù)據(jù)、接受數(shù)據(jù)三個基本功能。MAC 層設(shè)計(jì)兩個構(gòu)件:MacC、MacP,其中MacP 是主要的執(zhí)行構(gòu)件。MAC 層中有兩種設(shè)備:協(xié)調(diào)器節(jié)點(diǎn)和非協(xié)調(diào)器節(jié)點(diǎn)。協(xié)調(diào)器節(jié)點(diǎn)負(fù)責(zé)建立網(wǎng)絡(luò):確立網(wǎng)絡(luò)號(PANID)、本節(jié)點(diǎn)的短地址、并產(chǎn)生信標(biāo)幀載荷部分。非協(xié)調(diào)器節(jié)點(diǎn)加入?yún)f(xié)調(diào)器節(jié)點(diǎn)所建立的網(wǎng)絡(luò)中組成更大的個人區(qū)域網(wǎng)絡(luò)。

3.1 功能測試

測試程序運(yùn)行在兩個對等的節(jié)點(diǎn)上,分兩個階段測試。首先測試物理層的通信情況:一號個節(jié)點(diǎn)產(chǎn)生一個有效載荷為:0 至9 十個數(shù)據(jù)的數(shù)據(jù)包并發(fā)送給另外二號節(jié)點(diǎn),二號節(jié)點(diǎn)在收到上述數(shù)據(jù)包后原封不動將該數(shù)據(jù)包又發(fā)回給剛才發(fā)送者。發(fā)送和接收到的數(shù)據(jù)包的內(nèi)容是一致的,并且信號燈閃爍正常,說明節(jié)點(diǎn)之間的通信正常,物理層設(shè)計(jì)工作正常。進(jìn)一步測試MAC 層工作情況:將一號節(jié)點(diǎn)設(shè)為協(xié)調(diào)器節(jié)點(diǎn),二號節(jié)點(diǎn)設(shè)置為非協(xié)調(diào)器節(jié)點(diǎn)。一號節(jié)點(diǎn)初始化并建立一個PAN 網(wǎng),二號節(jié)點(diǎn)請求加入一號節(jié)點(diǎn)所創(chuàng)建的網(wǎng)中,驗(yàn)證網(wǎng)絡(luò)是否工作正常。通過功能測試可知,整個工作過程是按照IEEE802.15.4 標(biāo)準(zhǔn)的規(guī)定運(yùn)行,實(shí)現(xiàn)了該標(biāo)準(zhǔn)功能。

3.2 效率測試

工作效率測試中應(yīng)用產(chǎn)生50 個數(shù)據(jù)包后調(diào)用MAC 層發(fā)送接口發(fā)送這50 個數(shù)據(jù)包,從應(yīng)用調(diào)用MAC 層數(shù)據(jù)接口時開始計(jì)時,到應(yīng)用層收到包成功發(fā)送的確認(rèn)消息為止。記錄下這個響應(yīng)時間,并依次增大發(fā)送數(shù)據(jù)包的的有效載荷,從10 個字節(jié)增加到90,記錄下有效載和增加時的響應(yīng)時間。效率測試將分別在原始方案和直接調(diào)用法開發(fā)出來的協(xié)議中進(jìn)行,統(tǒng)計(jì)兩種不同方法的工作參數(shù),最后得到的時間分布如圖5 所示。

 

 

圖5 收發(fā)數(shù)據(jù)效率比較

由圖5 可知,在50 個數(shù)據(jù)包的情況下,當(dāng)數(shù)據(jù)包的有效載荷在10 至50 個字節(jié)時二者響應(yīng)時間差距并不大,響應(yīng)時間提高了10%左右,當(dāng)有效載荷增加到50 個字節(jié)以上時,響應(yīng)時間提高30%,有利于滿足嵌入式系統(tǒng)的實(shí)時性要求

結(jié)束語

本方案通過分析無線傳感器網(wǎng)絡(luò)現(xiàn)有的開發(fā)方法的不足,提出直接調(diào)用法,并用該方法實(shí)現(xiàn)IEEE802.15.4 標(biāo)準(zhǔn),最終達(dá)到預(yù)期目標(biāo)。方案的移植性高,穩(wěn)定性好,代碼量小,適合無線傳感器資源有限,實(shí)時性要求高的特點(diǎn)。同時直接調(diào)用法可以用來開發(fā)其他通信協(xié)議,如:802.11、LEACH、藍(lán)牙等。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉