freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

棉田無線傳感器網(wǎng)絡(luò)監(jiān)測系統(tǒng)設(shè)計畢業(yè)設(shè)計論文-閱讀頁

2025-07-09 23:36本頁面
  

【正文】 碼。采用獨立的紐扣電池作為后備供電電源、獨立于系統(tǒng)的主電源,以長時間保持時間和日期信息不丟失??捎糜诖鎯σ恍┫到y(tǒng)配置以及一些需要持久保存的信息,主要只作為后備存儲器,由于空間有限,一般不存儲信息。 手持設(shè)備軟件設(shè)計手持設(shè)備的一個重要任務(wù)是提供人機界面,簡單、直白的顯示信息。并且手持設(shè)備還需要與無線模塊進(jìn)行通信、軟件模擬 IIC 總線時序與AT24C02 進(jìn)行通信、與 DS1302 實時時鐘芯片進(jìn)行通信 [4]。一方面接受底層數(shù)據(jù)包,通過 ZigBee 無線方式與終端節(jié)點連接;另一方面,往上層上位機或者手持設(shè)備等傳遞數(shù)據(jù)包,與手持設(shè)備通信時,使用 ZigBee 無線方式,與上位機通信采用 RS232 接口傳遞到本地計算機或者使用 GPRS 方式將數(shù)據(jù)傳遞到 Inter 中的數(shù)據(jù)服務(wù)器上,協(xié)調(diào)器間互聯(lián)可以采用 ZigBee 無線方式進(jìn)行跨網(wǎng)段通信(Inter PAN Communication)[5],也可以采用 MAX485 總線,組成一個 485 網(wǎng)絡(luò),或者采用 CAN 總線方式,組建一個 CAN 總線網(wǎng)絡(luò)進(jìn)行通信。另外,在網(wǎng)絡(luò)啟動時,進(jìn)行網(wǎng)絡(luò)初始化,分配地址,劃分網(wǎng)絡(luò),維護(hù)網(wǎng)絡(luò)也是協(xié)調(diào)器的功能,協(xié)調(diào)器原則上需要采用主電源供電,也可以采用電池供電,但由于 ZigBee 協(xié)議本身的一些特性決定了協(xié)調(diào)器在網(wǎng)絡(luò)中扮演了重要的角色,同時,它的負(fù)擔(dān)非常重。在沒有主電源的情況下,可以采用太陽能電池板加可充電電池的搭配來為協(xié)調(diào)器這樣的關(guān)鍵節(jié)點供電。為了滿足 GPRS 模塊對電源的要求,保證通信穩(wěn)定,此處采用 MIC29302 芯片進(jìn)行穩(wěn)壓供電,該芯片具有低壓降() 、大電流(3A)等特點,并且輸出電壓可調(diào),但價格過于昂貴,實驗證明,采用開關(guān)型電壓芯片如 LM2576 等也可以為模塊供電并且工作正常。為了節(jié)能,加入了背光控制部分,可以再空閑時關(guān)閉液晶背光,節(jié)約電能。主控制器 STC12LE5A60S2的中斷數(shù)量有限,無法為每一個按鍵都分配一個獨立的外部中斷,但掃描方式連接鍵盤消耗資源過大、實時性和響應(yīng)速度也不理想,所以該鍵盤采用共用中斷方式連接到系統(tǒng)中(連接到外部中斷 INT0) ,任何一個按鍵按下時都產(chǎn)生中斷,在中斷程序中通過掃描來識別按鍵,既可以實現(xiàn)響應(yīng)速度上的要求,也可節(jié)約系統(tǒng) IO 口和中斷資源 [6]。CAN 總線網(wǎng)絡(luò)節(jié)點一般由主控制器、CAN 總線協(xié)議控制器、CAN 總線數(shù)據(jù)收發(fā)驅(qū)動器等部分組成,在本系統(tǒng)中,主控制器是STC12LE5A60S2,CAN 總線協(xié)議采用 SJA1000 芯片,收發(fā)器采用 Philips 公司的 A82C250 芯片 [7]。他是信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計論文 24 一種半雙工網(wǎng)絡(luò),采用平衡發(fā)送和差分接收技術(shù)、收發(fā)器具有高靈敏度,可以檢測 200mv 的電壓,所以具有較強的抗共模干擾的能力,并且經(jīng)過較長距離的傳輸后,信號仍然可以被識別出來。典型的 485 網(wǎng)絡(luò)一般可以介入 32 個收發(fā)節(jié)點。 GSM/GPRS 模塊:GPRS(General Packet Radio Service)是 GSM 移動電話系統(tǒng)中的一種數(shù)據(jù)傳輸業(yè)務(wù)。GPRS 在占用較小資源的情況下有效提高了數(shù)據(jù)傳輸速率(相比GSM) ,如本系統(tǒng)中采用的 SIM900A 模塊,可以實現(xiàn)最大 的下行和最大 的上行速率。 ZigBee 模塊:作為網(wǎng)關(guān),在與傳感器節(jié)點進(jìn)行通信時、使用 ZigBee 協(xié)議,ZigBee 模塊首先收集傳感器節(jié)點的數(shù)據(jù)信息,然后通過串口或者 SPI 接口與主控制器 STC12LE5A60S2 進(jìn)行通信,將相關(guān)數(shù)據(jù)進(jìn)行上報,后者再對信息進(jìn)行緩存并選用合適的方式如 CAN 總線或者 485 總線或者串口進(jìn)行轉(zhuǎn)發(fā),傳輸?shù)缴弦粚?。主協(xié)調(diào)器作為整個網(wǎng)絡(luò)的核心,還需要與上位計算機監(jiān)控軟件通信,接受上位機軟件的指令,然后轉(zhuǎn)發(fā)指令到終端節(jié)點。網(wǎng)關(guān) 網(wǎng)關(guān) 主網(wǎng)關(guān)(與上位機通信)網(wǎng)關(guān)終端節(jié)點RS232 GPRSRs485 ZigBeeCANRs485 ZigBeeCANRs485 ZigBeeCAN手持終端ZigBee上位機ZigBee ZigBee ZigBee ZigBeeZigBee終端節(jié)點終端節(jié)點終端節(jié)點圖 37 最終系統(tǒng)運行示意圖如圖 37 所示為一個典型 ZigBee 監(jiān)控網(wǎng)絡(luò)圖示。協(xié)調(diào)器間通過 48CAN 總線或者無線連接,其中一個作為主機的協(xié)調(diào)器要與上位機通信。協(xié)調(diào)器部分的軟件編寫需要考慮以下幾方面的內(nèi)容:首先,需要考慮通信的需求,網(wǎng)關(guān)是通信的樞紐,是整個網(wǎng)絡(luò)的信息集散地,所以必須能夠具備通信功能;第二,協(xié)調(diào)器需要轉(zhuǎn)換各種不同的通信數(shù)據(jù)格式,提取出有效信息;第三,協(xié)調(diào)器部分需要接受用戶輸入,并提供信息顯示界面,也就是進(jìn)行人機交互。在主程序循環(huán)中,所有的任務(wù)被一一執(zhí)行,每個任務(wù)執(zhí)行的時候,首先查詢其要目標(biāo)事件是否發(fā)生,如果發(fā)生,則進(jìn)行下一步處理,否則直接返回。菜單任務(wù)是一個每 執(zhí)行一次的定時任務(wù),菜單任務(wù)根據(jù)需要判斷相應(yīng)的標(biāo)志位,來決定是否更新顯示內(nèi)容,這樣既可以及時更新顯示信息,也不會由于頻繁刷新而造成 LCD 顯示閃爍現(xiàn)象發(fā)生。下面通過具體的代碼分析來說明網(wǎng)關(guān)部分的程序編寫。, 該部分包括了串口 1 和串口 2 的初始化函數(shù),進(jìn)行串口波特率設(shè)置、數(shù)據(jù)格式設(shè)置等配置,還包含串口 1 和串口 2 的中斷處理函數(shù),還包括一些串口收發(fā)函數(shù),如發(fā)送字符串函數(shù) uart_send_string,發(fā)送字符函數(shù),發(fā)送十六進(jìn)制字符函數(shù)等, 該部分是來自周立功公司的 sja1000 CAN 總線控制器芯片的驅(qū)動函數(shù)模塊,主要包含 SJA1000 的初始化,配置,收發(fā)等功能,以及一些 CAN 總線相關(guān)常變量的定義,該部分內(nèi)容都是 CAN 總線中與硬件配置無關(guān)的內(nèi)容,與 CAN 總線硬件配置有關(guān)的內(nèi)容如復(fù)位引腳、中斷配置在單獨的文件中。該部分支持兩種網(wǎng)絡(luò)數(shù)據(jù)收發(fā)模式,一種是原始的 TCP 數(shù)據(jù)收發(fā),另一種是將數(shù)據(jù)封裝成 HTTP 協(xié)議中的 POST 方式的請求,然后發(fā)送到服務(wù)器上。與無線模塊的通信采用的是 SPI 接口。以上是各模塊功能的概要分析,程序的運行示意圖如圖 38 所示。進(jìn)中斷中斷返回圖 38 網(wǎng)關(guān)部分程序運行示意圖信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計論文 29 、數(shù)據(jù)感知層 終端節(jié)點硬件設(shè)計終端節(jié)點主要的任務(wù)是采集數(shù)據(jù),上傳數(shù)據(jù)。數(shù)據(jù)采集部分主要是連接傳感器,本系統(tǒng)中采用的傳感器是 DHT11 傳感器,這是一個溫濕度采集一體的傳感器,采用單總線方式與主控芯片互聯(lián),另外還加入了一個光敏電阻,用于定性感知光照強度。為了實現(xiàn)現(xiàn)場和手動匹配功能,節(jié)點上必須有至少一個按鍵,為了指示運行狀態(tài),需要連接 LED 發(fā)光數(shù)碼管。 電源模塊:節(jié)點采用 紐扣電池供電,為了方便特定場合下使用其他電源供電,特加入了一個 穩(wěn)壓芯片,用于連接外部電源工作,由于采用的是不可充電電池,在節(jié)點設(shè)計時沒有采用電源管理芯片,一切從簡。其采集的溫度范圍是 0 到 50攝氏度,分辨率是 1 攝氏度,誤差范圍是正負(fù) 2 攝氏度。另外還加入了一個光敏電阻配合 CC2X30 內(nèi)部的 ADC 進(jìn)行定性的光照強度的測量。 終端節(jié)點軟件設(shè)計終端節(jié)點要與傳感器通信,所以要軟件模擬單總線(Single Wire)的時序,收發(fā)單總線協(xié)議的命令和數(shù)據(jù)。另外,由于每個 ZigBee 網(wǎng)絡(luò)中采用樹狀網(wǎng)絡(luò),所以部分節(jié)點需要轉(zhuǎn)發(fā)數(shù)據(jù)包,扮演路由器的角色。終端節(jié)點的程序編寫是基于 ZSTACK 協(xié)議棧的, ZSTACK 本身就是基于RTOS 構(gòu)建的,其內(nèi)部包含了消息處理、消息隊列、消息發(fā)送等完整的消息驅(qū)動編程模型 [11]。一般消息有三個來源:網(wǎng)絡(luò)協(xié)議棧消息,如網(wǎng)絡(luò)狀態(tài)改變、收到數(shù)據(jù)、加入網(wǎng)絡(luò)等;外部消息,如按鍵消息、AD轉(zhuǎn)換完成消息等;定時事件消息,由用戶事先開啟的定時器觸發(fā)的事件消息,比如要每隔 2 秒周期性的采集數(shù)據(jù),則可以定義一個定時器事件,其觸發(fā)間隔為 2 秒,并同時指定其事件處理函數(shù),捕獲處理事件消息。所以事先要建立一個任務(wù),所有注冊的消息都會投遞到該任務(wù)的消息隊列中,等到該任務(wù)執(zhí)行時,會調(diào)用該任務(wù)的消息處理函數(shù)對消息隊列中的未處理消息進(jìn)行處理。 tasksEvents = (uint16 *)osal_mem_alloc( sizeof( uint16 ) * tasksCnt)。 macTaskInit( taskID++ )。 Hal_Init( taskID++ )。endif APS_Init( taskID++ )。endif ZDApp_Init( taskID++ )。endif GenericApp_Init( taskID )。各個任務(wù)的初始化函數(shù)由用戶創(chuàng)建任務(wù)之前定義好,其內(nèi)部一般進(jìn)行任務(wù)相關(guān)的初始化操作。其內(nèi)容如下:void GenericApp_Init( uint8 task_id ){ GenericApp_TaskID = task_id。 GenericApp_TransID = 0。 = 0。 = GENERICAPP_ENDPOINT。GenericApp_TaskID。GenericApp_SimpleDesc。 afRegister( amp。 // 注冊所有的按鍵消息 RegisterForKeys( GenericApp_TaskID )。 ZDO_RegisterForZDOMsg( GenericApp_TaskID, Match_Desc_rsp )。首先向應(yīng)用程序框架注冊了一個端點(endpoint),這里端點(endpoint) 的概念類似于其他地方所說的端口的含義,然后向系統(tǒng)注冊了所有的按鍵消息,此處注冊時傳入了當(dāng)前任務(wù)的任務(wù)ID(TaskID),按鍵觸發(fā)后首先是有 hal 任務(wù)(硬件抽象層任務(wù))進(jìn)行處理的,硬件抽象層任務(wù)根據(jù) TaskID 將按鍵消息投遞到注冊了按鍵消息的任務(wù)的消息隊列中。在任務(wù)中注冊消息,指定消息處理函數(shù),進(jìn)行消息處理uint16 GenericApp_ProcessEvent( uint8 task_id, uint16 events ){ afIningMSGPacket_t *MSGpkt。 // Data Confirmation message fields byte sentEP。 byte sentTransID。 // Intentionally unreferenced parameter if ( events amp。 while ( MSGpkt ) { switch ( MSGpkt ) { case GenericApp_ProcessZDOMsgs( (zdoIningMsg_t *)MSGpkt )。 case GenericApp_HandleKeys( ((keyChange_t *)MSGpkt)state, ((keyChange_t *)MSGpkt)keys )。 //返回未處理的消息 return (events ^ SYS_EVENT_MSG)。}如上圖所示,各消息在任務(wù)的消息處理函數(shù)中得到處理。首先在硬件制作上,我們從頭至尾制作了將近五六十塊電路板,最終的成品硬件電路共有近 20 塊,所有的電路板都是使用熱轉(zhuǎn)印方式手工制作完成。而軟件的編寫也是類似的,第一次嘗試將那么多的硬件集成到一起然后讓它們協(xié)調(diào)工作并不是一件很容易的事情,然而我們最終還是做到了至少是一些,并且學(xué)習(xí)到了該如何編寫規(guī)范的軟件,尤其是這次試用 ZSTACK 來進(jìn)行開發(fā),研究 ZSTACK 的使用和工作原理對我們的啟發(fā)很大,我們很多單片機部分的程序編寫都參考了 ZSTACK 很很多類似的開發(fā)框架的設(shè)計思路。信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計論文 34 致謝在本次畢業(yè)設(shè)計的實施過程中,很多老師和同學(xué)給了我們很多幫助,以及我們的指導(dǎo)老師田敏副教授,在此一并表示感謝。信息科學(xué)與技術(shù)學(xué)院畢業(yè)設(shè)計論文 35 參考文獻(xiàn)[1][M]..[2] CC253x SystemonChip Solution for IEEE and ZigBee174。s Guide[S].Texas Instrument. .[4] DS1302 Datasheet[S].Dallas Semiconductor. .[5] ZStack Developer3
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1