專利名稱::一種畜禽設施養(yǎng)殖環(huán)境監(jiān)控方法
技術領域:
:本發(fā)明涉及一種環(huán)境監(jiān)控方法,屬于畜禽設施養(yǎng)殖環(huán)境監(jiān)控領域,特別涉及一種基于無線的通信方式實現(xiàn)無線傳感器網(wǎng)絡監(jiān)控的方法。
背景技術:
:目前,國內對畜禽設施養(yǎng)殖環(huán)境的監(jiān)測手段主要是靠養(yǎng)殖人員的經驗進行人工觀測,偶爾采用溫濕度計進行人工測量,因而缺乏應有的科學性。2004年,國內出現(xiàn)了第一臺采用有線方法監(jiān)測植物設施培育和生長環(huán)境的設備,取得了一定的成效,但這種設備缺乏控制功能。它在一定范圍內和一定程度上可以用于畜禽設施養(yǎng)殖環(huán)境的監(jiān)測,但從更廣泛的應用意義和未來的發(fā)展看,主要存在下述幾個方面的問題(1)系統(tǒng)投資大、成本高、性能價格比低。(2)系統(tǒng)的電纜復用率低、復雜性高,因而系統(tǒng)的故障率高、不便于維護。(3)系統(tǒng)的擴展性差,使得監(jiān)測容量相對較小,特別是在其監(jiān)測系統(tǒng)已安裝好后需要增加監(jiān)測區(qū)域的情況下,不但需要對軟件,而且需要對硬件作較大的改動,甚至需要重新設計制作。因而,現(xiàn)有的可用于畜禽設施養(yǎng)殖環(huán)境監(jiān)測的方法和設備既不能適應現(xiàn)狀要求,不便于大面積的推廣應用,更不能滿足未來的發(fā)展需求,而且從畜禽設施養(yǎng)殖環(huán)境監(jiān)測的目的上看,系統(tǒng)不具備自動控制功能。因此,本發(fā)明提出采用無線傳感器網(wǎng)絡對畜禽設施養(yǎng)殖環(huán)境進行監(jiān)測和控制,通過軟件控制的方法實現(xiàn)監(jiān)控環(huán)境的有效監(jiān)測與可靠控制,能夠克服目前在這方面存在的問題
發(fā)明內容、技術問題本發(fā)明的目的是提供一種采用無線傳感器網(wǎng)絡技術的畜禽設施養(yǎng)殖環(huán)境監(jiān)控方法。它無需在監(jiān)測區(qū)域較大時敷設大量電纜,系統(tǒng)投資成本和運行成本低,節(jié)點安裝維護方便,擴展性強,對應用現(xiàn)場沒有特別要求,因而系統(tǒng)性能價格比高。由于采用無線傳輸方式,基于特定的操作系統(tǒng)和可靠的軟件設計,系統(tǒng)故障率低、可靠性高。技術方案一種畜禽設施養(yǎng)殖環(huán)境的監(jiān)控方法,其實現(xiàn)的監(jiān)控系統(tǒng)中包括傳感節(jié)點、控制節(jié)點、基站和監(jiān)控站點,各部分的功能主要是傳感節(jié)點實時的采集監(jiān)控環(huán)境的參數(shù)信息,通過其它傳感節(jié)點或者控制節(jié)點多跳地進行傳輸,在傳輸過程中監(jiān)測數(shù)據(jù)被多個節(jié)點處理,經多跳路由到達基站,最后到達監(jiān)控站點??刂乒?jié)點通過網(wǎng)絡多跳的方式獲得基站的控制數(shù)據(jù)包,驅動被控設備的啟停,又將其獲得的被控設備的狀態(tài),通過多跳的方式回傳到基站,最終在監(jiān)控站點顯示;基站通過通信模塊收到傳感節(jié)點和控制節(jié)點傳來的監(jiān)控環(huán)境的參數(shù)信息,運算模塊處理網(wǎng)絡節(jié)點采集的原始數(shù)據(jù),得到各種參數(shù)的物理量數(shù)據(jù)?;疽环矫姘盐锢砹繑?shù)據(jù)通過串口發(fā)往作為監(jiān)控站點的PC機,PC機中的用戶界面顯示環(huán)境數(shù)據(jù)以及被控設備狀態(tài);另一方面基站通過參數(shù)的物理量數(shù)據(jù)及控制算法得到控制命令,通過多跳的方式發(fā)往控制節(jié)點來控制被控設備,達到監(jiān)控環(huán)境的目的。該監(jiān)控方法包括下列步驟1.1.網(wǎng)絡節(jié)點(包括傳感節(jié)點和控制節(jié)點)上電初始化;1.2.基站發(fā)出系統(tǒng)預啟動數(shù)據(jù)包,并開啟系統(tǒng)啟動定時器;1.3.網(wǎng)絡節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.3.1.傳感節(jié)點轉發(fā)該數(shù)據(jù)包,休眠標識位置O,開始廣播并接收路由包,建立動態(tài)路由;1.3.2.控制節(jié)點轉發(fā)該數(shù)據(jù)包,開始廣播并接收路由包,建立動態(tài)路由;1.4.若系統(tǒng)啟動定時器設定時間到,基站發(fā)出系統(tǒng)啟動數(shù)據(jù)包,開啟網(wǎng)絡同步定時器;若系統(tǒng)啟動定時器設定時間未到,基站繼續(xù)等待該定時器設定時間;1.5.網(wǎng)絡節(jié)點收到啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.5.1.傳感節(jié)點數(shù)據(jù)發(fā)送計數(shù)器清零,休眠標識位置l,表示數(shù)據(jù)發(fā)送結束之后休眠,根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.5.2.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.6.網(wǎng)絡節(jié)點初始條件設定完成,其后分四種情況執(zhí)行1.6.1.若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,傳感節(jié)點等待網(wǎng)絡同步定時器設定時間;1.6.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,傳感節(jié)點一方面采集環(huán)境參數(shù)信息,選擇最佳路由,發(fā)送數(shù)據(jù);另一方面再次開啟網(wǎng)絡同步定時器;1.6.3.若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;1.6.4.若控制節(jié)點網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集控制設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;1.7.若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k(3Sk^10)次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加1,更新路由,傳感節(jié)點向下執(zhí)行1.8,控制節(jié)點轉到1.10;1.8.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于qG0《q^720),則啟動休眠準備定時器,向下執(zhí)行l(wèi).9;若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過q,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到l.3;1.9.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行1.9.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,轉到1.4;1.9.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為l,此時,設置處理器單元為休眠狀態(tài),關閉傳感器單元,關閉無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到l.6.2;1.10.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行1.10.1.若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,轉到l.4;1.10.2.若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到l.6.4;1.ll基站接收數(shù)據(jù),若網(wǎng)絡同步定時器時間未到,繼續(xù)接收數(shù)據(jù);若網(wǎng)絡同步定時器時間到,開始處理數(shù)據(jù)并再次開啟網(wǎng)絡同步定時器;其后,一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,控制節(jié)點收到該數(shù)據(jù)包,其被控設備做相應的啟停操作;若基站數(shù)據(jù)處理次數(shù)大于q,則轉到l.2,否則,仍執(zhí)行該步驟。所述傳感節(jié)點包括第1處理器單元以及和第1處理器單元連接的第1無線收發(fā)單元、第1存儲器單元、第1調試及通信接口、第1電源單元、傳感器單元和傳感器電源單元,傳感器單元和第1處理器單元通過I2C總線連接。所述傳感節(jié)點裝有溫度、濕度、光照、氨氣等傳感器,用于實時采集監(jiān)控環(huán)境的參數(shù)信息。所述控制節(jié)點包括第2處理器單元以及和第2處理器單元連接的第2無線收發(fā)單元、第2存儲器單元、第2調試及通信接口、第2電源單元、控制器單元和控制器電源單元。所述基站包括通信模塊和運算模塊。所述通信模塊中設有第3處理器單元以及與第3處理器單元連接的第3無線收發(fā)單元、第3存儲器單元、第3調試及通信接口和第3電源單元。所述運算模塊中設有第4處理器單元以及與第4處理器單元連接的第4調試及通信接口、第4存儲器單元、PC接口單元和第4電源單元。通信模塊和運算模塊通過串口連接。所述被控設備是指畜禽設施養(yǎng)殖環(huán)境中安裝的排氣風機、日光燈和水簾用水泵等與養(yǎng)殖環(huán)境相關的設備。上述監(jiān)控方法中,所述傳感節(jié)點的工作流程更具體地包括下列步驟2.1.傳感節(jié)點上電初始化其無線收發(fā)單元,上電初始化其傳感器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;2.2.傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,發(fā)送路由包,建立動態(tài)路由;2.3.傳感節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包,休眠標識位置l,即數(shù)據(jù)發(fā)送結束可以休眠;2.4.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步條件;2.5.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S二n+(-l)—ex((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(為510毫秒);2.6.傳感節(jié)點啟動網(wǎng)絡同步定時器;2.7.傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行2.7.1.若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;2.7.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,一方面其傳感器采集環(huán)境數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;2.8.環(huán)境數(shù)據(jù)采集完成之后,傳感節(jié)點啟動數(shù)據(jù)發(fā)送任務,選擇最佳路由發(fā)送數(shù)據(jù);2.9.若傳感節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若傳感節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加1,更新路由;2.10.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于q,則啟動休眠準備定時器,向下執(zhí)行2.11,若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過q,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到2.2,2.11.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行2.11.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置O,等待系統(tǒng)啟動數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,轉到2.3;2.11.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為l。此時,設置處理器單元為休眠狀態(tài),關閉傳感器單元,關閉無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到2.7.2。上述步驟中,處于工作狀態(tài)的傳感節(jié)點,其無線收發(fā)單元能夠中斷響應其他網(wǎng)絡節(jié)點的數(shù)據(jù)包,異步接收到數(shù)據(jù)包之后,選擇最佳路由轉發(fā)數(shù)據(jù)。上述監(jiān)控方法中,控制節(jié)點的工作流程更具體地包括下列步驟3.1.控制節(jié)點上電初始化其無線收發(fā)單元,上電初始化控制器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;3.2.控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,并等待系統(tǒng)啟動數(shù)據(jù)包;3.3.控制節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包;3.4.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S=n+(-l)—ex((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(510毫秒);3.5.控制節(jié)點啟動網(wǎng)絡同步定時器;3.6.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行3.6丄若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,控制節(jié)點等待網(wǎng)絡同步定時器設定時間;3.6.2.若網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集被控設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;3.7.若控制節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若控制節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;3.8.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其間若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并發(fā)送路由包,建立動態(tài)路由,等待系統(tǒng)啟動數(shù)據(jù)包,轉到3.3;若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到3.6;控制節(jié)點是有線電源供電,在初始化工作完成之后,一直處于工作狀態(tài),其無線收發(fā)單元能夠中斷響應其他網(wǎng)絡節(jié)點的數(shù)據(jù)包,異步接收到數(shù)據(jù)包之后,選擇最佳路由數(shù)轉發(fā)據(jù)。若收到廣播的控制數(shù)據(jù)包,根據(jù)數(shù)據(jù)包控制被控設備啟停。上述建立動態(tài)路由或更新路由的步驟如下4.1.網(wǎng)絡節(jié)點數(shù)據(jù)初始化,網(wǎng)絡節(jié)點設定到達基站的最小跳數(shù)的初始值為無窮大,基站到達基站的最小跳數(shù)為0,路由集合與候選集合為空,路由集合的優(yōu)先數(shù)為1;4.2.網(wǎng)絡節(jié)點收到路由包,更新本地節(jié)點到基站的最小跳數(shù)n,更新規(guī)則為若收到路由包的最小跳數(shù)為m,則本地節(jié)點到基站的最小跳數(shù)為m+l;4.3.網(wǎng)絡節(jié)點設定路由集合與候選集合,路由集合包括到基站跳數(shù)為n—l所有節(jié)點,候選集合為包括到基站跳數(shù)為n—2所有節(jié)點,n本地節(jié)點到基站的最小跳數(shù);4.4.若路由集合不為空,網(wǎng)絡節(jié)點選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)占.》若路由集合為空,網(wǎng)絡節(jié)點設定候選集合為路由集合,選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)點,并增大無線收發(fā)單元的發(fā)射功率;4.5.網(wǎng)絡節(jié)點調整路由集合內節(jié)點優(yōu)先級若數(shù)據(jù)發(fā)送收到應答,該節(jié)點的優(yōu)先數(shù)加l,若數(shù)據(jù)發(fā)送沒有收到應答、數(shù)據(jù)重發(fā)次數(shù)超過k次,則將該節(jié)點從集合刪除,沒有超過k次,則該節(jié)點的優(yōu)先數(shù)加l。所述基站數(shù)據(jù)的發(fā)送與接收,更具體地包括下列步驟5.1.運算模塊發(fā)送預啟動數(shù)據(jù)包;5.2.通信模塊應答,并廣播系統(tǒng)預啟動數(shù)據(jù)包,運算模塊開啟網(wǎng)絡啟動定時器,并發(fā)送路由包;5.3.通信模塊應答并廣播路由數(shù)據(jù)包;5.4.運算模塊的網(wǎng)絡啟動定時器設定時間到,發(fā)送系統(tǒng)啟動數(shù)據(jù)包,運算模塊啟動網(wǎng)絡同步定時器,數(shù)據(jù)處理次數(shù)清零;5.5.通信模塊應答并廣播系統(tǒng)啟動數(shù)據(jù)包,等待接收數(shù)據(jù),并啟動串行數(shù)據(jù)發(fā)送定時器;5.6.通信模塊收到傳感數(shù)據(jù)包或者監(jiān)控數(shù)據(jù)包,插入數(shù)據(jù)接收線性表;5.7.若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊一方面向運算模塊發(fā)送數(shù)據(jù),直到線性表為空,另一方面再次開啟串行數(shù)據(jù)發(fā)送定時器,向下執(zhí)行5.8;若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊繼續(xù)執(zhí)行5.6;5.8.運算模塊對數(shù)據(jù)包進行應答,通信模塊按照應答,將相應的待發(fā)送數(shù)據(jù)包從數(shù)據(jù)接收線性表中刪掉,直到線性表為空;5.9.網(wǎng)絡同步定時器設定時間到,運算模塊一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,通信模塊產生應答,并再次開啟網(wǎng)絡同步定時器,向下執(zhí)行5.10;5.10.運算模塊判斷網(wǎng)絡同步條件是否滿足若數(shù)據(jù)處理次數(shù)大于60,轉到5.1,否則等待通信模塊的串行數(shù)據(jù),轉到5.8。網(wǎng)絡節(jié)點發(fā)送到基站的數(shù)據(jù)稱為上行數(shù)據(jù),基站發(fā)送到網(wǎng)絡節(jié)點的數(shù)據(jù)稱為下行數(shù)據(jù)。上行數(shù)據(jù)采用路由轉發(fā)模式,下行數(shù)據(jù)采用廣播模式。通信模塊和運算模塊運行相同的操作系統(tǒng)或不同的操作系統(tǒng)。上述控制算法包括下列步驟6.1.基站獲取網(wǎng)絡節(jié)點的溫度、濕度、光照強度、氨氣濃度值以及實際接收到的傳感器節(jié)點數(shù)目,并獲取開啟的排氣風扇、日光燈狀態(tài);6.2.基站將獲得的溫度、濕度、光照強度以及氨氣濃度值求算術平均;6.3.若所有風扇都處于關閉狀態(tài),向下執(zhí)行6.4,否則轉到6.6;6.4.若平均溫度小于J^C,且平均濕度大于bn/。(50^b^95)或者氨氣濃度大于c(10《c^40)ppm,向下執(zhí)行6.5,否則轉到6.8;6.5.若平均溫度小于JpC,m(m為正整數(shù))風扇開啟時間為A分鐘,轉到6.9;若平均溫度^f/C,n,風扇開啟時間為A分鐘,轉到6.9;若平均溫度5f/C,m風扇開啟時間為A分鐘,轉到6.9;6.6.若rn個風扇處于開啟狀態(tài)且開啟時間為O,向下執(zhí)行6.7,若開啟時間不為0,轉到6.8;若風扇開啟數(shù)目為n2或ri3或n4,轉到6.8;6.7.若計時等于開啟時間,則關風扇,開啟時間置O,轉到6.9;否則直接轉到6.9;6.8.若平均溫度小于巧。C,則關閉所有風扇;若平均溫度巧f/C,則開啟m個風扇;若平均溫度fsf/C,則開啟112(I!2為正整數(shù))個風扇;若平均溫度巧。巧,°。,則開啟113(H3為正整數(shù))個風扇;若平均溫度大于il/C,則開啟H4(H4為正整數(shù))個風扇;6.9.若時間小于/,或大于G,關閉所有日光燈,轉到6.1;若時間^到/2或,3到,4,打開所有日光燈,轉到6.1;若其他,向下執(zhí)行6.10;6.10.若日光燈開且平均光照強度大于^(5(^fl,^80)Lux,關閉所有日光燈,轉到6.1;若日光燈開且平均光照強度小于^(l(^fl^40)Lux,打開所有曰光燈,轉到6.1。有益效果1.本發(fā)明中應用了時間同步機制,時間同步機制作為一種網(wǎng)絡的支撐技術,為網(wǎng)絡節(jié)點的休眠節(jié)能、TDMA與CSMA跨層設計以及協(xié)同工作提供了前提。本發(fā)明中應用的時間同步機制,實現(xiàn)簡單有效,對處理器沒有特殊要求,非常適合處理能力低的無線傳感器網(wǎng)絡節(jié)點。2.傳感節(jié)點通常是一個微型的嵌入式系統(tǒng),它的處理能力、存儲能力和通信能力相對較弱,通過攜帶能量有限的電池供電,其部分應用區(qū)域甚至人員不能到達,因此傳感節(jié)點通過更換電池的方式來補充能量是不現(xiàn)實的,如何高效使用能量來最大化網(wǎng)絡生命周期是傳感器網(wǎng)絡面臨的首要挑戰(zhàn)。我們知道傳感節(jié)點的絕大部分能量消耗在無線通信中,數(shù)據(jù)發(fā)送、數(shù)據(jù)接收和數(shù)據(jù)偵聽過程有大量的能量消耗。本發(fā)明設置了基于時間同步的休眠機制,在能夠保證網(wǎng)絡節(jié)點協(xié)同工作的前提下,極大可能的節(jié)省網(wǎng)絡節(jié)點的能量損耗。3.本發(fā)明中應用的MAC協(xié)議是基于競爭的載波偵聽多址接入?yún)f(xié)議(CSMA),雖然CSMA協(xié)議的設計盡量避免沖突的出現(xiàn),但在現(xiàn)實應用中,無線信號沖突是不可避免的,由于無線信號沖突而要進行的數(shù)據(jù)重發(fā)也消耗大量的能量。本文設計了基于時間同步的TDMA與CSMA聯(lián)合設計,通過選取合理的網(wǎng)絡同步因子,能夠很好的避免無線信號的沖突,從下文的具體實施中也可以看出,這種機制的實現(xiàn),對網(wǎng)絡丟包問題能夠很好的解決。4.本發(fā)明中的設置了有效的應答機制,實現(xiàn)可靠的無線網(wǎng)絡通信。從節(jié)省能量和減少網(wǎng)絡節(jié)點的工作載荷的角度來講,應答機制從底層實現(xiàn)更合理有效。對于基站中通信模塊和運算模塊的通信,設置了異步的應答機制。通常情況下,通信模塊和運算模塊的性能有差別,也可能運行不同的操作系統(tǒng),設置異步的應答機制可以簡單有效的實現(xiàn)二者的可靠通信。本文的應答機制,除了實現(xiàn)了可靠的網(wǎng)絡通信,而且為路由方法實現(xiàn)提供了基礎。路由機制的實現(xiàn)依賴于應答機制的實現(xiàn),其實現(xiàn)機制包括路由集合元素的刪除,以及路由集合的更新。5.本發(fā)明中應用的路由機制,有很強的應用相關性,設計原則符合無線傳感器網(wǎng)絡面向應用的特點。數(shù)據(jù)的傳輸設計了兩種模式路由轉發(fā)模式和廣播模式。按照數(shù)據(jù)流向,分為上行數(shù)據(jù)和下行數(shù)據(jù)。網(wǎng)絡節(jié)點發(fā)往基站方向的數(shù)據(jù)稱為上行數(shù)據(jù),基站發(fā)往網(wǎng)絡節(jié)點方向的數(shù)據(jù)稱為下行數(shù)據(jù)。上行數(shù)據(jù)發(fā)送頻率和數(shù)據(jù)量較大,從能耗節(jié)省的角度看,選擇路由轉發(fā)模式。下行數(shù)據(jù)包括啟動數(shù)據(jù)包和控制數(shù)據(jù)包,通常下行數(shù)據(jù)的可靠性要求很高,而且發(fā)送頻率較小,在發(fā)明中應用廣播模式。本發(fā)明的路由算法設置了多次路由發(fā)送的機制,能夠有效的保證數(shù)據(jù)的可靠傳輸,即使在個別節(jié)點失效的情況下,仍能保證數(shù)據(jù)包的可靠傳送。在少數(shù)情況下,由于其路由算法設置了備選路由集合,即使其網(wǎng)絡節(jié)點周圍的節(jié)點都失效了,其節(jié)點可調節(jié)本身無線信號的發(fā)送功率,依然能保證數(shù)據(jù)的可靠發(fā)送。6.網(wǎng)絡雙重啟動的設計實現(xiàn)。由于網(wǎng)絡節(jié)點上電和基站上電時間不同步,需要設置系統(tǒng)的啟動機制,這是傳感節(jié)點休眠機制及網(wǎng)絡節(jié)點協(xié)同工作實現(xiàn)的前提。其次,由于客觀因素或人為因素可能導致基站斷電,此時用電池供電的傳感節(jié)點仍然運行,這樣基站與網(wǎng)絡節(jié)點不再同步,本發(fā)明中設置網(wǎng)絡的雙重啟動機制可以有效地解決這個問題。7.參數(shù)的實時設定。基站設置了網(wǎng)絡同步定時器,可以跟蹤系統(tǒng)的狀態(tài)信息,即系統(tǒng)內傳感節(jié)點處于工作狀態(tài)還是休眠狀態(tài)。通過狀態(tài)跟蹤,可以確定發(fā)送命令數(shù)據(jù)包的最佳時刻,因此可以方便地實現(xiàn)網(wǎng)絡節(jié)點參數(shù)的更新設定。圖1是基于WSN的畜禽設施養(yǎng)殖環(huán)境監(jiān)控系統(tǒng)框圖圖2是傳感節(jié)點結構圖圖3是控制節(jié)點結構圖圖4是基站結構圖圖5是傳感器網(wǎng)絡協(xié)議棧圖6是本發(fā)明監(jiān)控方法的主程序流程圖圖7是基站通信模塊與運算模塊通信程序流程圖圖8是傳感節(jié)點的程序流程圖圖9是控制節(jié)點的程序流程圖圖10是動態(tài)路由建立或更新流程圖圖ll是控制算法流程圖具體實施例方式如圖1所示,基于WSN的畜禽設施養(yǎng)殖環(huán)境監(jiān)控系統(tǒng)包括傳感節(jié)點1、控制節(jié)點2、基站3和監(jiān)控站點4。傳感節(jié)點1通過傳感器單元定時地采集監(jiān)控環(huán)境的參數(shù)信息;控制節(jié)點2通過無線收發(fā)單元2-1接收基站的控制數(shù)據(jù)包,通過控制器單元2-2實時地監(jiān)控被控設備狀態(tài);基站3通過無線收發(fā)單元3-1接收傳感節(jié)點1和控制節(jié)點2發(fā)送環(huán)境的數(shù)據(jù)信息,基站的運算模塊3-2對數(shù)據(jù)進行處理,將結果發(fā)往監(jiān)控站點4并顯示?;靖鶕?jù)數(shù)據(jù)處理的結果和控制算法,通過網(wǎng)絡路由發(fā)送控制數(shù)據(jù)包到控制節(jié)點以達到監(jiān)控環(huán)境的目的。如圖2所示,傳感節(jié)點主要在第1處理器單元控制下,通過傳感器單元定時地采集環(huán)境的參數(shù)信息,通過第1無線收發(fā)單元實現(xiàn)數(shù)據(jù)的異步收發(fā),臨時數(shù)據(jù)存儲于第l存儲器單元,第l調試及通信接口方便程序的調試,傳感器電源單元為傳感器單元提供電源,第1電源單元為除傳感器單元以外的傳感器節(jié)點提供電源。如圖3所示,控制節(jié)點主要在第2處理器單元控制下,通過控制器單元定時地采集被控設備的參數(shù)信息,通過第2無線收發(fā)單元實現(xiàn)數(shù)據(jù)的異步收發(fā),臨時數(shù)據(jù)存儲于第2存儲器單元,第2調試及通信接口方便程序的調試,第2電源單元為該控制節(jié)點提供電源,控制器電源單元為控制器單元提供電源。如圖4所示,基站實現(xiàn)包括通信模塊和運算模塊。通信模塊由第3處理器單元、第3無線收發(fā)單元、第3存儲器單元、第3調試及通信接口和第3電源單元組成。運算模塊由第4處理器單元、第4存儲器單元、PC接口單元、第4調試及通信接口和第4電源單元組成。通信模塊和運算模塊通過串口連接。第3處理器為通信處理器,在第3處理器的控制下,第3無線收發(fā)單元異步接收發(fā)送數(shù)據(jù),第3電源單元為通信模塊提供電源。第4處理器為運算處理器,負責數(shù)據(jù)的運算處理以及與監(jiān)控站點的通信,第4處理器單元實現(xiàn)控制算法,并發(fā)出控制數(shù)據(jù)包。第4調試及通信接口方便程序的調試,第4電源單元為運算模塊提供電源。如圖5所示,傳感器網(wǎng)絡協(xié)議棧主要包括物理層,數(shù)據(jù)鏈路層,網(wǎng)絡層(主要實現(xiàn)路由功能)和應用層。時間同步依賴于數(shù)據(jù)鏈路層提供的數(shù)據(jù)接入和數(shù)據(jù)成幀服務。時間同步為整個網(wǎng)絡的應用提供服務?;跁r間同步,參數(shù)的實時設定、傳感節(jié)點的休眠節(jié)能、TDMA與CSMA跨層設計以及網(wǎng)絡節(jié)點的協(xié)同工作等各種應用服務可以有效的實現(xiàn)。實施例1如圖1所示的畜禽設施養(yǎng)殖環(huán)境監(jiān)控系統(tǒng)的所有節(jié)點(包括傳感節(jié)點、控制節(jié)點和基站)上電并進行初始化。傳感節(jié)點初始化其無線收發(fā)單元,使其處于信息接收狀態(tài);初始化傳感單元,準備采集數(shù)據(jù)??刂乒?jié)點初始化其無線收發(fā)單元,使其處于信息接收狀態(tài),初始化控制器,準備采集被控設備的狀態(tài)數(shù)據(jù)及控制被控設備的啟停?;境跏蓟錈o線收發(fā)單元,準備啟動系統(tǒng)。如圖6所示,本監(jiān)控方法包括下列步驟-1.1.網(wǎng)絡節(jié)點上電初始化;1.2.基站發(fā)出系統(tǒng)預啟動數(shù)據(jù)包,并開啟系統(tǒng)啟動定時器;1.3.網(wǎng)絡節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.3.1.傳感節(jié)點轉發(fā)該數(shù)據(jù)包,休眠標識位置0,開始廣播并接收路由包,建立動態(tài)的路由;1.3.2.控制節(jié)點轉發(fā)該數(shù)據(jù)包,開始廣播并接收路由包,建立動態(tài)的路由;1.4.若系統(tǒng)啟動定時器設定時間到,基站發(fā)出系統(tǒng)啟動數(shù)據(jù)包,開啟網(wǎng)絡同步定時器;若系統(tǒng)啟動定時器設定時間未到,基站繼續(xù)等待該定時器設定時間;1.5.網(wǎng)絡節(jié)點收到啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.5.1.傳感節(jié)點數(shù)據(jù)發(fā)送計數(shù)器清零,休眠標識位置l,表示數(shù)據(jù)發(fā)送結束之后休眠,根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.5.2.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.6.網(wǎng)絡節(jié)點初始條件設定完成,其后分四種情況執(zhí)行1.6.1.若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,傳感節(jié)點等待網(wǎng)絡同步定時器設定時間;1.6.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,傳感節(jié)點一方面采集監(jiān)控環(huán)境的參數(shù)信息,選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;1.6.3.若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;1.6.4.若控制節(jié)點網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集控制設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;1.7.若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過3次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由,傳感節(jié)點向下執(zhí)行l(wèi).8,控制節(jié)點轉到l.10;1.8.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于60,則啟動休眠準備定時器,向下執(zhí)行1.9;若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過60,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到l.3;1.9.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行-1.9.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,轉到l.4;1.9.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為l,此時,設置處理器單元為休眠狀態(tài),關閉傳感器模塊,關閉無線收發(fā)模塊,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到l.6.2;1.10.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行1.10.1.若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,轉到l.4;1.10.2.若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到l.6.4;1.11.基站接收數(shù)據(jù),若網(wǎng)絡同步定時器時間未到,繼續(xù)接收數(shù)據(jù);若網(wǎng)絡同步定時器時間到,開始處理數(shù)據(jù)并再次開啟網(wǎng)絡同步定時器,其后一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,控制節(jié)點收到該數(shù)據(jù)包,其被控設備做相應的啟停操作;若基站數(shù)據(jù)處理次數(shù)大于60,則轉到l.2,否則,仍執(zhí)行該步驟。發(fā)送到達基站的數(shù)據(jù)稱為上行數(shù)據(jù),基站發(fā)送的數(shù)據(jù)稱為下行數(shù)據(jù)。上行數(shù)據(jù)采用路由轉發(fā)模式,下行數(shù)據(jù)采用廣播模式。系統(tǒng)啟動定時器通常設定的周期應該是網(wǎng)絡同步定時器周期的最大值,因為基站的運算模塊先發(fā)出系統(tǒng)預啟動數(shù)據(jù)包,然后開啟系統(tǒng)啟動定時器,系統(tǒng)啟動定時器設定時間到,運算模塊發(fā)出系統(tǒng)啟動數(shù)據(jù)包。要使網(wǎng)絡同步,節(jié)點協(xié)同工作,一定要所有節(jié)點都在準備就緒準備接收的狀態(tài),因此設定該定時器周期跟網(wǎng)絡同步定時器周期一致。通信模塊收到運算模塊發(fā)送的系統(tǒng)預啟動數(shù)據(jù)包和系統(tǒng)啟動數(shù)據(jù)包,產生應答數(shù)據(jù)包,并廣播該兩種數(shù)據(jù)包。表1為系統(tǒng)預啟動數(shù)據(jù)包、系統(tǒng)啟動數(shù)據(jù)包以及路由數(shù)據(jù)包格式其中數(shù)據(jù)包類型為0x01表示系統(tǒng)預啟動數(shù)據(jù)包,0x02表示啟動數(shù)據(jù)包,0x03表示路由數(shù)據(jù)包。表1系統(tǒng)預啟動數(shù)據(jù)包、系統(tǒng)啟動數(shù)據(jù)包以及路由包的格式<table>tableseeoriginaldocumentpage21</column></row><table>傳感節(jié)點和控制結點收到預啟動數(shù)據(jù)包之后,傳感節(jié)點數(shù)據(jù)發(fā)送計數(shù)器清零,并開始廣播路由數(shù)據(jù)包,傳感節(jié)點的休眠標識位置o。數(shù)據(jù)包的表項主要包括發(fā)送數(shù)據(jù)的源節(jié)點以及到達基站的跳數(shù)信息。路由數(shù)據(jù)包主要用于路由實現(xiàn)的初始化,建立動態(tài)路由表,為發(fā)送數(shù)據(jù)做準備。在整個系統(tǒng)中,凡是要廣播的數(shù)據(jù)包,都有一個字段,就是生命期。生命期保證每個數(shù)據(jù)包只被廣播一次,相鄰一段時間,節(jié)點收到相同的生命期的數(shù)據(jù)包就會忽略。這樣就不會引起廣播風暴,浪費系統(tǒng)的能量。實施例2:傳感節(jié)點按照一定的時間周期采集監(jiān)控環(huán)境的參數(shù)信息,收到基站發(fā)送的啟動數(shù)據(jù)包之后,設定網(wǎng)絡同步定時器周期和網(wǎng)絡同步條件。網(wǎng)絡同步定時器用于網(wǎng)絡的時間同步,每個節(jié)點都設置一個網(wǎng)絡同步定時器,方便實現(xiàn)整個網(wǎng)絡的同步,有效實現(xiàn)節(jié)點的協(xié)同工作。網(wǎng)絡同步定時器設定時間到,再次開啟網(wǎng)絡同步定時器并開始采集數(shù)據(jù),數(shù)據(jù)采集完成之后,選擇最佳路由發(fā)送數(shù)據(jù),并更新路由信息。數(shù)據(jù)發(fā)送后,傳感節(jié)點設置其處理器單元為休眠狀態(tài),關閉傳感器單元,關閉其無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),最大可能的節(jié)省傳感節(jié)點能量。網(wǎng)絡同步定時器用于喚醒傳感節(jié)點,同步整個無線傳感器網(wǎng)絡,使整個網(wǎng)絡能夠有效地協(xié)同工作,其中包括傳感數(shù)據(jù)和被控設備狀態(tài)數(shù)據(jù)的轉發(fā),傳感節(jié)點收到其他節(jié)點的監(jiān)測數(shù)據(jù),選擇最佳路由完成數(shù)據(jù)的轉發(fā)任務。傳感器數(shù)據(jù)包主要包括監(jiān)控環(huán)境的各種信息,如溫度、濕度、光照強度和氨氣濃度,具體格式由表2所示表2傳感器數(shù)據(jù)包格式<table>tableseeoriginaldocumentpage22</column></row><table>如圖8所示,傳感節(jié)點的工作流程如下2.1.傳感節(jié)點上電初始化其無線收發(fā)單元,初始化傳感器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;2.2.傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,發(fā)送路由包,建立動態(tài)路由;2.3.傳感節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包,休眠標識位置l,即數(shù)據(jù)發(fā)送結束進行休眠;2.4.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步條件;2.5.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S=n+(-1)—、((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(為510毫秒);2.6.傳感節(jié)點啟動網(wǎng)絡同步定時器;2.7.傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行2.7丄若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;2.7.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,一方面其傳感器采集環(huán)境數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;2.8.環(huán)境數(shù)據(jù)采集完成之后,傳感節(jié)點啟動數(shù)據(jù)發(fā)送任務,選擇最佳路由發(fā)送、Wjl.口數(shù)據(jù);2.9.若傳感節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若傳感節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過3次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;2.10.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于60,則啟動休眠準備定時器,向下執(zhí)行2.11,若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過60,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到2.2,2.11.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行2.11.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置O,等待系統(tǒng)啟動數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,轉至!l2.3;2.11.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為l,此時,設置處理器單元為休眠狀態(tài),關閉傳感器單元,關閉無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到2.7.2。上述步驟中,處于工作狀態(tài)的傳感節(jié)點,其無線收發(fā)單元能夠中斷響應其他網(wǎng)絡節(jié)點的數(shù)據(jù)包,異步接收到數(shù)據(jù)包之后,選擇最佳路由轉發(fā)數(shù)據(jù)。實施例3:控制節(jié)點收到基站發(fā)送的啟動數(shù)據(jù)包,設定網(wǎng)絡同步定時器周期,啟動網(wǎng)絡同步定時器,若網(wǎng)絡同步定時器設定時間到,開始采集被控設備的狀態(tài)數(shù)據(jù),數(shù)據(jù)采集完成,選擇最佳路由,啟動數(shù)據(jù)發(fā)送任務,實現(xiàn)對設備的監(jiān)控。數(shù)據(jù)發(fā)送結束更新路由信息,維護動態(tài)路由??刂乒?jié)點通過有線電源供電,整個節(jié)點不需要休眠。設備監(jiān)測包主要包括被控設備的狀態(tài)信息,其包類型為0x05。控制數(shù)據(jù)包主要標識被控設備名及被控設備狀態(tài),其中源地址標識被控設備的節(jié)點id,目的地址標識下一跳的節(jié)點id,其包類型為0x06。表3設備監(jiān)測包、控制數(shù)據(jù)包格式<table>tableseeoriginaldocumentpage24</column></row><table>如圖9所示,控制節(jié)點的工作流程如下3.1.控制節(jié)點上電初始化其無線收發(fā)單元,上電初始化控制器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;3.2.控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,并等待系統(tǒng)啟動數(shù)據(jù)包;3.3.控制節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包;3.4.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S=n+(-1)-ex((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(為510毫秒);3.5.控制節(jié)點啟動網(wǎng)絡同步定時器;3.6.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行3.6.1.若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,控制節(jié)點等待網(wǎng)絡同步定時器設定時間;3.6.2.若網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集控制設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;3.7.若控制節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若控制節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過3次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;3.8.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其間若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并發(fā)送路由包,建立動態(tài)路由,等待系統(tǒng)啟動數(shù)據(jù)包,轉到3.3;若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到3.6;控制節(jié)點是有線電源供電,在初始化工作完成之后,一直處于工作狀態(tài),其無線收發(fā)單元能夠中斷響應其他網(wǎng)絡節(jié)點的數(shù)據(jù)包,異步接收到數(shù)據(jù)包之后,選擇最佳路由數(shù)轉發(fā)據(jù)。若收到廣播的控制數(shù)據(jù)包,根據(jù)數(shù)據(jù)包控制被控設備啟停。如圖10所示,動態(tài)路由的建立或更新步驟如下4.1.網(wǎng)絡節(jié)點數(shù)據(jù)初始化,網(wǎng)絡節(jié)點設定到達基站的最小跳數(shù)的初始值為無窮大,基站到達基站的最小跳數(shù)為0,路由集合與候選集合為空,路由集合的優(yōu)先數(shù)為1;4.2.網(wǎng)絡節(jié)點收到路由包,更新本地節(jié)點到基站的最小跳數(shù)n,更新規(guī)則為若收到路由包的最小跳數(shù)為m,則本地節(jié)點到基站的最小跳數(shù)為m+l;4.3.網(wǎng)絡節(jié)點設定路由集合與候選集合,路由集合包括到基站跳數(shù)為n—l所有節(jié)點,候選集合為包括到基站跳數(shù)為n—2所有節(jié)點,n本地節(jié)點到基站的最小跳數(shù);4.4.若路由集合不為空,網(wǎng)絡節(jié)點選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)點;若路由集合為空,網(wǎng)絡節(jié)點設定候選集合為路由集合,選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)點,并增大無線收發(fā)單元的發(fā)射功率;4.5.網(wǎng)絡節(jié)點調整路由集合內節(jié)點優(yōu)先級若數(shù)據(jù)發(fā)送收到應答,該節(jié)點的優(yōu)先數(shù)加l,若數(shù)據(jù)發(fā)送沒有收到應答,若數(shù)據(jù)重發(fā)次數(shù)超過3次,則將該節(jié)點從集合刪除,沒有超過3次,則該節(jié)點的優(yōu)先數(shù)加l。實施例4基站的通信模塊通過無線方式收到傳感節(jié)點和控制節(jié)點傳來的環(huán)境參數(shù)信息,運算模塊對數(shù)據(jù)進行處理,將處理結果通過串口發(fā)往監(jiān)控站點并通過界面顯示。基站根據(jù)數(shù)據(jù)處理結果及控制算法通過網(wǎng)絡多跳的方式向網(wǎng)絡控制節(jié)點發(fā)出控制命令,達到監(jiān)控環(huán)境的目的。通信模塊和運算模塊通過UART串口連接。通信模塊運行Tinyos操作系統(tǒng),運算模塊運行Linux操作系統(tǒng)。兩模塊間設置異步的應答機制,實現(xiàn)了其可靠的串口通信。異步應答機制,是通信模塊通過無線方式收到數(shù)據(jù)之后串行發(fā)送給運算模塊。這里設定串行發(fā)送定時器,因為無線傳感節(jié)點的處理能力通常會比較弱,多項任務同時進行可能引起運算模塊的癱瘓,設置了該定時器,該定時器的周期為Nxm,數(shù)值為網(wǎng)絡同步的最大偏移量,其中N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子,可以設定為510毫秒。等到串行發(fā)送定時器設定時間到,通信模塊才開始向運算模塊發(fā)送數(shù)據(jù),以避免無線數(shù)據(jù)接收任務和有線數(shù)據(jù)發(fā)送任務沖突,有利于系統(tǒng)長期可靠的工作。為此定義了基站內通信模塊和運算模塊串行發(fā)送數(shù)據(jù)包格式如表4所示。除了有效數(shù)據(jù)包外,該數(shù)據(jù)包包含一個應答數(shù)據(jù)值,該應答數(shù)據(jù)值輔助實現(xiàn)通信模塊內對應的數(shù)據(jù)包的刪除。表4通信模塊和運算模塊串行發(fā)送數(shù)據(jù)包格式序號字段名稱字段長度說明1起始標識符1byte0x7f2源地址2byte標識數(shù)據(jù)發(fā)送節(jié)點id3目的地址2byteOxOOFF標識運算模塊id4包類型1byte標識數(shù)據(jù)包類型數(shù)據(jù)長度1byte有效數(shù)據(jù)長度+K包括應答數(shù)據(jù)值)6有效數(shù)據(jù)/長度由數(shù)據(jù)長度決定7應答數(shù)據(jù)值1byte該數(shù)據(jù)值為通信模塊待刪除數(shù)據(jù)包8CRC校驗2byte27字段數(shù)據(jù)校驗9結束標識符1byte0x7f對應的通信模塊和運算模塊串行數(shù)據(jù)應答包包括一個應答數(shù)據(jù)值,該數(shù)據(jù)值由通信模塊設定,與某一個待刪除的數(shù)據(jù)包對應,其數(shù)據(jù)包格式如表5所示。表5通信模塊和運算模塊串行數(shù)據(jù)應答包格式<table>tableseeoriginaldocumentpage27</column></row><table>如圖7所示,基站數(shù)據(jù)的發(fā)送與接收步驟如下5丄運算模塊發(fā)送預啟動數(shù)據(jù)包;5.2.通信模塊應答,并廣播系統(tǒng)預啟動數(shù)據(jù)包,運算模塊開啟網(wǎng)絡啟動定時器,并發(fā)送路由包;5.3.通信模塊應答并廣播路由數(shù)據(jù)包;5.4.運算模塊的網(wǎng)絡啟動定時器設定時間到,發(fā)送系統(tǒng)啟動數(shù)據(jù)包,運算模塊啟動網(wǎng)絡同步定時器,數(shù)據(jù)處理次數(shù)清零;5.5.通信模塊應答并廣播系統(tǒng)啟動數(shù)據(jù)包,等待接收數(shù)據(jù),并啟動串行數(shù)據(jù)發(fā)送定時器;5.6.通信模塊收到傳感數(shù)據(jù)包或者監(jiān)控數(shù)據(jù)包,插入數(shù)據(jù)接收線性表;5.7.若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊一方面向運算模塊發(fā)送數(shù)據(jù),直到線性表為空,另一方面再次開啟串行數(shù)據(jù)發(fā)送定時器,向下執(zhí)行5.8;若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊繼續(xù)執(zhí)行5.6;5.8.運算模塊對數(shù)據(jù)包進行應答,通信模塊按照應答,將相應的待發(fā)送數(shù)據(jù)包從數(shù)據(jù)接收線性表中刪掉,直到線性表為空;5.9.網(wǎng)絡同步定時器設定時間到,運算模塊一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,通信模塊產生應答,并再次開啟網(wǎng)絡同步定時器,向下執(zhí)行5.10;5.10.運算模塊判斷網(wǎng)絡同步條件是否滿足若數(shù)據(jù)處理次數(shù)大于60,轉到5.1,否則等待通信模塊的串行數(shù)據(jù),轉到5.8。如圖11所示,基站的控制算法包括下列步驟6丄基站獲取網(wǎng)絡節(jié)點的溫度、濕度、光照強度、氨氣濃度值以及實際接收到的傳感器節(jié)點數(shù)目,并獲取開啟的排氣風扇狀態(tài)以及日光燈狀態(tài);6.2.基站將獲得的溫度、濕度、光照強度以及氨氣濃度值求算術平均;6.3.若所有風扇都處于關閉狀態(tài),向下執(zhí)行6.4,否則轉到6.6;6.4.若平均溫度小于17。C,且平均濕度大于85X或者氨氣濃度大于20ppm,向下執(zhí)行6.5,否則轉到6.8;6.5.若平均溫度小于9'C,1風扇開啟時間為IO分鐘,轉到6.9;若平均溫度1013°C,1風扇開啟時間為20分鐘,轉到6.9;若平均溫度1417°C,1風扇開啟時間為30分鐘,轉到6.9;6.6.若1個風扇處于開啟狀態(tài)且開啟時間為0,向下執(zhí)行7,若開啟時間不為O,轉到6.8;若風扇開啟數(shù)目為2或3或6,轉到6.8;6.7.若計時等于開啟時間,則關風扇,開啟時間置O,轉到6.9,否則直接轉到6.9;6.8.若平均溫度小于17'C,則關閉所有風扇;若平均溫度1821°C,則開啟1個風扇;若平均溫度2224"C,則開啟2個風扇;若平均溫度2529°C,則開啟3個風扇;若平均溫度大于3(TC,則開啟6個風扇;6.9.若時間小于4:30或大于20:30,關閉所有日光燈,轉到6.1;若時間4:30到8:00或17:00到20:30,打開所有日光燈,轉到6.1;若其他,向下執(zhí)行6.10;6.10.若日光燈開且平均光照強度大于601ux,關閉所有日光燈,轉到6.1;若日光燈開且平均光照強度小于301ux,打開所有日光燈,轉到6.1。權利要求1.一種畜禽設施養(yǎng)殖環(huán)境監(jiān)控方法,其實現(xiàn)的監(jiān)控系統(tǒng)包括傳感節(jié)點、控制節(jié)點、基站和監(jiān)控站點,各部分的功能主要是傳感節(jié)點實時采集環(huán)境的參數(shù)信息,通過其它傳感節(jié)點或者控制節(jié)點多跳地進行傳輸,在傳輸過程中監(jiān)測數(shù)據(jù)被多個節(jié)點處理,經多跳路由到基站,最后到達監(jiān)控站點;控制節(jié)點通過網(wǎng)絡多跳的方式獲得基站的控制數(shù)據(jù)包,驅動被控設備的啟停,又將其獲得的被控設備狀態(tài),通過其它傳感節(jié)點或者控制節(jié)點多跳的回傳到基站;基站通過通信模塊收到傳感節(jié)點和控制節(jié)點傳來的環(huán)境參數(shù)信息和被控設備運行狀態(tài)信息,運算模塊與通信模塊串行通信得到各種參數(shù)的物理量數(shù)據(jù)?;疽环矫姘盐锢砹繑?shù)據(jù)通過串口發(fā)往監(jiān)控站點,用戶界面顯示環(huán)境數(shù)據(jù)以及被控設備狀態(tài);另一方面基站通過參數(shù)的物理量數(shù)據(jù)及控制算法得到控制命令,通過多跳的方式發(fā)往控制節(jié)點來控制被控設備,達到監(jiān)控環(huán)境的目的;其特征是,該監(jiān)控方法包括下列步驟1.1.網(wǎng)絡節(jié)點(包括傳感節(jié)點和控制節(jié)點)上電初始化;1.2.基站發(fā)出系統(tǒng)預啟動數(shù)據(jù)包,并開啟系統(tǒng)啟動定時器;1.3.網(wǎng)絡節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.3.1.傳感節(jié)點轉發(fā)該數(shù)據(jù)包,休眠標識位置0,開始廣播并接收路由包,建立動態(tài)的路由;1.3.2.控制節(jié)點轉發(fā)該數(shù)據(jù)包,開始廣播并接收路由包,建立動態(tài)的路由;1.4.若系統(tǒng)啟動定時器設定時間到,基站發(fā)出系統(tǒng)啟動數(shù)據(jù)包,開啟網(wǎng)絡同步定時器;若系統(tǒng)啟動定時器設定時間未到,基站繼續(xù)等待該定時器設定時間;1.5.網(wǎng)絡節(jié)點收到啟動數(shù)據(jù)包,其后分兩種情況執(zhí)行1.5.1.傳感節(jié)點數(shù)據(jù)發(fā)送計數(shù)器清零,休眠標識位置1,表示數(shù)據(jù)發(fā)送結束之后休眠,根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.5.2.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步定時器的時間周期,啟動網(wǎng)絡同步定時器,設定網(wǎng)絡同步條件;1.6.網(wǎng)絡節(jié)點初始條件設定完成,其后分四種情況執(zhí)行1.6.1.若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,傳感節(jié)點等待網(wǎng)絡同步定時器設定時間;1.6.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,傳感節(jié)點一方面采集環(huán)境參數(shù)信息,選擇最佳路由,發(fā)送數(shù)據(jù);另一方面再次開啟網(wǎng)絡同步定時器;1.6.3.若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;1.6.4.若控制節(jié)點網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集控制設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;1.7.若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加1,更新路由;若網(wǎng)絡節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k(3≤k≤10)次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加1,更新路由,傳感節(jié)點向下執(zhí)行1.8,控制節(jié)點轉到1.10;1.8.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于q(30≤q≤720),則啟動休眠準備定時器,向下執(zhí)行1.9;若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過q,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到1.3;1.9.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行1.9.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,轉到1.4;1.9.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為1,此時,設置處理器單元為休眠狀態(tài),關閉傳感器單元,關閉無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到1.6.2;1.10.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行1.10.1.若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,轉到1.4;1.10.2.若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到1.6.4;1.11.基站接收數(shù)據(jù),若網(wǎng)絡同步定時器時間未到,繼續(xù)接收數(shù)據(jù);若網(wǎng)絡同步定時器時間到,開始處理數(shù)據(jù)并再次開啟網(wǎng)絡同步定時器;其后,一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,控制節(jié)點收到該數(shù)據(jù)包,其被控設備做相應的啟停操作;若基站數(shù)據(jù)處理次數(shù)大于q,則轉到1.2,否則,仍執(zhí)行該步驟。2.根據(jù)權利要求1所述的監(jiān)控方法,其特征在于,所述傳感節(jié)點的工作流程進一步包括下列步驟2丄傳感節(jié)點上電初始化其無線收發(fā)單元、上電初始化其傳感器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;2.2.傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,發(fā)送路由包,建立動態(tài)路由;2.3.傳感節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包,休眠標識位置l,即數(shù)據(jù)發(fā)送結束可以休眠;2.4.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包設定網(wǎng)絡同步條件;2.5.傳感節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S二n+(-l廣x((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(為510毫秒);2.6.傳感節(jié)點啟動網(wǎng)絡同步定時器;2.7.傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行2.7丄若傳感節(jié)點網(wǎng)絡同步定時器設定時間未到,等待網(wǎng)絡同步定時器設定時間;2.7.2.若傳感節(jié)點網(wǎng)絡同步定時器設定時間到,一方面其傳感器采集環(huán)境數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;2.8.環(huán)境數(shù)據(jù)采集完成之后,傳感節(jié)點啟動數(shù)據(jù)發(fā)送任務,選擇最佳路由發(fā)送數(shù)據(jù);2.9.若傳感節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若傳感節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;2.10.若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)小于q,則啟動休眠準備定時器,向下執(zhí)行2.11,若傳感節(jié)點數(shù)據(jù)發(fā)送次數(shù)超過q,等待系統(tǒng)預啟動數(shù)據(jù)包,轉到2.2,2.11.休眠準備定時器設定時間到,其后分兩種情況執(zhí)行-2.11.1.若傳感節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,休眠標識位置0,等待系統(tǒng)啟動數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,轉到2.3;2.11.2.若傳感節(jié)點沒有收到系統(tǒng)預啟動數(shù)據(jù)包,休眠標識位為l,此時,設置處理器單元為休眠狀態(tài),關閉傳感器單元,關閉無線收發(fā)單元,使傳感節(jié)點處于低功耗狀態(tài),并且傳感節(jié)點等待網(wǎng)絡同步定時器設定時間,轉到2.7.2;3.根據(jù)權利要求1所述的監(jiān)控方法,其特征在于,所述控制節(jié)點的工作流程進一步包括下列步驟3.1.控制節(jié)點上電初始化其無線收發(fā)單元、上電初始化控制器單元,等待系統(tǒng)預啟動數(shù)據(jù)包;3.2.控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,發(fā)送路由包,建立動態(tài)路由,并等待系統(tǒng)啟動數(shù)據(jù)包;3.3.控制節(jié)點收到系統(tǒng)啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并停止發(fā)送路由包;3.4.控制節(jié)點根據(jù)系統(tǒng)啟動數(shù)據(jù)包確定網(wǎng)絡同步定時器時間周期從數(shù)據(jù)包讀取網(wǎng)絡同步參數(shù)n,周期S二n+(-l廣x((id+c)%N)xm,其中id為節(jié)點號,c為數(shù)據(jù)發(fā)送次數(shù),N為網(wǎng)絡節(jié)點總數(shù),m為偏移量因子(為510毫秒);3.5.控制節(jié)點啟動網(wǎng)絡同步定時器;3.6.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其后分兩種情況執(zhí)行3.6丄若控制節(jié)點網(wǎng)絡同步定時器設定時間未到,控制節(jié)點等待網(wǎng)絡同步定時器設定時間;3.6.2.若網(wǎng)絡同步定時器設定時間到,控制節(jié)點一方面采集被控設備的狀態(tài)數(shù)據(jù),選擇最佳路由,發(fā)送數(shù)據(jù),另一方面再次開啟網(wǎng)絡同步定時器;3.7.若控制節(jié)點數(shù)據(jù)發(fā)送收到應答,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;若控制節(jié)點數(shù)據(jù)發(fā)送沒有收到應答,數(shù)據(jù)重發(fā)超過k次,發(fā)送失敗,數(shù)據(jù)發(fā)送次數(shù)加l,更新路由;3.8.控制節(jié)點等待網(wǎng)絡同步定時器設定時間,其間若控制節(jié)點收到系統(tǒng)預啟動數(shù)據(jù)包,轉發(fā)該數(shù)據(jù)包,并發(fā)送路由包,建立動態(tài)路由,等待系統(tǒng)啟動數(shù)據(jù)包,轉到3.3;若控制節(jié)點未收到系統(tǒng)預啟動數(shù)據(jù)包,轉到3.6;4.根據(jù)權利要求2或3所述的監(jiān)控方法,其特征在于,所述動態(tài)路由的建立或更新包括下列步驟4丄網(wǎng)絡節(jié)點數(shù)據(jù)初始化,網(wǎng)絡節(jié)點設定到達基站的最小跳數(shù)的初始值為無窮大,基站到達基站的最小跳數(shù)為0,路由集合與候選集合為空,路由集合的優(yōu)先數(shù)為1;4.2.網(wǎng)絡節(jié)點收到路由包,更新本地節(jié)點到基站的最小跳數(shù)n,更新規(guī)則為若收到路由包的最小跳數(shù)為m,則本地節(jié)點到基站的最小跳數(shù)為m+l;4.3.網(wǎng)絡節(jié)點設定路由集合與候選集合,路由集合包括到基站跳數(shù)為n—l所有節(jié)點,候選集合為包括到基站跳數(shù)為n—2所有節(jié)點,n本地節(jié)點到基站的最小跳數(shù);4.4.若路由集合不為空,網(wǎng)絡節(jié)點選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)占.'、、、,若路由集合為空,網(wǎng)絡節(jié)點設定候選集合為路由集合,選取優(yōu)先數(shù)最小的節(jié)點作為最佳路由選擇節(jié)點,并增大無線收發(fā)單元的發(fā)射功率;4.5.網(wǎng)絡節(jié)點調整路由集合內節(jié)點優(yōu)先級若數(shù)據(jù)發(fā)送收到應答,該節(jié)點的優(yōu)先數(shù)加l,若數(shù)據(jù)發(fā)送沒有收到應答、數(shù)據(jù)重發(fā)次數(shù)超過k次,則將該節(jié)點從集合刪除,沒有超過k次,則該節(jié)點的優(yōu)先數(shù)加l。5.根據(jù)權利要求1所述的監(jiān)控方法,其特征在于,所述基站的數(shù)據(jù)發(fā)送和接收包括下列步驟5.1.運算模塊發(fā)送預啟動數(shù)據(jù)包;5.2.通信模塊應答,并廣播系統(tǒng)預啟動數(shù)據(jù)包,運算模塊開啟網(wǎng)絡啟動定時器,并發(fā)送路由包;5.3.通信模塊應答并廣播路由數(shù)據(jù)包;5.4.運算模塊的網(wǎng)絡啟動定時器設定時間到,發(fā)送系統(tǒng)啟動數(shù)據(jù)包,運算模塊啟動網(wǎng)絡同步定時器,數(shù)據(jù)處理次數(shù)清零;5.5.通信模塊應答并廣播系統(tǒng)啟動數(shù)據(jù)包,等待接收數(shù)據(jù),并啟動串行數(shù)據(jù)發(fā)送定時器;5.6.通信模塊收到傳感數(shù)據(jù)包或者監(jiān)控數(shù)據(jù)包,插入數(shù)據(jù)接收線性表;5.7.若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊一方面向運算模塊發(fā)送數(shù)據(jù),直到線性表為空,另一方面再次開啟串行數(shù)據(jù)發(fā)送定時器,向下執(zhí)行5.8;若串行數(shù)據(jù)發(fā)送定時器設定時間到,通信模塊繼續(xù)執(zhí)行5.6;5.8.運算模塊對數(shù)據(jù)包進行應答,通信模塊按照應答,將相應的待發(fā)送數(shù)據(jù)包從數(shù)據(jù)接收線性表中刪掉,直到線性表為空;5.9.網(wǎng)絡同步定時器設定時間到,運算模塊一方面將數(shù)據(jù)結果發(fā)送到監(jiān)控站點,另一方面根據(jù)數(shù)據(jù)處理結果和控制算法,通過廣播方式向網(wǎng)絡節(jié)點發(fā)送控制數(shù)據(jù)包,通信模塊產生應答,并再次開啟網(wǎng)絡同步定時器,向下執(zhí)行5.10;5.10.運算模塊判斷網(wǎng)絡同步條件是否滿足若數(shù)據(jù)處理次數(shù)大于q,轉到5.1,否則等待通信模塊的串行數(shù)據(jù),轉到5.8。6.根據(jù)權利要求1所述的監(jiān)控方法,其特征在于,所述基站的控制算法包括下列步驟6丄基站獲取網(wǎng)絡節(jié)點的溫度、濕度、光照強度、氨氣濃度值以及實際接收到的傳感器節(jié)點數(shù)目,并獲取開啟的排氣風扇、日光燈狀態(tài);6.2.基站將獲得的溫度、濕度、光照強度以及氨氣濃度值求算術平均;6.3.若所有風扇都處于關閉狀態(tài),向下執(zhí)行6.4,否則轉到6.6;6.4.若平均溫度小于f/C,且平均濕度大于b。/。(50^b《95)或者氨氣濃度大于c(10《"40)ppm,向下執(zhí)行6.5,否則轉到6.8;6.5.若平均溫度小于巧。C,m(m為正整數(shù))風扇開啟時間為A分鐘,轉到6.9;若平均溫度5f/C,tn風扇開啟時間為^分鐘,轉到6.9;若平均溫度5f/C,m風扇開啟時間為A分鐘,轉到6.9;6.6.若m個風扇處于開啟狀態(tài)且開啟時間為O,向下執(zhí)行6.7,若開啟時間不為0,轉到6.8;若風扇開啟數(shù)目為n2或ri3或n4,轉到6.8;6.7.若計時等于開啟時間,則關風扇,開啟時間置0,轉到6.9;否則直接轉到6.9;6.8.若平均溫度小于f/C,則關閉所有風扇;若平均溫度巧f/C,則開啟m個風扇;若平均溫度fsf/C,則開啟112(I!2為正整數(shù))個風扇;若平均溫度^^'C,則開啟113(n3為正整數(shù))個風扇;若平均溫度大于^/C,則開啟H4(!14為正整數(shù))個風扇;6.9.若時間小于^或大于^,關閉所有日光燈,轉到6.1;若時間^到^2或^到/4,打開所有日光燈,轉到6.1;若其他,向下執(zhí)行6.10;6.10.若日光燈開且平均光照強度大于^(50《"^80)Lux,關閉所有日光燈,轉到6.1;若日光燈開且平均光照強度小于a2(10Sa2^40)Lux,打開所有日光燈,轉到6.1。全文摘要一種畜禽設施養(yǎng)殖環(huán)境監(jiān)控方法,包括下列步驟傳感節(jié)點實時的采集環(huán)境參數(shù)信息,控制節(jié)點采集被控設備運行狀態(tài)信息,通過其它傳感節(jié)點或控制節(jié)點多跳地進行傳輸,在傳輸過程中監(jiān)測數(shù)據(jù)被多個節(jié)點處理,經多跳路由到基站、監(jiān)控站點;基站通過通信模塊收到傳感節(jié)點和控制節(jié)點傳來的環(huán)境參數(shù)信息和被控設備運行狀態(tài)信息,運算模塊與通信模塊串行通信得到各種參數(shù)的物理量數(shù)據(jù)?;疽环矫姘盐锢砹繑?shù)據(jù)通過串口發(fā)往監(jiān)控站點,用戶界面顯示環(huán)境數(shù)據(jù)以及被控設備狀態(tài);另一方面基站通過參數(shù)的物理量數(shù)據(jù)及控制算法得到控制命令,通過多跳的方式發(fā)往控制節(jié)點來控制被控設備,達到監(jiān)控環(huán)境的目的。文檔編號H04L12/28GK101369149SQ200810196608公開日2009年2月18日申請日期2008年9月27日優(yōu)先權日2008年9月27日發(fā)明者郝永志,陳俊杰申請人:東南大學