


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、水環(huán)境監(jiān)測系統(tǒng)節(jié)點軟件設(shè)計本文中設(shè)訃的監(jiān)測丹點選取IAREmbeddedWorkbench為開址壞境.編程語盲為C語言【仙.應(yīng)用這款毎成開發(fā)環(huán)境設(shè)計開發(fā)節(jié)點的軟件.方便快捷,開發(fā)效率高.并且此開發(fā)環(huán)境的Cg編譯器能夠忙成高效幷可靠的可執(zhí)擰代碼,同時能夠針對具體的芯片進廳代碼優(yōu)化.本監(jiān)測系統(tǒng)的節(jié)點軟件設(shè)訃k耍包抹隘度傳感器的測鼠程用.畢于CC3430fUZigbm網(wǎng)簾的廿點Z問通們程序以朋匯聚廿點F1上位機通過-t11燈數(shù)腳的處理程用4.1監(jiān)測節(jié)點初始化程序設(shè)計溫度監(jiān)穂節(jié)點主要功能厲矍運用傳感器去采鋸H標(biāo)水域的話度值.井通過傳感器微據(jù)線將數(shù)字伯號件輸?shù)絾蝺吼嚨腎/O口幷任單片機屮處理,然后通過R
2、F射頻摸塊將戲?仃勺無線發(fā)送踣匯舉節(jié)點,上位機通過卅1讀取匯聚節(jié)點接豎敵戡.晟店可以再在后臺系統(tǒng)對轉(zhuǎn)換后的伯號信息進帝査詢D水環(huán)境監(jiān)測節(jié)點是作丸整個系姣工作的第一環(huán)節(jié).皺投放在訂標(biāo)水域?qū)嵤?shù)據(jù)液址匚作.監(jiān)測節(jié)點稈序總休設(shè)計如閣41所示.”亠一.Ftf,*RmiS閣11臨測節(jié)點桎斥總體訕計監(jiān)測背點實施數(shù)據(jù)棗集工作之詢、戢先設(shè)置眼片機CC2430(W鐘頻率.站后設(shè)置穩(wěn)用器,一整個系統(tǒng)循環(huán)等特一直到穩(wěn)斥器供電穩(wěn)定.隨后初始化單片機的輸入輸出錨U,在本系統(tǒng)中,傳感器的監(jiān)測敵抑:從POU輸入,即把POLH殳疋為輸入模式,即將內(nèi)部的輸出卜拉驅(qū)動管關(guān)閉,將P0置LCC2430的4個定時器分別是16位定時器(
3、定時器1)MAC定時器(定時»2).8位定時器(定時器3和4),單片機種通過控制寄存器TxCTL來控制定時器操作,這世采用輸出比較模式來進行典吃的輸入捕獲和輸出比較操作.CC2430具有兼容RF收發(fā)器,是以業(yè)界領(lǐng)先的CC2420射頻核心為基礎(chǔ)的,節(jié)點之間的無線通苗便采用IEEE802.154定義卜的24GHz直接序列擴頻頻譜(DSSS)RF調(diào)制恪式來進fj(4SL添加介門狗程序以保證也片機運行鎧定,防止收到外界磴場干擾.IIS測廿點的系純初始化如圖42圖4.2節(jié)點初始化涼秤圖4.2溫度數(shù)據(jù)采集模塊程序設(shè)計本系統(tǒng)是対11標(biāo)水域的相關(guān)物理參數(shù)進行測屋從而完咸實時監(jiān)測的功能,數(shù)據(jù)佇息是通過
4、相關(guān)傳感器進行采集,本監(jiān)測節(jié)點搭載DS18B20溫度傳感器實現(xiàn)水環(huán)境溫度的采集和傳輸.DS1SB20的溫度檢測的-個工作周期可分為兩個部分,即溫度檢測和數(shù)據(jù)處理在DS18B2D共仃三種形態(tài)的存儲器資源.它們分別是:ROM只讀存儲器.RAM數(shù)抑:暫存器,EEPROMIE易失性記憶體。根據(jù)DS18B20的通們協(xié)議,DS18B20只能作為從機,而單片機系統(tǒng)作為主機,單片機控制DS18B20完成一次溫度轉(zhuǎn)換必須經(jīng)過3個步驟:復(fù)位、發(fā)送ROM指令、發(fā)送RAM指令.毎次對DS18B20的操作都要進行以上三個步驟問。復(fù)位過程為:DS1SB20的所有通佶都由復(fù)位脈沖組成的初始化序列開始.該初始化序列由匸機發(fā)出
5、.后銀由DS1SB20發(fā)出的存在脈沖(presencepulse)。虹片機將數(shù)擁線抑低至少480uS然施杯放數(shù)抑:線等待15-60uSilDS18B20接收佇:;,DS18B20接收到們號后,會把數(shù)據(jù)線拉低60-240uS.L機檢測到敵卅線被拉低后標(biāo)識虹位成功.發(fā)送ROM指令:ROM折令表示主機對系統(tǒng)上所接的全部DS1SB20進行尋址,以確定對那個DS1SB20進行操作,或者是讀収某個DS1SB20的ROM序列號。發(fā)送RAM指令:RAM指令用于單片機對DS1SB20內(nèi)部RAM進行操作,如讀訛寄«器的值,或占設(shè)置寄仔器的值.DS1SB20的或"J時.?圖如圖43所j;根據(jù)實際
6、測試的情況總結(jié)出了以卜的DS18B20操作步驟:(1'初始化DS18B20:(a) t先控制數(shù)據(jù)線,將其設(shè)置為高電平位“1”:(b) 然厲進行延時,延時的時間要盡雖的短,不過不要求特別精確和嚴(yán)格:(c) 接著再將數(shù)抓線祝為低電平“0”:(d) 陽進行延時操作,延時的時何大致在480微秒到960微秒左右:(e) 將數(shù)據(jù)線拉回到高電平位“1”:(f) 延時等待.初始化成功時,DS18B20將在1550毫秒間產(chǎn)生-個低電平“0”,這個電位的變化可以用來確定它的存在但是為了避免用序陷入死循環(huán),冋該限制延時等待的時間,進行必要的超時控制:(g) 如果CPU讀到數(shù)擁線的低電平“0”麻,仍需耍進行延
7、時,延時的時間耍從數(shù)抑線拉到高電、“1”算起.也就是從第(e)步的時間算起,并11至少要480微抄:(h) 赧后以將數(shù)抑;線拉到高電平“L結(jié)束。(2) DS1SB20的寫操作:<a)數(shù)據(jù)線置低電平“0”:(b) 延時確定時何設(shè)鬥為小15微秒的值,例如為2微妙:(c) 發(fā)送字節(jié)按由低到高的順序,每次只發(fā)送一位:<d)延時一個大于60微秒的時何:<e)拉數(shù)據(jù)線到高電平,并延時一個小于15微秒的時何(可以設(shè)為2微秒):(f)重交上述<a)(f)的步驟.將所仃的了節(jié)都發(fā)送出£:<g)錄后將數(shù)據(jù)線拉至島電半.(3) DS1SB20的讀操作:(a)拉高數(shù)據(jù)線:<
8、;b)延時2微秒:<c)拉低數(shù)據(jù)線:<d)延時一個小于15微秒的時何.這里為2微秒:(e)拉高數(shù)據(jù)線,并設(shè)迓端口狀態(tài)為輸入狀態(tài):<f)延時4微秒.或冷是其他小于15微秒的時何:<g)通過讀取數(shù)抑;線來獲得一個狀態(tài)位,然后進行敵拯處理:(h)延時70微秒,或者是其他-個處J:60120倣秒間的時間。4.3節(jié)點通信程序設(shè)計431節(jié)點之間數(shù)據(jù)傳送程序設(shè)計將監(jiān)測節(jié)點置于II標(biāo)水域,并把每個節(jié)點編號??际赖接捎谠趯嶋H惜況卜.節(jié)點耍大面枳覆孟監(jiān)測的H標(biāo)水域,但是由于水流或者是風(fēng)向形響,W點位置會不斷的發(fā)生變動,所以監(jiān)測節(jié)點和匯聚卩點Z間的實際距離是否超過無線通信距離便成為數(shù)據(jù)佇息能
9、否成功接收的關(guān)鍵因索。為了解決物理趾離仃可能超過通佇趾離的惜況,本系統(tǒng)讓每個監(jiān)測節(jié)點都有轉(zhuǎn)發(fā)功能,這樣遠(yuǎn)距離的數(shù)據(jù)們息就可以多跳,經(jīng)過路由節(jié)點到達匯聚節(jié)點,實現(xiàn)遠(yuǎn)距離的數(shù)據(jù)傳輸。節(jié)點通信數(shù)據(jù)流程圖如圖44增應(yīng)節(jié)點路由節(jié)點'林聚節(jié)點J圖4.4節(jié)點通信數(shù)據(jù)涼幹圖把毎個節(jié)點編號,確定路由節(jié)點并將路由表'弓入相關(guān)節(jié)點,節(jié)點正常匸作的時候,每個路由節(jié)點都把白己的ID以及父節(jié)點ID.溫度和電壓倍息廣播出去,同時其他監(jiān)測節(jié)點都在按照踣由表來轉(zhuǎn)發(fā)數(shù)據(jù),最后數(shù)據(jù)轉(zhuǎn)發(fā)到匯聚節(jié)山由匯聚節(jié)點通過申11發(fā)送給服務(wù)器。同時隨著時間和節(jié)點相對位置的改變,能通過匯聚節(jié)點向路由節(jié)點發(fā)送新的路由表,建工新伯息傳輸
10、路徑.節(jié)點Z何的通伯模型如圖4.5:X1RHA*+二叫V二:9"*"V;:MhiiW冬MihW/di、亠林由節(jié)a路由節(jié)衣Miiiva樣由wa路由"點捋由審炷45貝有傳感功能的路由節(jié)點和匯鎖節(jié)點通信模型通過CC2430的射頻模塊發(fā)送數(shù)擁報文,傳輸?shù)臄?shù)據(jù)報文包含了節(jié)點的節(jié)點編號,能盤狀態(tài)和溫度值伯息.未經(jīng)路由的報文格式如圖46所示,經(jīng)過路由的報文格式如圖47所示:FatherID:MyID:Temperature:1byte1byte6byteVoltage圖4.6末經(jīng)過路由的報文格式圖4.7經(jīng)過路由的報文格式LQI:FatherID:MyID:Tempentun.V
11、blageIVyteIVyteIVyte6Vyte所以我們可以淸晰的從上傳到上位機的數(shù)據(jù)們息中讀収到測址值還仃備節(jié)點的H體工作位息等,便r我們及時調(diào)整卩點位世以適應(yīng)ji體環(huán)境的變化,保證監(jiān)測數(shù)據(jù)的準(zhǔn)確性和可靠性。監(jiān)測"點z何數(shù)據(jù)傳送程丿?沒n流程圖如圖4&II由II由,z>II由i.ncin*;.ul號.ricir>)編度.電用為佶34>出£羯:.£;.:A)'.為估MX遇怙H»«kflftn崔it/H£M«nA&lX*MUiAi«tt.AW«©Hlit
12、oAr*tf%i£Ul£圖4.8監(jiān)測15點之間數(shù)據(jù)傳送程序設(shè)計滅程圖可以G出監(jiān)測節(jié)點都具有路由轉(zhuǎn)發(fā)的功能ID號和路由衣都固化在硬件節(jié)點之中系統(tǒng)初始化之厲,測a到的數(shù)據(jù)信息就按照路由路徑在節(jié)點之間傳遞并到達匯聚節(jié)點,通過串口得到數(shù)據(jù)侑息.43.2串口通信程序設(shè)計傷置于斥邊的匯聚節(jié)點通過無線接收到監(jiān)測水域內(nèi)監(jiān)測*點發(fā)送來的數(shù)擁佇息.將敵犯信息送至廿點fpu,I:位機通過串口讀収敵拯并作進一步處理,實現(xiàn)整個數(shù)據(jù)的傳輸過程.圖4.9是匯聚節(jié)點接收轉(zhuǎn)發(fā)數(shù)據(jù)流程圖。WWHIt圖4.9匯聚節(jié)點接收轉(zhuǎn)發(fā)數(shù)據(jù)滅程圖匯聚節(jié)點接收到水域內(nèi)監(jiān)測節(jié)點的數(shù)據(jù)們息后上傳至上位機,匯聚節(jié)點將數(shù)據(jù)們息發(fā)送到
13、弗口的程序如卜:voidDataToPort(UINT8*pBuf)UINT8*buf,UINT8temBufll;UINT81;if(byte)osal_strien(pBuf)=10)teniBuffOla1;foi(i=l;i<=10,i+)tcniDuf(i-pDufi-l;buf=teniBuf,definedMT_TASK)debug_sti(iunt8*)buf);#enchf)上位機和匯聚節(jié)點通過九針出口相連在匯聚節(jié)點接收到監(jiān)測節(jié)點的數(shù)據(jù)們息并將伯息送至弗口處后,由上位機對串口數(shù)據(jù)進行讀取,從而得到監(jiān)測數(shù)據(jù).上位機對笊口數(shù)據(jù)讀取程庁如卜:publicpartialclas
14、sL1通SystemWebUI.PageprotectedvoidPage_Load(objectsender,EveiitArgse)Portlnfosportinfos=newPortinfos();protectedvoidSendbtn_Click(objectsender,EventArgse)Portinfoportinfo=newPortlnfo();portinfoPortName=tlusPortName.Text,portinfoBaiuidRate=ConveilTolnt32(tlusBaudRateText);portinfoDataBits=ConvertToInt
15、32(thisDataBitsText);portinfoStopBits=Convert.Tolnt32(thisstopBitsText);portinfoData=thisDataText;portinfosadd(portinfo)tPortSendportsend=newPortsend(),portsend.Send(portinfos).現(xiàn)實環(huán)境卜.我們要隨著節(jié)點的實際位進情況更新路由表.以保證數(shù)據(jù)能夠正常的在系統(tǒng)內(nèi)傳輸.所以監(jiān)測節(jié)點和匯聚節(jié)點要能實現(xiàn)雙向通伯.-旦判斷霸要更新路由表.我們可以通過W聚肖點的無線發(fā)送讓監(jiān)測節(jié)點收到收到新的路由佔息.匯聚節(jié)點向路由節(jié)點發(fā)送路由表程序流
16、程圖設(shè)計如圖410:1f1mar*tnxrY4.10匯寨卩點向路由傳點發(fā)送路由山榨序流程圖4.4節(jié)點分簇算法設(shè)計根據(jù)上文介紹的本系統(tǒng)節(jié)點之何通伯特點每個節(jié)點都有轉(zhuǎn)發(fā)能力.路由節(jié)點會收到匯聚節(jié)點發(fā)送的新路宙表,實現(xiàn)動態(tài)擠撲.如何很據(jù)節(jié)點在監(jiān)測水域的實際惜況確定新的路由農(nóng)就是保證系統(tǒng)數(shù)據(jù)傳輸穩(wěn)定的一頂遺要壞節(jié).本課題中.設(shè)計了一種分簇算法,對網(wǎng)絡(luò)進行分簇,選取簇頭卩點,為每個卩點構(gòu)造路由表,并將執(zhí)行算法Z/H的網(wǎng)絡(luò)拓?fù)淦燥@示.算法介紹實驗開始前.要先行測S:被測水域的大小參數(shù).將節(jié)點成長方形的分布置于H標(biāo)水域,如圖4.11所示。我們已知的卄點佇息包括:卩恵編號(SensorNumber),&qu
17、ot;點坐標(biāo)(CoordinateX.CoordinateY)fll疔點剩余能址(DumpEnergy),在執(zhí)行完算法之后,我們能夠紂到:"點所在簇的編(ArealD),卩點和色(IsHead)和宵點路由衷(由父巧點編兮Father.子節(jié)點編號Children組成).步狠1:首先根據(jù)地理位置分簇.如圖所示分成四個三角形根據(jù)肖點位置坐標(biāo)劃分節(jié)點所在區(qū)域.対ArealD賦值劃分式如圖412所示./®0O/O/KI.圖412對監(jiān)測區(qū)城分塊選聯(lián)匯聚節(jié)點為坐標(biāo)原點.建芷坐標(biāo)軸,劃分節(jié)點分傷的業(yè)形區(qū)域.如圖所示:CoordinateY>=0IW域0:CoorchnateX<
18、0&&CoorclinateY/CoordinateX>=-2W/L區(qū)域1:CoorclinateX<0&&CoordinateY/CoordinateX<-2W/L區(qū)域2:CoorchnateX>=0&&CoordinateY/CoordinateX>2W/L域3:CoorclinateX>0&&CoordinateY/CoordinateX<=2W/L步驟2:為毎個子區(qū)域選取簇頭節(jié)點,選取簇頭節(jié)點的標(biāo)準(zhǔn)是:根據(jù)節(jié)點到匯聚節(jié)點的距離對該區(qū)域的節(jié)點進行排序.次序在范N/3+1.2N/3+1的節(jié)點作為泯選第頭.即根擁節(jié)點到汗聚節(jié)點的距離選擇中何段的節(jié)點作為該簇的候選簇頭(2)選取候選節(jié)點中倒余能呈赧髙的節(jié)點作為簇頭.步驟3:為毎個節(jié)點構(gòu)造路由表,對Father和Children賦值具體過程為:對于簇成員節(jié)點I.如'4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字智慧方案數(shù)據(jù)推動的智慧水務(wù)蘇州華衍水務(wù)
- 數(shù)字智慧方案建筑施工行業(yè)的數(shù)字化價值
- 人工智能訓(xùn)練師4級模擬復(fù)習(xí)測試卷附答案
- 儀表工試題(中級)復(fù)習(xí)測試卷含答案
- 供電防護員練習(xí)卷含答案
- 2025年書法線描試題
- 職業(yè)資格-交通工程真題庫-13
- 職業(yè)資格-公路水運公共基礎(chǔ)真題庫-8
- 全面解析初級會計試題及答案內(nèi)容
- 2025年一站式會計實務(wù)試題及答案
- 國際壓力性損傷-潰瘍預(yù)防和治療臨床指南(2025年版)解讀課件
- 小學(xué)一年級數(shù)學(xué)100以內(nèi)口算題
- 人教版(2019)必修第三冊Unit 1 Festivals And Celebrations Listening and Speaking 課件
- 【醫(yī)療管理分享】:PET-CT報告書寫課件
- 質(zhì)量、環(huán)境、職業(yè)健康安全、有害物質(zhì)管理手冊
- 心肺復(fù)蘇(簡易呼吸氣囊)評分標(biāo)準(zhǔn)
- 房地產(chǎn)殘余價值估價報告
- PAN纖維結(jié)晶度取向度和形貌的演變規(guī)律對其性能影響
- 島津GCMS-TQ8040教材
- (完整版)化工原理各章節(jié)知識點總結(jié)
- 空調(diào)水管線試壓沖洗方案
評論
0/150
提交評論