基于nRF401芯片的多路消防栓無水監測系統設計
由于無線通信的特殊性,外部干擾使得誤碼率較高。因此,軟件設計首先要保證能夠識別噪聲和有效數據,通信協議的設計就顯得十分重要。設計中采用如下通信協議:
(1)數據發送使用查詢方式,接收使用中斷方式。
(2)數據幀包含幀首、幀尾、地址、數據及校驗部分,數據幀的格式如圖4所示。幀首采用雙字節0x55和0xAA,幀尾使用0x01結束;地址是用雙字節地址,共16b,地址分配上,各個電流采集模塊地址不相連,使其保持一定的容錯性;數據部分為一個字節;地址部分和數據部分使用16進制ASCII送;幀的校驗部分使用CRC4校驗。本文引用地址:http://cqxgywz.com/article/157709.htm

(3)接收方檢測到連續的0x550xAA字節,表示接收到有效的數據幀,如果幀校驗通過,接收方根據命令請求后發送相應數據,若該幀結構非法,則丟棄該幀,不做任何處理。
(4)發送方在發送查詢請求后,將啟動監控定時器并等待接收應答,如果在規定的時間內沒有收到相應的數據應答,發送方將重新發送請求,并進行錯誤計數,以免數據丟失。如果錯誤計數達到一定值,發送方停止發送請求,進入錯誤處理。
消防栓信息采集模塊軟件設計,當從機收到自己的地址并向主機應答后,轉為接收模式。如隨后一段時間內再沒有收到主機的查詢信號,則認為主機已經正確接收到該從機發送回的應答信號,完成一次正確通信,從機轉為接收模式。消防栓信息采集模塊部分流程圖如圖5所示。

4 結 語
本系統充分考慮了環境對通信的干擾,在調試中發送數據時,應首先嘗試不斷發送0X55AA,以檢驗數據收發的誤碼率,如果誤碼率校大,應對電路進行重新設計。由于采用無線通信芯片nRF401,進行多點數據采集十分方便、快捷。尤其適合對廠房、倉庫等復雜場所控制。













評論