亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的電壓監(jiān)測(cè)*

        2012-12-07 06:05:34李永成
        傳感器與微系統(tǒng) 2012年6期
        關(guān)鍵詞:鏈表報(bào)警電壓

        李永成,凌 青,石 春,吳 剛,陳 雷

        (1.中國(guó)科學(xué)技術(shù)大學(xué)自動(dòng)化系,安徽合肥230027;2.中國(guó)人民解放軍63895部隊(duì),河南洛陽(yáng)454750)

        0 引言

        大多數(shù)電池的內(nèi)阻隨著電池電量的降低而增加。電池電量越低,內(nèi)阻越大。電池供電時(shí),工作電流越大,內(nèi)部的電壓降也就越大,輸出電壓就越低。因此,電池電壓可以作為一種簡(jiǎn)便的電池剩余電量的指示,通過(guò)監(jiān)測(cè)電池工作電壓達(dá)到監(jiān)測(cè)剩余電量的目的[2]。

        用于無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的TI公司的CC2430/31—F128芯片具有低成本、低功耗的特點(diǎn),在接收和發(fā)射模式下,電流消耗分別低于27,25 mA,內(nèi)嵌8位的增強(qiáng)型8051單片機(jī)[3]。為了解決電池電量低所造成的定位精度問(wèn)題,本文基于CC2430/31—F128芯片的嵌入式系統(tǒng),周期性采樣電池工作電壓并進(jìn)行判斷,當(dāng)電壓值低于預(yù)先設(shè)定的報(bào)警低限時(shí),停止當(dāng)前工作,斷開(kāi)與網(wǎng)絡(luò)的聯(lián)系,確保其他節(jié)點(diǎn)交互信息的可靠性,并在監(jiān)控終端顯示屏上閃爍,同時(shí)節(jié)點(diǎn)上的LED燈閃爍報(bào)警,避免由電池電量低而產(chǎn)生的定位誤差。

        1 Zig Bee協(xié)議棧中的操作系統(tǒng)[4]

        嵌入式系統(tǒng)包含硬件和軟件兩部分,硬件部分指系統(tǒng)的內(nèi)核及外圍設(shè)備,如本例中網(wǎng)絡(luò)節(jié)點(diǎn)上的CC2430/31—F128芯片;軟件部分指嵌入式操作系統(tǒng)[5]。當(dāng)前的嵌入式操作系統(tǒng)大致分為兩類:一類是通用的多任務(wù)操作系統(tǒng)(general-purpose multi-tasking OS),能夠很好地支持多任務(wù)或者多線程,但會(huì)隨著內(nèi)部任務(wù)切換頻率的增加而產(chǎn)生很大的開(kāi)銷;另一類是事件驅(qū)動(dòng)的操作系統(tǒng)(event-driven OS),能夠支持?jǐn)?shù)據(jù)流的高效并發(fā),并考慮了系統(tǒng)的低功耗要求,使其在功耗、運(yùn)行開(kāi)銷等方面具有優(yōu)勢(shì),例如:TinyOS。

        但是TinyOS操作系統(tǒng)不支持Chipcon公司的CC2430開(kāi)發(fā)平臺(tái),因此,Chipcon公司為自己設(shè)計(jì)的ZStack協(xié)議棧中提供了一個(gè)操作系統(tǒng)抽象層(operating system abstraction layer,OSAL)的協(xié)議棧調(diào)度程序。

        1.1 OSAL對(duì)任務(wù)的調(diào)度

        Zig Bee協(xié)議棧中,每一層都執(zhí)行很多原語(yǔ)操作,對(duì)于整個(gè)協(xié)議棧,就有很多并發(fā)操作要執(zhí)行。為使整個(gè)協(xié)議棧能夠按照時(shí)間順序讓各種任務(wù)和事件有條不紊的運(yùn)行,協(xié)議棧的每一層都設(shè)計(jì)了一個(gè)事件處理函數(shù),用于處理與該層操作相關(guān)的任務(wù)和事件。這些事件處理函數(shù)即是與協(xié)議棧每一層相對(duì)應(yīng)的任務(wù),由Zig Bee協(xié)議棧中的調(diào)度程序OSAL進(jìn)行統(tǒng)一管理。因此,對(duì)于整個(gè)協(xié)議棧,無(wú)論何時(shí)發(fā)生了何種事件,OSAL調(diào)度程序都可以通過(guò)調(diào)度協(xié)議棧相應(yīng)層的任務(wù),亦即事件處理函數(shù)進(jìn)行處理。

        由于Zig Bee協(xié)議棧對(duì)實(shí)時(shí)性要求不高,因此,在設(shè)計(jì)任務(wù)調(diào)度程序時(shí),OSAL采用了輪詢?nèi)蝿?wù)調(diào)度隊(duì)列的方法進(jìn)行任務(wù)調(diào)度的管理,如圖1所示。

        圖1 OSAL任務(wù)處理流程Fig 1 OSAL task processing flow

        1)OSAL建立任務(wù)的流程

        OSAL采用鏈表結(jié)構(gòu)管理協(xié)議棧各層相應(yīng)的任務(wù)。這個(gè)任務(wù)鏈表在系統(tǒng)啟動(dòng)的時(shí)候建立,而一旦建立便一直存在于系統(tǒng)運(yùn)行的整個(gè)過(guò)程,直到系統(tǒng)關(guān)閉或硬件復(fù)位時(shí)才被刪除。鏈表中的每一項(xiàng)都是一個(gè)結(jié)構(gòu)體,用來(lái)記錄鏈表中相關(guān)任務(wù)的基本信息。鏈表的建立是按照任務(wù)優(yōu)先級(jí)從高到低進(jìn)行插入排列的。優(yōu)先級(jí)高的任務(wù)被插入到優(yōu)先級(jí)低的任務(wù)前面。當(dāng)兩任務(wù)優(yōu)先級(jí)相同時(shí),則按照時(shí)間的先后順序添加到鏈表中。

        2)OSAL對(duì)任務(wù)的處理流程

        任務(wù)鏈表成功建立后,系統(tǒng)開(kāi)始運(yùn)行。如在系統(tǒng)運(yùn)行過(guò)程中有事件發(fā)生,系統(tǒng)會(huì)調(diào)用相應(yīng)的任務(wù),即事件處理函數(shù)對(duì)所發(fā)生的事件進(jìn)行相應(yīng)的處理。在整個(gè)系統(tǒng)運(yùn)行過(guò)程中,OSAL調(diào)度程序周而復(fù)始地輪詢?nèi)蝿?wù)隊(duì)列鏈表,以查找發(fā)生的需要處理的事件。整個(gè)過(guò)程涉及2個(gè)函數(shù)的操作:一個(gè)是調(diào)度程序循環(huán)函數(shù);一個(gè)是設(shè)置事件發(fā)生標(biāo)志函數(shù)。

        1.2 OSAL對(duì)時(shí)間的管理

        Zig Bee協(xié)議棧中的每一層都有很多不同的事件發(fā)生,這些事件發(fā)生的時(shí)間順序各不相同。很多時(shí)候,事件并不要求立即得到處理,而要經(jīng)過(guò)一段時(shí)間后再進(jìn)行處理。因此,經(jīng)常會(huì)遇到這樣的情況:假設(shè)事件A發(fā)生后,要求過(guò)20 s后執(zhí)行,事件B在事件A發(fā)生5 s后產(chǎn)生,且事件B要求在10 s后執(zhí)行。從時(shí)間軸可以看出:事件B雖然在事件A之前被處理,卻在事件A之后發(fā)生。因此,為了按照合理的時(shí)間順序處理不同事件的執(zhí)行,需要對(duì)各種不同的事件進(jìn)行統(tǒng)一的時(shí)間管理。OSAL調(diào)度程序設(shè)計(jì)了與時(shí)間管理相關(guān)的函數(shù),用來(lái)管理各種不同的需要被處理的事件。

        OSAL同樣采用鏈表的方式對(duì)事件進(jìn)行統(tǒng)一的時(shí)間管理。每發(fā)生一個(gè)要被處理的事件,系統(tǒng)會(huì)啟動(dòng)一個(gè)邏輯定時(shí)器,并將此定時(shí)器添加到鏈表當(dāng)中。利用硬件定時(shí)器作為時(shí)間操作的基本單元,系統(tǒng)默認(rèn)設(shè)置時(shí)間操作的單位為1 ms,即每1 ms硬件定時(shí)器產(chǎn)生一次時(shí)間溢出中斷,在時(shí)間中斷處理程序中去更新定時(shí)器鏈表。每次更新,都將鏈表中的每一項(xiàng)事件定時(shí)器的時(shí)間計(jì)數(shù)減1,如發(fā)現(xiàn)定時(shí)器鏈表中某一表項(xiàng)時(shí)間計(jì)數(shù)已減到0,則設(shè)置相應(yīng)的事件標(biāo)志。這樣,OSAL任務(wù)調(diào)度程序就根據(jù)事件的標(biāo)志進(jìn)行相應(yīng)的事件處理,并將該定時(shí)器從鏈表中刪除。

        2 節(jié)點(diǎn)電壓的測(cè)量和采樣

        利用A/D轉(zhuǎn)換器進(jìn)行節(jié)點(diǎn)電壓的測(cè)量和采樣,是一種常用的方法。A/D轉(zhuǎn)換器是將連續(xù)的模擬量(如電壓)通過(guò)取樣轉(zhuǎn)換成離散的數(shù)字量,分為采樣、保持、量化和編碼4個(gè)過(guò)程。

        CC2430/31的A/D支持14位的模/數(shù)轉(zhuǎn)換(如圖2所示),其中包括1個(gè)參考電壓發(fā)生器、8個(gè)獨(dú)立可配置通道、電壓發(fā)生器和通過(guò)DMA模式把轉(zhuǎn)換結(jié)果寫(xiě)入內(nèi)存的控制器。在對(duì)節(jié)點(diǎn)電壓測(cè)量時(shí),選擇VDD/3(VDD為節(jié)點(diǎn)電源電壓)作為輸入端,亦即輸入電壓,以 A/D轉(zhuǎn)換器內(nèi)部1.25 V為參考電壓。

        圖2 A/D轉(zhuǎn)換器框圖Fig 2 Block diagram of A/D converter

        3 節(jié)點(diǎn)電壓監(jiān)測(cè)的實(shí)現(xiàn)

        節(jié)點(diǎn)電壓監(jiān)測(cè)功能的實(shí)現(xiàn)(如圖3所示)是在OSAL操作系統(tǒng)中添加邏輯定時(shí)器到定時(shí)器鏈表,同時(shí)啟動(dòng)定時(shí)器,利用硬件定時(shí)器的觸發(fā),更新邏輯定時(shí)器的時(shí)間,當(dāng)其溢出時(shí),調(diào)用電壓監(jiān)測(cè)事件處理函數(shù),即讓A/D轉(zhuǎn)換器進(jìn)行電源電壓的采樣,并進(jìn)行比較:當(dāng)采樣電壓低于設(shè)定的報(bào)警下限時(shí),該節(jié)點(diǎn)立即停止當(dāng)前的工作,斷開(kāi)與網(wǎng)絡(luò)的連接,在監(jiān)控終端顯示屏上閃爍,同時(shí)閃爍節(jié)點(diǎn)上的LED燈報(bào)警;當(dāng)高于報(bào)警下限時(shí),退出此次采樣監(jiān)測(cè)過(guò)程,并重新添加邏輯定時(shí)器到鏈表。

        圖3 節(jié)點(diǎn)電壓監(jiān)測(cè)流程Fig 3 Node voltage monitoring flow

        其中電壓的報(bào)警下限和電壓的采樣周期(定時(shí)時(shí)間)可以根據(jù)實(shí)際需要設(shè)定。在定位實(shí)驗(yàn)中每個(gè)節(jié)點(diǎn)都是用2節(jié)1.5 V的電池進(jìn)行供電,實(shí)驗(yàn)中發(fā)現(xiàn),當(dāng)節(jié)點(diǎn)的電源工作電壓低于2.5V的時(shí)候,定位精度即會(huì)受到影響,因此,設(shè)定報(bào)警低限為2.5 V,采樣周期為2 min。具體實(shí)現(xiàn)流程如下:

        1)啟動(dòng)系統(tǒng)后,在硬件初始化時(shí)進(jìn)行定時(shí)器的初始化和配置,同時(shí)定義定時(shí)器溢出時(shí)的回調(diào)函數(shù);

        2)在應(yīng)用層任務(wù)初始化時(shí)添加邏輯定時(shí)器到定時(shí)器鏈表,設(shè)置其溢出時(shí)對(duì)應(yīng)的任務(wù)和事件及定時(shí)時(shí)間,并啟動(dòng)該定時(shí)器;

        3)邏輯定時(shí)器啟動(dòng)時(shí),其映射的硬件定時(shí)器隨之啟動(dòng),且每1 ms產(chǎn)生一次中斷;

        4)系統(tǒng)輪詢定時(shí)器和各層的任務(wù):當(dāng)硬件定時(shí)器有中斷時(shí),調(diào)用定時(shí)器的回調(diào)函數(shù),對(duì)定時(shí)器鏈表中的所有邏輯定時(shí)器計(jì)數(shù)時(shí)間統(tǒng)一進(jìn)行減1操作。當(dāng)電壓監(jiān)測(cè)定時(shí)器溢出時(shí),設(shè)置電壓監(jiān)測(cè)事件標(biāo)志位,操作系統(tǒng)讀出其標(biāo)志位,對(duì)電壓監(jiān)測(cè)事件進(jìn)行處理;

        5)處理函數(shù)中利用A/D轉(zhuǎn)換器對(duì)電源電壓采樣檢測(cè),并與設(shè)定的報(bào)警下限比較,如果電壓過(guò)低則停止當(dāng)前的工作,斷開(kāi)與網(wǎng)絡(luò)的連接,在監(jiān)控終端顯示屏上閃爍,同時(shí)節(jié)點(diǎn)上的LED燈閃爍報(bào)警;當(dāng)大于報(bào)警下限時(shí)退出程序,重新添加邏輯定時(shí)器到定時(shí)器鏈表,回到步驟(2)。

        4 實(shí)驗(yàn)過(guò)程和實(shí)驗(yàn)結(jié)果

        為了驗(yàn)證監(jiān)測(cè)效果,選擇開(kāi)放空間進(jìn)行定位實(shí)驗(yàn)(如圖4所示)。

        實(shí)驗(yàn)中對(duì)其中15個(gè)節(jié)點(diǎn)進(jìn)行電壓監(jiān)測(cè),為保證電壓值的穩(wěn)定,當(dāng)節(jié)點(diǎn)上的LED燈閃爍10次以上時(shí)再測(cè)量節(jié)點(diǎn)的電壓值,所得結(jié)果,如表1所示。

        圖4 實(shí)驗(yàn)過(guò)程Fig 4 Experimental process

        表1 節(jié)點(diǎn)報(bào)警時(shí)測(cè)得的電壓值Tab 1 Measured voltage value while node is alarming

        由表可見(jiàn),當(dāng)節(jié)點(diǎn)電壓低于設(shè)定的報(bào)警下限時(shí),可以報(bào)警;當(dāng)節(jié)點(diǎn)電壓接近報(bào)警下限時(shí),報(bào)警狀態(tài)并不穩(wěn)定,有時(shí)閃爍十幾次,有時(shí)閃爍幾十次,只有電源工作電壓低于報(bào)警下限0.03 V右時(shí),LED燈才會(huì)一直閃爍而完全停止當(dāng)前的工作。這是因?yàn)椴煌墓ぷ鳡顟B(tài),節(jié)點(diǎn)工作電流不同,造成電池內(nèi)部壓降不同,即電源的工作電壓隨著不同的工作狀態(tài)有波動(dòng)。為此,設(shè)定節(jié)點(diǎn)電壓在低于報(bào)警下限工作20 s,即在電源工作電壓穩(wěn)定后,閃爍節(jié)點(diǎn)上的LED燈。這時(shí)上述現(xiàn)象消失,LED燈能夠連續(xù)閃爍,進(jìn)入報(bào)警狀態(tài)。

        5 結(jié)論

        當(dāng)前在無(wú)線定位應(yīng)用中的CC2430/31芯片,不能定期進(jìn)行電池剩余電量監(jiān)測(cè),本文對(duì)此進(jìn)行了功能上的完善,在Zig Bee協(xié)議棧中添加邏輯定時(shí)器,利用A/D轉(zhuǎn)換器進(jìn)行電壓的采樣,定時(shí)監(jiān)測(cè)節(jié)點(diǎn)電壓,以保證節(jié)點(diǎn)在定位應(yīng)用中不會(huì)因?yàn)殡姵仉娏康牟蛔愣霈F(xiàn)定位精度偏差的現(xiàn)象。同時(shí)也為其他以電池板供電的無(wú)線傳感器網(wǎng)點(diǎn)節(jié)點(diǎn)進(jìn)行電池電量的監(jiān)測(cè)提供了一種切實(shí)可行的方法。

        [1]Wang W D,Zhu Q X.RSS-based Monte-Carlo localization for mobile sensor networks[J].The Institution of Engineering and Technology,2008,2(5):673-681.

        [2]Farahani S.Newnes Zig Bee wireless networks and transceivers[M].The United States:Elsevier Ltd,2008.

        [3]高守偉,吳燦陽(yáng).Zig Bee技術(shù)實(shí)踐教程——基于CC2430/31的無(wú)線傳感器網(wǎng)絡(luò)解決方案[M].北京:北京航空航天大學(xué)出版社,2009.

        [4]閆 沫.Zig Bee協(xié)議棧分析與設(shè)計(jì)[D].上海:復(fù)旦大學(xué),2007.

        [5]Aamodt K.Using the ADC to measure supply voltage[DB/OL].[2011—06—11].http:∥www.ti.com/lit/an/swra100a/swra100a.pdf.

        猜你喜歡
        鏈表報(bào)警電壓
        基于二進(jìn)制鏈表的粗糙集屬性約簡(jiǎn)
        跟麥咭學(xué)編程
        讓我們一起認(rèn)識(shí)電壓
        LKD2-HS型列控中心驅(qū)采不一致報(bào)警處理
        基于鏈表多分支路徑樹(shù)的云存儲(chǔ)數(shù)據(jù)完整性驗(yàn)證機(jī)制
        中學(xué)生數(shù)理化·中考版(2016年10期)2016-12-22 18:28:46
        2015款奔馳E180車安全氣囊報(bào)警
        基于Multisim的滯回電壓比較器的設(shè)計(jì)及其應(yīng)用
        電子制作(2016年21期)2016-05-17 03:52:45
        高電壓精密電壓互感器的研制
        死于密室的租住者
        在线亚洲+欧美+日本专区| 国产亚洲精品av久久| 2021亚洲国产精品无码| 7m精品福利视频导航| 国产精品高潮呻吟av久久4虎 | 免费大片黄国产在线观看| 久久久久久国产精品mv| 亚洲妇女水蜜桃av网网站| 国产好片日本一区二区三区四区| 在线亚洲精品中文字幕美乳色| 一二三四区中文字幕在线| 人妻 色综合网站| 激情亚洲一区国产精品| 国产对白刺激在线观看| 久久午夜一区二区三区| 蜜桃18禁成人午夜免费网站| 久久精品无码av| 亚洲av乱码中文一区二区三区| 国产好片日本一区二区三区四区| 男女视频一区二区三区在线观看| 少妇无码太爽了在线播放| 狠狠色噜噜狠狠狠狠米奇777| 精品 无码 国产观看| 狼人av在线免费观看| 成人影院在线观看视频免费| 欧美最猛黑人xxxx黑人猛交| 在线亚洲人成电影网站色www| 高潮喷水无遮挡毛片视频| 在线观看国产激情免费视频| 在线麻豆精东9制片厂av影现网 | 欧美大黑帍在线播放| 久久青青草原国产精品最新片| 亚洲无av码一区二区三区| 色狠狠一区二区三区中文| 亚洲日韩国产精品乱-久| 国产精品网站夜色| 亚洲最大视频一区二区三区| 精品国产一区二区三区av| 久久久久久国产精品免费免费男同| 精品一精品国产一级毛片| 成人免费播放片高清在线观看|