關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 面向無線傳感網(wǎng)絡(luò)的構(gòu)件化開發(fā)方法

面向無線傳感網(wǎng)絡(luò)的構(gòu)件化開發(fā)方法

作者: 時(shí)間:2012-10-22 來源:網(wǎng)絡(luò) 收藏

引言

本文引用地址:http://www.butianyuan.cn/article/159776.htm

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

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

TinyOS是一種基于構(gòu)件化的無線傳感器網(wǎng)絡(luò)操作系統(tǒng),該系統(tǒng)本身就是一個(gè)構(gòu)件庫。其開發(fā)語言nesC 提供了對(duì)軟件構(gòu)件技術(shù)的支持。通過靈活組裝各個(gè)固定功能的芯片級(jí)構(gòu)件可以方便地搭建起不同硬件平臺(tái)級(jí)構(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)為了簡(jiǎn)化開發(fā)者的開發(fā)難度,對(duì)各芯片的底層構(gòu)件進(jìn)行了構(gòu)件化包裝。調(diào)用硬件底層構(gòu)件所提供的最基本功能接口,來組合實(shí)現(xiàn)一些功能模塊,如配制芯片模塊、發(fā)送數(shù)據(jù)模塊、接收數(shù)據(jù)模塊等。系統(tǒng)對(duì)各芯片的硬件抽象層的集成化操作基本是一樣的,圖2 是CC2420系統(tǒng)集成構(gòu)件調(diào)用硬件抽象層構(gòu)件的關(guān)系。

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


上一頁 1 2 3 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