999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于TinyOS的傳感器網絡節點應用程序設計

2010-07-16 06:43:22張西紅殷承浩
河北軟件職業技術學院學報 2010年1期
關鍵詞:程序模型

周 順,張西紅,殷承浩

(軍械工程學院計算機工程系,石家莊 050003)

TinyOS具有微型化、支持輕量級并發操作、靈活、低功耗等優點,已經被成千上萬的研發人員采用,應用于范圍廣闊的無線傳感器網絡中。TinyOS的設計特點主要體現在以下三個方面:(1)基于組件的編程模型;(2)基于事件觸發的并發執行模型;(3)采用基于主動消息的通信模型。最初TinyOS是由C語言實現的,后來采用nesC語言實現。nesC對C語言進行了擴展,將組件化思想與事件驅動的并發執行模型結合起來,提高了應用開發的方便性和執行的有效性。

1 應用程序總體框架和程序模型

在TinyOS中,每個應用程序通常由頂層配置、核心處理模塊和其他組件組成。每個應用程序僅有一個頂層配置,在頂層配置中,說明該應用所要使用的組件及組件間的接口關系。一般而言,與應用的頂層配置相對應的存在一個模塊,以頂層配置名+M.nc命名,此模塊就是該應用的核心處理模塊。如果一個應用程序只需頂層配置將幾個系統組件裝配起來就可實現所需的功能,那么,就不必自定義核心處理模塊,但所用的系統組件中必有一個作為核心處理模塊存在。應用程序的功能決定了所要包含的組件,組件間通過接口進行連接,上層組件調用下層組件的命令,下層組件向上觸發事件。應用程序總體框架如圖1所示。

圖1 應用程序總體框架

一個完整的TinyOS程序就是一個由若干組件按一定層次關系裝配而成的復合組件。TinyOS程序模型如圖2所示。在TinyOS程序模型中,處于最上層的是Main組件。該組件由操作系統提供,傳感器上電復位后會首先執行該組件中的函數,其主要功能是初始化硬件、啟動任務調度器以及執行用戶組件的初始化函數。每個TinyOS程序至少應該具有一個用戶組件,該用戶組件通過接口調用下層組件提供的服務,實現程序功能,如數據采集、數據處理、數據收發等。用戶組件的開發為TinyOS程序設計的重點。TinyOS提供一些常用組件,如執行組件、傳感器組件、通信組件。執行組件用于控制LED指示燈、繼電器、步進電機等硬件模塊;傳感器組件用于采集環境數據,如溫度、亮度等;通信組件則實現與其它節點通信。TinyOS提供了兩種通信組件:通過無線電收發器通信的組件和通過UART口通信的組件,后者僅應用于槽節點中。硬件抽象層對上層組件屏蔽了底層硬件的特性,從而實現上層組件的硬件無關性,以方便程序移植。

圖2 TinyOS基于組件的程序模型

2 源代碼的編寫

本應用程序sense模擬從傳感器主板上的照片傳感器上獲取光強度值,通過ADC組件將模擬信號轉換為數字信號,以二進制數值的形式將其低三位值顯示在微粒LED上。其實現模塊文件為SenseM.nc,配置文件為 Sense.nc。

首先,進行實現模塊的編寫,代碼如下:

3 程序的編譯及仿真

(1)將所編寫的程序文件sense放在c:/Tiny-OS/cygwin/opt/TinyOS-1.x/apps目錄下。

(2)打開一個cygwin。

輸入命令“cd:/TinyOS/cygwin/opt/TinyOS-1.x/apps/sense”,進入應用程序所放目錄,而后運行命令“make pc”,系統自動編譯程序并會在sense目錄下生成一個pc文件夾,其中就是生成的main.exe。

最后輸入命令“build/pc/main.exe-gui 10”(這里的10指設置了10個傳感器節點),程序會自動連接圖形化界面TinyViz,如圖3所示。

圖3 連接圖形化界面

(3)不要關閉cygwin,再打開一個cygwin。

進 入 目 錄 :c:/tinyos/cygwin/opt/TinyOS -1.x/tools/java/net/TinyOS/sim

運行命令:“make”

再運行命令:“java net.TinyOS.sim.TinyViz”

