隨著工業(yè)的不斷發(fā)展和社會的不斷進(jìn)步,無線傳感器網(wǎng)絡(luò)已經(jīng)受到了人們的高度重視,其前景也是相當(dāng)廣闊的。下面我們就無線傳感器操作系統(tǒng)進(jìn)行詳細(xì)說明和介紹。 無線傳感器網(wǎng)絡(luò)是由部署在監(jiān)測區(qū)域內(nèi)的大量廉價(jià)微型傳感器節(jié)點(diǎn),通過無線通信方式組成一個(gè)多跳的自組織的網(wǎng)絡(luò)系統(tǒng),其目的是協(xié)同感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中感知對象的信息,并發(fā)送給觀測者。無線傳感器網(wǎng)絡(luò)技術(shù)研究涉及到多個(gè)熱點(diǎn)學(xué)科的前沿領(lǐng)域,比如傳感器技術(shù)、現(xiàn)代網(wǎng)絡(luò)技術(shù)、嵌入式計(jì)算機(jī)技術(shù)、無線通信技術(shù)等。由于無線傳感器網(wǎng)絡(luò)在工業(yè)監(jiān)測、環(huán)境檢測、醫(yī)療監(jiān)護(hù)、軍事偵察等眾多的領(lǐng)域都有著廣闊的應(yīng)用前景,因而引起了世界各國工業(yè)界,學(xué)術(shù)界和軍事部門的重視,并且迅速成為當(dāng)今世界研究的熱點(diǎn)之一。 一、無線傳感器網(wǎng)絡(luò)的主要特點(diǎn)
傳感器網(wǎng)絡(luò)節(jié)點(diǎn)硬件一般都由數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)收發(fā)和電源等四個(gè)單元組成。數(shù)據(jù)采集單元通過傳感器采集外界數(shù)據(jù)并將其轉(zhuǎn)化為數(shù)字信號;數(shù)據(jù)處理單元是節(jié)點(diǎn)的核心模塊,負(fù)責(zé)協(xié)調(diào)節(jié)點(diǎn)各部分的工作,如對數(shù)據(jù)采集單元采集的數(shù)據(jù)進(jìn)行必要的處理和保存,以及數(shù)據(jù)收發(fā)單元工作模式的設(shè)置等;數(shù)據(jù)收發(fā)單元負(fù)責(zé)數(shù)據(jù)的無線傳輸以及與數(shù)據(jù)處理單元的數(shù)據(jù)交互。上述四大基本模塊與相應(yīng)的操作系統(tǒng)、協(xié)議棧和應(yīng)用程序共同構(gòu)成一個(gè)基本的無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn),眾多的網(wǎng)絡(luò)節(jié)點(diǎn)分布在一起,就可以完成無線傳感網(wǎng)絡(luò)的基本功能。
在軟件設(shè)計(jì)方面,本系統(tǒng)以專用嵌入式實(shí)時(shí)操作系統(tǒng)為依托,來管理、協(xié)調(diào)傳感器節(jié)點(diǎn)各硬件部分的工作。上層應(yīng)用以及各層的通信協(xié)議都以節(jié)能為中心,必要時(shí)可以犧牲其他的一些網(wǎng)絡(luò)性能指標(biāo)來獲得更高的電源效率。圖1所示是一個(gè)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的基本組成。
傳統(tǒng)的無線網(wǎng)絡(luò)設(shè)計(jì)基本上都是為了同時(shí)滿足人們各種各樣的需要,如語音、視頻、圖像等。而無線傳感器網(wǎng)絡(luò)一般是為了某個(gè)特定的需要而設(shè)計(jì)的,它是一種基于應(yīng)用的無線網(wǎng)絡(luò),與移動通信網(wǎng)、無線局域網(wǎng)、Bluetooth相比,無線傳感器網(wǎng)絡(luò)具有以下主要特點(diǎn):
(1)電源能量有限:無線網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)的電源都是有限的,網(wǎng)絡(luò)大多工作在無人區(qū)或者對人體有傷害的惡劣環(huán)境中,一般更換電源幾乎都是很困難的事。
(2)計(jì)算能力有限:傳感器網(wǎng)絡(luò)節(jié)點(diǎn)都采用具有嵌入式特性的處理器,但嵌入式處理器的處理能力,使傳感器節(jié)點(diǎn)的計(jì)算能力比較有限。
(3)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量大,分布范圍廣,網(wǎng)絡(luò)中的傳感器節(jié)點(diǎn)十分密集,數(shù)量巨大,有時(shí)可能達(dá)到幾百,幾千,甚至更多。
(4)動態(tài)性拓?fù)洌簜鞲衅骶W(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)可能因?yàn)榄h(huán)境或節(jié)點(diǎn)電能耗盡等因素而改變,這就要求傳感器網(wǎng)絡(luò)系統(tǒng)能夠適應(yīng)這種變化。
二、TinyOS操作系統(tǒng)
由于無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的資源十分有限,傳統(tǒng)的嵌入式操作系統(tǒng)難以正常有效地運(yùn)行和工作,特別對能量和內(nèi)存的需求矛盾比較突出。因此,需要一種全新的嵌入式操作系統(tǒng)來滿足無線傳感器節(jié)點(diǎn)的基本需求。TinyOS操作系統(tǒng)就是美國加州大學(xué)伯克利分校的研究人員針對無線傳感器網(wǎng)絡(luò)設(shè)計(jì)的開源嵌入式操作系統(tǒng)。TinyOS操作系統(tǒng)主要使用了輕量級線程、主動消息通信、事件驅(qū)動模式、組件化編程等技術(shù)。
TinyOS操作系統(tǒng)最初使用匯編和C語言。但經(jīng)研究人員進(jìn)一步的研究及使用后發(fā)現(xiàn),C語言并不能有效和方便地支持無線傳感器網(wǎng)絡(luò)應(yīng)用程序的開發(fā)。因而在經(jīng)過仔細(xì)研究和設(shè)計(jì),并在對C語言進(jìn)行了一定擴(kuò)展的基礎(chǔ)上,提出了支持組件化編程的nesC語言,該語言可以把組件化、模塊化思想和基于事件驅(qū)動的執(zhí)行模型結(jié)合起來。由于TinyOS操作系統(tǒng)和基于TinyOS操作系統(tǒng)的應(yīng)用程序全部使用nesC語言編寫,因此,在介紹TinyOS操作系統(tǒng)之前,首先介紹一下nesC語言。
三、nesC語言
TinyOS和在其上運(yùn)行的應(yīng)用程序可以看成是一個(gè)大的“執(zhí)行程序”,它由許多功能獨(dú)立且相互有聯(lián)系的軟件組件構(gòu)成,圖2所示是nesC語言的一般程序框架。該系統(tǒng)中的一個(gè)組件一般會提供一些接口(假定組件名為ComA),接口可以被認(rèn)為是這個(gè)軟件組件實(shí)現(xiàn)的一組函數(shù)的聲明,是單獨(dú)定義的一組命令和事件,其他組件通過引用相同接口聲明來使用這個(gè)組件(ComA)的函數(shù),從而實(shí)現(xiàn)組件間功能的相互調(diào)用,即組件的接口是實(shí)現(xiàn)組件間互連的通道。但若組件中實(shí)現(xiàn)的函數(shù)并未被它在接口中說明,就不能被其他組件所使用。nesC語言的定義中存在兩種不同功能的組件:其中組件接口中的函數(shù)功能專門在模塊的組件文件中實(shí)現(xiàn),而不同組件之間的關(guān)系則是專門通過稱為配件的組件文件來描述的。
本系統(tǒng)中的接口一般指一系列聲明的有名函數(shù)的集合,同時(shí),接口也是連接不同組件的紐帶。組件的接口通常是雙向的,這種接口實(shí)際上是提供者組件和使用者組件之間的一個(gè)多功能交互通道。接口的提供者所實(shí)現(xiàn)的接口的一組功能函數(shù)稱為命令;接口的使用者需要實(shí)現(xiàn)的一組功能函數(shù)稱為事件。
組件是nesC程序的基本單元,組件可分為模塊與配件兩種。
其中模塊是組件的邏輯功能實(shí)體,主要包括命令、事件、任務(wù)的具體實(shí)現(xiàn)。在TinyOS中,命令都是非阻塞的,它們完成后會通知相關(guān)的事件調(diào)用。一般情況下,命令調(diào)用都是向下的,即應(yīng)用組件調(diào)用那些與硬件緊密結(jié)合的組件,事件調(diào)用則正好相反。一些特殊的基本事件的調(diào)用必須綁定在硬件中斷上。nesC語言中還有一類特殊的函數(shù)稱為任務(wù)。在TinyOS系統(tǒng)中,任務(wù)是一個(gè)可以被調(diào)度的實(shí)體,類似于傳統(tǒng)操作系統(tǒng)中的進(jìn)程或線程概念。
配件通常可通過一系列其他組件來實(shí)現(xiàn)一個(gè)組件規(guī)范,它主要實(shí)現(xiàn)組件間的相互訪問方式。配件包括組件列表和連接說明,組件列表定義了實(shí)現(xiàn)配件的組件,連接通??蓪⒍x的元素(接口、命令、事件等)聯(lián)系在一起,以完成組件之間功能的調(diào)用。
四、TinyOS系統(tǒng)的工作原理
為了適應(yīng)無線傳感器網(wǎng)絡(luò)的特點(diǎn),TinyOS操作系統(tǒng)使用了四個(gè)主要技術(shù),組件化編程、輕量級線程、主動消息通信和事件驅(qū)動模型。
1)組件模型
TinyOS操作系統(tǒng)中的組件有四個(gè)相互關(guān)聯(lián)的部分:一組命令處理程序句柄、一組事件處理程序句柄、一個(gè)經(jīng)過封裝的私有數(shù)據(jù)幀和一組簡單的任務(wù)。任務(wù)、命令和事件處理程序在私有數(shù)據(jù)幀的上下文中執(zhí)行并切換幀的狀態(tài)。
TinyOS操作系統(tǒng)中的組件通常分為硬件抽象組件、合成組件、高層次的軟件組件三類。其中硬件抽象組件用于將物理硬件映射成為TinyOS操作系統(tǒng)中的組件,無線發(fā)送模塊是這種組件的代表,它可提供命令以操縱與射頻收發(fā)器相連的各個(gè)單獨(dú)的I/O引腳,并且發(fā)信號給事件以將數(shù)據(jù)位的發(fā)送和接收通知其他組件,圖3所示是天線傳感器應(yīng)用程序的組件結(jié)構(gòu):合成組件可以模擬高級硬件的行為,這種組件的一個(gè)例子是圖3中的Radio Byte組件,它以字節(jié)為單位與上層組件交互,并以位為單位與下層無線發(fā)送模塊組件交互,最后將無線接口映射到UART設(shè)備接口上;高層次的軟件組件可完成控制、路由以及數(shù)據(jù)傳輸?shù)裙δ?,圖3中的主動消息處理模塊是這種組件的代表,它可履行在傳輸前填充包緩存區(qū)以及將收到的消息分發(fā)給相應(yīng)的任務(wù)的功能。
2)輕量級線程
在TinyOS操作系統(tǒng)中,一般的輕量級線程task(即TinyOS操作系統(tǒng)中的任務(wù))可按照FIFO方式進(jìn)行調(diào)度,輕量級線程之間不允許搶占。任務(wù)一旦執(zhí)行,就必須執(zhí)行完畢,不能被其他任務(wù)中斷。而硬件處理線程(即中斷處理線程)則可以打斷用戶的輕量級線程和低優(yōu)先級的中斷處理線程,故可對硬件中斷快速響應(yīng)。
3)主動消息通信
主動消息通信是一個(gè)面向消息通信的高性能通信模型。在無線傳感器網(wǎng)絡(luò)中采用主動消息機(jī)制的主要目的是使無線傳感器節(jié)點(diǎn)的計(jì)算能力和通信重疊。為使主動消息更適用于無線傳感器網(wǎng)絡(luò)的需求,主動消息提供了三個(gè)最基本的通信機(jī)制,其一是帶確認(rèn)的消息傳遞,其二是有明確的消息地址,其三是消息分發(fā)。在TinyOS操作系統(tǒng)中,主動消息通信被視為一個(gè)系統(tǒng)組件,它屏蔽了下層各種不同的通信硬件,從而為上層提供了一致的通信原語,可方便開發(fā)人員實(shí)現(xiàn)各種功能的高層通信組件。
在TinyOS的主動通信中,當(dāng)數(shù)據(jù)到達(dá)傳感器節(jié)點(diǎn)時(shí),首先進(jìn)行緩存,然后由主動消息把緩存中的數(shù)據(jù)分發(fā)到上層應(yīng)用。TinyOS操作系統(tǒng)不支持動態(tài)內(nèi)存分配,所以要求每個(gè)應(yīng)用程序在其所需的消息被釋放后,要能夠返回一塊未使用的消息緩存,以用于接收下一個(gè)將要來到的消息。因?yàn)樵赥inyOS操作系統(tǒng)中,各個(gè)應(yīng)用程序之間的執(zhí)行是不能搶占的,所以不會出現(xiàn)多個(gè)未使用的消息緩存發(fā)生沖突,因此,TinyOS操作系統(tǒng)的主動消息通信組件只需要維持一個(gè)額外的消息緩存以用于接收下一個(gè)消息。如果一個(gè)應(yīng)用程序需要同時(shí)存儲多個(gè)消息,則需要在其私有數(shù)據(jù)幀上靜態(tài)分配額外的空間以保存消息。
一般情況下,由于TinyOS操作系統(tǒng)中只提供best-effort消息傳遞機(jī)制.所以需要接收方提供確認(rèn)反饋信息給發(fā)送方,以確定發(fā)送是否成功。確認(rèn)消息可由主動消息通信組件生成,這樣比在應(yīng)用層生成確認(rèn)消息包更能節(jié)省開銷,而且反饋時(shí)間短。
4)事件驅(qū)動模型
TinyOS操作系統(tǒng)是事件驅(qū)動的操作系統(tǒng),故當(dāng)一個(gè)任務(wù)完成后,就可以使其觸發(fā)一個(gè)事件,然后由TinyOS操作系統(tǒng)自動調(diào)用相應(yīng)的處理函數(shù)。事件驅(qū)動分為硬件事件驅(qū)動和軟件事件驅(qū)動。硬件事件驅(qū)動也就是一個(gè)硬件發(fā)出中斷,然后進(jìn)入中斷處理函數(shù);而軟件驅(qū)動則是通過signal關(guān)鍵字來觸發(fā)一個(gè)事件。
盡管TinyOS已被廣泛使用,而且也得到了相當(dāng)?shù)恼J(rèn)可,但這并不意味著TinyOS能夠適用于WSN的所有應(yīng)用場景。事實(shí)上,在某些場合下,TinyOS并不能很好的工作,它也存在不足的地方,比如可能出現(xiàn)過載、導(dǎo)致任務(wù)丟失、通信吞吐量下降等。無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的三個(gè)典型任務(wù)一般是傳感器采集、本地?cái)?shù)據(jù)發(fā)送和作為中繼節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包。當(dāng)本地任務(wù)發(fā)生頻率過高時(shí),任務(wù)隊(duì)列很快就滿了,這時(shí)發(fā)送或接收任務(wù)就可能丟失,從而導(dǎo)致數(shù)據(jù)包丟失;另外,如果本地任務(wù)運(yùn)行時(shí)間過長,則發(fā)送或接收數(shù)據(jù)包的任務(wù)也要等待較長時(shí)間才能得到處理,這樣,會降低通信速率。因此TinyOS的調(diào)度策略可能導(dǎo)致問題的出現(xiàn)。而FIFO的調(diào)度機(jī)制也可能引起一些重要的任務(wù)得不到實(shí)時(shí)響應(yīng)的問題。 通過以上對無線傳感器網(wǎng)絡(luò)系統(tǒng)的分析說明,希望對大家工作學(xué)習(xí)有所幫助。
訂貨電話:13402168531(微信同),021-60512919
業(yè)務(wù)QQ: 2229069859
阿里旺旺: seaine168
淘寶企業(yè)店鋪: https://shop512779345.taobao.com
公司官網(wǎng):http://www.greewire.com
現(xiàn)貨特價(jià)產(chǎn)品:
Brand Product Product name
CAPTRON 100189
CAA-550-H18G4T-PS6/CP174
CAPTRON 100225 CAA-180-H18G4T-PO6/CP174
CAPTRON 100252 ISM-2000/24VDC
CAPTRON 100271 OGR-10T-PU6
CAPTRON 100274 OGR-50T-PU6
CAPTRON 100275 OGR-80T-PU6
CAPTRON 100276 OGR-120T-PU6
CAPTRON 100277 OGR-20T-PU6
CAPTRON 100293 i20B-F56M-PS6
CAPTRON 100313 CHT1-559PRS-30
CAPTRON 100314 CHT1-1K9D-30
CAPTRON 100315 CHT12-T58P-205
CAPTRON 100318 CHT1-1K9B-30
CAPTRON 100319 CHT1-158D-19
CAPTRON 100321 CHT1-19XPRSS-H
CAPTRON 100325 CHT1-158B-30
CAPTRON 100329 CHT1-17XB-H
CAPTRON 100330 CHT1-17XB-10
CAPTRON 100331 CHT1-15XB-H
CAPTRON 100334 CHT1-55GP-30
CAPTRON 100335 CHT1-559P-29
CAPTRON 100336 CHT1-55GP-29
CAPTRON 100344 CHT1-559P-H
CAPTRON 100346 CHT1-198BRSO-30
CAPTRON 100349 CHT1-178P-H
CAPTRON 100350 CHT1-579P-H
CAPTRON 100364 CHT1-158B-371
CAPTRON 100368 CHT1-158B-368
CAPTRON 100401 CHT3-07XP-H/TG-SR/ST
CAPTRON 100418 CHT3-A71U-38/TG-SR/CP29
CAPTRON 100421 CHT32-170B-40/TG-SR
CAPTRON 100423 CHT3-476P-29/TG-SR
CAPTRON 100426 CHT3-185B-41/TG-YW
CAPTRON 100427 CHT3-456PV-H/TG-SR/ST
CAPTRON 100428 CHT3-15HB-30/TG-SR/ST
CAPTRON 100537 CTL1-158-30/RYG
CAPTRON 100582 CAA-60-H18G4T-PS6/CP174
主營產(chǎn)品類型:Sick傳感器,Sick激光掃描儀,Sick安全光柵,sick激光掃描儀,編碼器,安全光柵,安全繼電器,CAPTRON觸摸開關(guān)
主營產(chǎn)品品牌:
德國CAPTRON
,德國SICK
,威格勒Wenglor
,美國BANNER
,意大利DATALOGIC
,日本SMC
,德國IFM
,德國P+F
,費(fèi)斯托FESTO
,施耐德Schneider Electric
,西門子SIEMENS
,歐姆龍OMRON
,圖爾克Turck
,諾冠NORGREN
訂貨電話:13402168531(微信)
業(yè)務(wù)QQ: 2229069859
阿里旺旺: seaine168
淘寶企業(yè)店鋪: https://shop512779345.taobao.com
公司官網(wǎng):http://www.greewire.com
進(jìn)入上海遠(yuǎn)康自動化淘寶店鋪