基于無線通信的溫度監(jiān)測系統(tǒng)的設計
系統(tǒng)中所有的節(jié)點都工作在同一信道,同一時刻只能有兩個節(jié)點通訊,并且只有在主節(jié)點對某一節(jié)點有數據要求時通信才會連接,其他時間雙方都處于未連接狀態(tài),通訊協(xié)議的實現有效避免了數據的沖突,降圖4 主節(jié)點程序流程圖低了系統(tǒng)功耗。
圖4 主節(jié)點程序流程圖
5 軟件設計
遵循通信協(xié)議,本系統(tǒng)的軟件程序主要包括主節(jié)點的程序設計,二級節(jié)點的程序設計和底層傳感器的程序設計。主節(jié)點程序負責整個系統(tǒng)的協(xié)調工作,系統(tǒng)的數據請求命令都是由主控節(jié)點發(fā)出,數據的匯總最后也都是有主控節(jié)點完成。二級節(jié)點程序在整個系統(tǒng)起中轉作用,底層傳感器程序只負責數據的采集和發(fā)射。遵循通信協(xié)議,在進行各節(jié)點的程序設計時系統(tǒng)要有一個統(tǒng)一的規(guī)劃,系統(tǒng)為除了主節(jié)點外的每個NRF905 模塊都分配一個不同的地址,整個系統(tǒng)共有220個NRF905模塊,對應了220個地址,地址的配置是實現整個通訊協(xié)議的關鍵。NRF905通訊的特點是兩個NRF905模塊必需具有相同的頻段和地址才能通訊成功,這200多個具有不同地址的模塊要通訊成功必須嚴格遵守軟件流程,并且除了主節(jié)點以外其他各個節(jié)點在開機的時候NRF905都被配置一個唯一的地址,且置為接收模式。
主節(jié)點程序設計是整個通訊的關鍵,二級節(jié)點的軟件設計思想和主節(jié)點程序設計相同。主節(jié)點程序流程圖如圖4所示,主節(jié)點控制器初始化NRF905模塊,配置NRF905的地址為二級節(jié)點1的地址,主控制器置NRF905為發(fā)射模式,發(fā)送數據請求命令,因為主節(jié)點配置的是二級節(jié)點1的地址,主節(jié)點發(fā)送數據請求命令,只有二級節(jié)點1能夠收到,其它二級節(jié)點接收不到,實現了點對點的通信。主節(jié)點發(fā)送完畢數據請求命令后,進入等待狀態(tài)1,接收來自二級節(jié)點的應答消息,收到應答消息后結束等待狀態(tài)1,進入等待狀態(tài)2,接收來自二級節(jié)點的數據包,收到數據包后結束等待狀態(tài)2。節(jié)點進入等待狀態(tài)后若是沒有收到來自二級節(jié)點的應答信息或數據包都會延時一定時間自動結束等待。主節(jié)點控制器重置NRF905的地址為二級節(jié)點2的地址,重復上述過程,每采集完一個二級節(jié)點的數據包后,主節(jié)點控制器都要重置NRF905的地址為下個二級節(jié)點地址,如此循環(huán)直到采集完整個二級節(jié)點的數據,主控制器通過串口傳送所有數據給監(jiān)控主機,傳送完畢后主控制器重新配置NRF905的地址進行下一輪數據的采集。按照上述流程,主節(jié)點控制器要存放20個二級節(jié)點的地址,這是輪詢通信的關鍵。
6 結束語
本文給出了一種具有兩層簇狀結構的無線通信的溫度監(jiān)測系統(tǒng),通信協(xié)議簡單可靠,系統(tǒng)吸取了傳感器網絡的特點又不需要考慮類似傳感器網絡中的建網設計,大大降低了能量消耗。系統(tǒng)的結構簡單體積小,可以廣泛應用在大棚溫室測溫、糧庫溫度監(jiān)測、電力開關測溫等領域。
評論