此時,系統將自動打開TinyViz界面,其上顯示的是10個節點亮燈情況,并顯示調試dbg信息,如圖4所示。

4 仿真結果的分析

圖4 TinyViz中模擬節點采光

在圖4TinyViz界面中顯示10個節點的亮燈情況。在還未運行時每個節點上都有紅、黃、綠三種不同顏色燈。當點擊上方的綠色箭頭按鈕時,仿真軟件即開始進行模擬,模擬中可以看到10個節點中不停地閃爍,模擬獲取光強度值。其中黃燈代表最低位值,綠燈代表第二位值,紅燈代表最高位值。根據紅、綠、黃的亮燈情況來模擬節點所獲取的光強度數值(二進制數值)。同時,在右方Debug信息欄里會顯示節點獲取光強度值及亮燈情況,上方delay進度條可調節延遲時間,左邊Plugins菜單中可以選擇右邊信息框中想要顯示的其他信息。

[1]劉營,于宏毅.基于TinyOS的無線傳感器網絡應用程序開發技術[J].傳感器與微系統,2007,26(3):93-96.

[2]孫利民,李建中,陳渝,等.無線傳感器網絡[M].北京:清華大學出版社,2005:319-390.

[3]邱桂芳,孫宏宇等.傳感器網絡研究及初步實現[J].微計算機應用,2007(4):350-353.

[4]Levis P,LeeN TOSSM:a simulator for TinyOS networks[EB/OL].(2005 -12 -25)[2009 -10 -12].http:∥www.tinyos.net/tinyos-1.x/doc/nido.pdf.

猜你喜歡
程序模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
3D打印中的模型分割與打包
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 香蕉久久永久视频| 国产裸舞福利在线视频合集| 亚洲中文字幕国产av| 97在线碰| 精品五夜婷香蕉国产线看观看| 国产免费久久精品99re不卡| 18黑白丝水手服自慰喷水网站| 思思热精品在线8| 18黑白丝水手服自慰喷水网站| 中文字幕波多野不卡一区| 99久久99视频| 亚洲综合中文字幕国产精品欧美| 亚洲国产综合精品一区| 精品久久高清| 国产性爱网站| 亚洲日韩欧美在线观看| 久久亚洲国产最新网站| 夜夜爽免费视频| 亚洲欧美在线综合一区二区三区| 四虎成人免费毛片| 国产人免费人成免费视频| 毛片免费视频| 五月激情综合网| 亚洲精品黄| 午夜日韩久久影院| 538国产在线| 狠狠五月天中文字幕| 亚洲天堂网站在线| 国内精品久久人妻无码大片高| 亚洲swag精品自拍一区| 国产日本视频91| 极品尤物av美乳在线观看| 丁香婷婷久久| 日韩色图区| 欧美亚洲激情| 亚洲天堂视频在线免费观看| 日日碰狠狠添天天爽| 亚洲黄色成人| 91外围女在线观看| 中文字幕永久在线看| 凹凸精品免费精品视频| 四虎成人在线视频| 欧洲高清无码在线| 欧美成人一区午夜福利在线| 亚洲性日韩精品一区二区| 狠狠躁天天躁夜夜躁婷婷| 亚洲色图另类| 99在线视频免费| 亚洲一区二区无码视频| 亚洲不卡影院| 囯产av无码片毛片一级| 天堂av高清一区二区三区| 精品一区国产精品| 全部免费特黄特色大片视频| 亚洲无码视频一区二区三区 | 无码网站免费观看| 国内老司机精品视频在线播出| 欧美午夜小视频| 国产激情无码一区二区三区免费| 亚洲天堂首页| 2019年国产精品自拍不卡| 久久无码高潮喷水| 久久中文电影| av在线手机播放| 永久免费AⅤ无码网站在线观看| 58av国产精品| 无码区日韩专区免费系列| 精品国产成人av免费| 国产精品三级专区| 原味小视频在线www国产| 日本免费福利视频| 精品无码一区二区三区电影| 色窝窝免费一区二区三区| h视频在线观看网站| 中文字幕丝袜一区二区| 亚州AV秘 一区二区三区| 久久亚洲AⅤ无码精品午夜麻豆| 国产乱人伦精品一区二区| 免费99精品国产自在现线| 欧美性精品| 亚洲无线国产观看| 久久国产高清视频|