技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 支持網(wǎng)絡(luò)傳感器的嵌入式操作系統(tǒng)設(shè)計(jì)

支持網(wǎng)絡(luò)傳感器的嵌入式操作系統(tǒng)設(shè)計(jì)

時(shí)間:2007-12-18 09:58:00來(lái)源:dujing

導(dǎo)語(yǔ):?介紹了一個(gè)以網(wǎng)絡(luò)傳感器為應(yīng)用目標(biāo)的嵌入式操作系統(tǒng)γOS的設(shè)計(jì)和幾個(gè)特點(diǎn),并建立了一個(gè)典型應(yīng)用平臺(tái),最后簡(jiǎn)要給出了γOS在該平臺(tái)上的性能。
引言   網(wǎng)絡(luò)傳感器是集傳感器技術(shù)、嵌入式計(jì)算技術(shù)、現(xiàn)代網(wǎng)絡(luò)及通信技術(shù)、分布式信息處理技術(shù)于一身的資源受限的嵌入式設(shè)備,是“普適計(jì)算”在微型嵌入式領(lǐng)域的一種重要應(yīng)用模式。   網(wǎng)絡(luò)傳感器的研究過(guò)去一直受限于硬件平臺(tái)而發(fā)展緩慢。隨著半導(dǎo)體技術(shù)、通信技術(shù)、微電子技術(shù)和微機(jī)械技術(shù)的不斷進(jìn)步,低功耗、低價(jià)格、多功能的傳感器網(wǎng)絡(luò)系統(tǒng)得到了快速發(fā)展,使得制作微小、有彈性、低功耗的傳感器節(jié)點(diǎn)成為現(xiàn)實(shí)。   背景   應(yīng)用特點(diǎn)   網(wǎng)絡(luò)傳感器應(yīng)用有其自身的特點(diǎn),主要有以下幾個(gè)方面:小尺寸和低功耗、并發(fā)密集操作、有限的物理并行性和控制層次、多樣化的設(shè)計(jì)和使用。一方面,傳感器資源極其有限,給底層嵌入式程序設(shè)計(jì)帶來(lái)較大的限制;另一方面,傳感器上運(yùn)行的應(yīng)用程序和系統(tǒng)內(nèi)核通常是緊密結(jié)合在一起的,且運(yùn)行時(shí)需要的任務(wù)數(shù)量、執(zhí)行時(shí)間、執(zhí)行結(jié)果以及內(nèi)存消耗等是可以較好預(yù)計(jì)的。   此外,傳感器種類繁多,針對(duì)不同應(yīng)用場(chǎng)合需要不同種類的傳感器;在軍事應(yīng)用、空間探索等特定應(yīng)用場(chǎng)合下,更是需要大量的不同種類的傳感器協(xié)同合作來(lái)完成特定應(yīng)用事件。因而傳感器上運(yùn)行的軟件系統(tǒng)如果能夠具備相對(duì)較好的靈活性、可配置性和可重用性,將能更好地滿足應(yīng)用需求。   現(xiàn)有嵌入式OS比較   當(dāng)前存在眾多的嵌入式操作系統(tǒng),其中具有代表性的如Vxwork、WindowsCE,pSOS和Neculeus等,它們的優(yōu)點(diǎn)是:功能強(qiáng)大;具有豐富的API和嵌入式應(yīng)用軟件;具備良好的實(shí)時(shí)性能,尤以Vxwork為代表;具備良好的穩(wěn)定性。缺點(diǎn)是:價(jià)格昂貴;源代碼不公開(kāi),以及由此導(dǎo)致的諸如對(duì)設(shè)備的支持、應(yīng)用軟件的移植等一系列的問(wèn)題;另外對(duì)于傳感器器件來(lái)說(shuō),這些嵌入式OS都顯得過(guò)于“龐大”了一些。 uc/os和嵌入式Linux當(dāng)前正獲得越來(lái)越廣泛的應(yīng)用。   它們的優(yōu)點(diǎn)是:執(zhí)行效率高、占用空間小、可擴(kuò)展性能好,同時(shí)是免費(fèi)且源代碼公開(kāi)的。uc/os具備良好的實(shí)時(shí)性能,嵌入式Linux的實(shí)時(shí)性能有待進(jìn)一步提高。缺點(diǎn)是:它們都是相對(duì)通用的嵌入式操作系統(tǒng),不能完全適應(yīng)傳感器應(yīng)用領(lǐng)域的需求,如嵌入式Linux最小仍然需要上百K的ROM和RAM空間才能工作,而uc/os的內(nèi)核盡管可縮減至幾K,但是對(duì)于某些傳感器應(yīng)用來(lái)說(shuō),仍然顯得不夠精簡(jiǎn)。   UC Berkeley設(shè)計(jì)開(kāi)發(fā)了無(wú)線傳感器網(wǎng)絡(luò)應(yīng)用的嵌入式操作系統(tǒng)TinyOS以及系統(tǒng)編程語(yǔ)言nesC。我們?cè)谄饰霈F(xiàn)有嵌入式OS特別是TinyOS的基礎(chǔ)之上,設(shè)計(jì)實(shí)現(xiàn)了支持網(wǎng)絡(luò)傳感器的微型嵌入式操作系統(tǒng)γOS,并開(kāi)發(fā)了系統(tǒng)編程語(yǔ)言AntC。   γOS設(shè)計(jì)   γOS是以網(wǎng)絡(luò)傳感器應(yīng)用為目標(biāo)的微型嵌入式操作系統(tǒng),針對(duì)網(wǎng)絡(luò)傳感器的前述應(yīng)用特點(diǎn),γOS的設(shè)計(jì)具備幾個(gè)特性:支持足夠微小的硬件系統(tǒng),便于傳感器設(shè)備在檢測(cè)環(huán)境中的任意撒布;支持足夠低的系統(tǒng)功耗,保證傳感器設(shè)備具備足夠長(zhǎng)的生命期;支持集成可與物理世界交互的傳感設(shè)備,實(shí)現(xiàn)數(shù)據(jù)的采集和傳輸;同時(shí)兼顧適度靈活的可重用性、可配置性。   γOS還必須解決傳感器網(wǎng)絡(luò)的兩個(gè)突出問(wèn)題:   1)由于網(wǎng)絡(luò)傳感器操作的并發(fā)密集性,因而必須保證眾多不同數(shù)據(jù)流的并發(fā)即時(shí)傳輸;   2)系統(tǒng)必須提供高效的模塊化管理策略,具體硬件設(shè)備和具體應(yīng)用組件必須緊密地結(jié)合在一起,減小處理和存儲(chǔ)開(kāi)銷。為此,γOS的設(shè)計(jì)重點(diǎn)主要集中在以下幾個(gè)方面:低能耗的微型內(nèi)核;微線程的系統(tǒng)架構(gòu);組件化的功能設(shè)計(jì);支持傳感通信的接口。   支持低能耗的微型內(nèi)核   為了降低能耗,γOS設(shè)計(jì)了一種相對(duì)簡(jiǎn)單的內(nèi)核機(jī)制,它由兩部分組成:系統(tǒng)初始化代碼以及一個(gè)微小的核心調(diào)度組件。系統(tǒng)初始化代碼具有平臺(tái)相關(guān)性;核心調(diào)度組件實(shí)現(xiàn)基于優(yōu)先級(jí)的兩級(jí)調(diào)度機(jī)制,它分別由兩個(gè)調(diào)度隊(duì)列組成:事件隊(duì)列和任務(wù)隊(duì)列。事件隊(duì)列優(yōu)先級(jí)高于任務(wù)隊(duì)列的優(yōu)先級(jí),每個(gè)隊(duì)列內(nèi)部基于FIFO調(diào)度機(jī)制。 [align=center][IMG=γOS的內(nèi)核調(diào)度示意圖]/uploadpic/THESIS/2007/12/2007121810032093462F.jpg[/IMG] 圖1 γOS的內(nèi)核調(diào)度示意圖[/align]   此外,為了降低能耗,在借鑒TinyOS的能耗管理算法的基礎(chǔ)之上,設(shè)計(jì)實(shí)現(xiàn)了能耗控制組件:動(dòng)態(tài)電源管理DPM組件和動(dòng)態(tài)電壓調(diào)整DVS組件。   微線程的系統(tǒng)架構(gòu) [align=center][IMG=微線程的系統(tǒng)架構(gòu)]/uploadpic/THESIS/2007/12/2007121810032850582G.jpg[/IMG] 圖2 微線程的系統(tǒng)架構(gòu)[/align]   如圖2所示,γOS的通過(guò)組件來(lái)實(shí)現(xiàn)基于事件驅(qū)動(dòng)模式的微線程系統(tǒng)架構(gòu),采用事件觸發(fā)去喚醒相應(yīng)的功能組件工作。每個(gè)功能組件可以由以下幾個(gè)部分組成:事件處理函數(shù) 用以實(shí)現(xiàn)對(duì)底層硬件中斷的處理,如MCU外部中斷、定時(shí)器中斷等,它可以向核心調(diào)度組件提交任務(wù),但并不等待任務(wù)的執(zhí)行。事件優(yōu)先級(jí)高,可搶占任務(wù)執(zhí)行,可以傳遞。它提供了一個(gè)簡(jiǎn)明的方法用于抽象軟硬件之間的邊界,使得支持硬件中斷變得非常簡(jiǎn)單。   命令 用以執(zhí)行對(duì)底層組件的操作,是非阻塞的,且必須向調(diào)用者返回命令執(zhí)行的結(jié)果(成功或失?。?。   任務(wù) 用于表示組件中計(jì)算相對(duì)集中的一組操作。任務(wù)不具有搶占性,任務(wù)與任務(wù)之間是原子化的,以先進(jìn)先出的方式執(zhí)行,即一個(gè)任務(wù)必須執(zhí)行完之后才能執(zhí)行下一個(gè)任務(wù)。但任務(wù)可以被事件處理函數(shù)搶占。   組件狀態(tài) 用以表示組件當(dāng)前的工作狀態(tài),可以被自己的功能函數(shù)或其他組件所參考。   利用微線程的系統(tǒng)架構(gòu),γOS可有效降低上下文切換代價(jià);同時(shí),通過(guò)引入原子語(yǔ)句來(lái)處理任務(wù)和事件,甚至事件和事件之間的并發(fā)操作,實(shí)現(xiàn)微線程異步通訊機(jī)制,有效地避免阻塞、輪詢和數(shù)據(jù)資源競(jìng)爭(zhēng)。   組件化的功能設(shè)計(jì)   在特定應(yīng)用場(chǎng)合下,需要大量的不同種類的傳感器協(xié)同合作來(lái)完成特定應(yīng)用事件,因而傳感器上運(yùn)行的軟件系統(tǒng)具備相對(duì)較好的靈活性和可配置性。   為此,γOS提供了對(duì)組件化的功能設(shè)計(jì)方式的支持。γOS可分解為一個(gè)核心調(diào)度組件和若干功能組件?,F(xiàn)有的功能組件主要包括:能耗控制組件如動(dòng)態(tài)電源管理 DPM組件和動(dòng)態(tài)電壓調(diào)整DVS組件,AntIP協(xié)議(支持微型嵌入式TCP/IP協(xié)議)組件,USB驅(qū)動(dòng)組件,網(wǎng)卡驅(qū)動(dòng)組件和XML分析器組件等。   根據(jù)不同應(yīng)用配置不同的功能組件,以實(shí)現(xiàn)特定的目標(biāo)。γOS支持靜態(tài)配置和動(dòng)態(tài)加載兩種方式。靜態(tài)配置組件最少可只包括一個(gè)核心調(diào)度組件,而其他的功能組件可根據(jù)相應(yīng)的應(yīng)用需求選擇預(yù)先靜態(tài)配置方式或者動(dòng)態(tài)加載方式。 [align=center] 圖3 γOS組件示意圖[/align]   支持傳感通信的接口   γOS通過(guò)AntIP組件實(shí)現(xiàn)對(duì)傳感器通信的接口支持,主要有支持傳感器節(jié)點(diǎn)間的對(duì)等(Peer-To-Peer)通信和組播通信模式,支持傳感器節(jié)點(diǎn)與PC間的對(duì)等通信模式和支持基于事件的異步通信處理模式。   AntIP是一個(gè)適用于8/16位機(jī)的微型嵌入式TCP/IP協(xié)議棧,它盡管去掉了許多全功能協(xié)議棧中不常用的功能,但仍然保留了網(wǎng)絡(luò)通信所必要的協(xié)議機(jī)制,支持ARP,IP,ICMP,TCP,UDP等協(xié)議,并且提供了簡(jiǎn)易的應(yīng)用層接口和設(shè)備驅(qū)動(dòng)層接口。AntIP的設(shè)計(jì)借鑒了uip的設(shè)計(jì)思想。   典型應(yīng)用 [align=center] 圖4 硬件平臺(tái)示意圖[/align]   γOS是以網(wǎng)絡(luò)傳感器應(yīng)用為目標(biāo)的,它可以運(yùn)行在多種目標(biāo)傳感器上。我們采用γOS機(jī)制,針對(duì)圖像數(shù)據(jù)采集方面的應(yīng)用,設(shè)計(jì)了一套較典型的網(wǎng)絡(luò)圖像傳感器系統(tǒng)。該系統(tǒng)主要由主控模塊、存儲(chǔ)模塊、USBhost模塊、以太網(wǎng)模塊、攝像頭模塊和串口模塊(預(yù)留接口)組成,采用的芯片分別為Philips公司的 P89C60X2(80C51芯片)、USB控制芯片SL811HS、RAM芯片62256和NIC芯片RTL8019AS。   平臺(tái)部分初始化代碼(AntC語(yǔ)言)如下:    useSL811HS useCamera useRTL8019 classPlatform { publicstaticintInit() { RTL8019.Init(); if(SL811HS.UsbInit()==FALSE) return-1; if(Camera.CameraInit()==FALSE) return-1; if(Camera.CameraStart()==FALSE) return-1; AntIP.Init(); return1; } publicstaticvoidStart() { postAntIP.Run; } publicstaticvoidmain() { Init(); Start(); }   }   該部分代碼做了網(wǎng)卡模塊、USB模塊以及攝像頭模塊的初始化工作。   結(jié)語(yǔ)   采用γOS的網(wǎng)絡(luò)圖像傳感器的各模塊的代碼量及所需數(shù)據(jù)空間大小如表1所示。從該表中可看出γOS的核心代碼量基本接近TinyOS的核心代碼量。 [align=center]表1 模塊代碼量與所需數(shù)據(jù)空間 [/align]   在這篇文章中,我們簡(jiǎn)要闡述了網(wǎng)絡(luò)傳感器在普適計(jì)算環(huán)境下的應(yīng)用特點(diǎn),介紹了一個(gè)以網(wǎng)絡(luò)傳感器為應(yīng)用目標(biāo)的嵌入式操作系統(tǒng)γOS的設(shè)計(jì)和幾個(gè)特點(diǎn),并建立了一個(gè)典型應(yīng)用平臺(tái),最后簡(jiǎn)要給出了γOS在該平臺(tái)上的性能。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:人機(jī)界面監(jiān)控系統(tǒng)的過(guò)去、現(xiàn)...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見(jiàn)反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書(shū) | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)