新聞中心

        EEPW首頁 > 測試測量 > 設計應用 > 基于DS18B20和nRF2401的庫區測溫網絡無線傳輸系統

        基于DS18B20和nRF2401的庫區測溫網絡無線傳輸系統

        作者:劉寧 陳煒 時間:2015-10-09 來源:電子產品世界 收藏
        編者按:為解決庫區溫度測量布線難度大、材料成本高、維護檢修難的問題,論文提出了一種用單片機作為控制核心,用DS18B20搭建多點測溫網絡,nRF2401作為傳輸器件的庫區溫度數據無線傳輸系統。經實際測試,該系統測量準確度高、傳輸距離遠、性能可靠,具有較好的應用前景。

          發送過程為:設置Config寄存器使器件處于發送模式,當測溫節點有數據需要發送時,溫度和地址數據送到中,將CE管腳置高,激活ShockBurst發送模式,完成數據打包并高速發送,然后等待中斷。

        本文引用地址:http://www.104case.com/article/280695.htm

          接收過程為:設置Config寄存器使器件處于接收模式,將CE管腳置高,激活ShockBurst接收模式,延時130μs后檢測空中信息,若接收到有效的數據包,則發送確認信號,產生中斷,同時讀出有效數據并發送給,單片機通過串口將數據發給PC機。

        3.3.2 收發模式的自動識別設計

          為簡化編程,增強代碼通用性,本文為上位單片機和下位單片機設計了完全相同的同一套程序代碼,系統自動識別并設置工作模式,無需人為區分單片機是接收還是發送。實現接收和發送模式自動切換的代碼如下:

          void Switch_RT(uchar SW, uchar mode)

          { //收發模式切換子函數

          CE=0; //待機

          if(SW) //為1

          SPI_WR_Reg(CONFIG, SPI_RD(CONFIG) & 0xfe); //發射模式

          else //為0

          SPI_WR_Reg(CONFIG, SPI_RD(CONFIG) | 0x01); //接收模式if(mode)

          CE=1; //拉高CE啟動收發

          }

          程序默認無線模塊處于接收模式,下位單片機測得溫度數據后,將Config寄存器的PRIM_RX位置0,控制工作于發送模式,將數據打包發出,隨即將PRIM_RX位置1,處于接收模式;上位機端接收到數據包后,即由上位單片機將其讀出并通過串口傳給上位PC機。

          PC機向下位機發送指令時,首先將指令發給上位單片機,上位單片機一旦接到指令,即將PRIM_RX位置0,控制nRF2401工作于發送模式,發出數據包;下位單片機通過nRF2401接收后將數據包讀出執行。

        4 系統運行情況

          PC機應用程序采用Visual Studio2010 VB.net編寫,上位單片機與PC機應用程序之間的通信通過串口控件實現,二者之間的參數設置需一致。

          程序運行界面如圖4所示,各庫區溫度正常時,溫度值字體顏色正常,某庫區溫度超過正常值時,相應溫度值字體以紅色顯示并閃爍,下位單片機自動接通對應庫區繼電器,啟動散熱風扇進行降溫;當溫度下降至正常值后,單片機控制繼電器關斷散熱風扇,同時溫度值字體顏色恢復正常。溫度值右側標簽顯示的數據是設定的正常溫度范圍。

          “庫區選擇”組合框中有10個復選框,對應10個庫區;按下“啟動風扇”按鈕可對所選庫區進行強制通風;按下“關閉風扇”按鈕可強制關閉散熱風扇;按下“溫度范圍設定”按鈕可對所選庫區報警溫度閾值進行設置;按下“保存數據”按鈕可將庫區編號、溫度值、時間信息等保存至指定位置,便于查看分析。

        5 結論

          利用本文設計的系統,可以采集10個重要庫所的溫度數據,經過單片機的處理,將數據通過nRF2401傳輸給PC機顯示。經實測證明,此方案能準確采集并傳送溫度數據,傳送距離可達60米,空曠地帶接近100米,既避免了繁瑣的布線,又可有效防止惡劣天候的影響,采用元件少、簡單易行、成本低廉、性能可靠、便于檢修,是一種新穎實用的庫區溫度監控系統。

        參考文獻:

          [1]劉斌.基于nRF2401和GPRS的無線溫度傳輸系統設計[J].現代電子技術,2012;35(15):46-48

          [2]王旭,馬汝建,王洪斌. 基于nRF24E1的多點無線測溫報警系統設計[J]. 濟南大學學報(自然科學版),2013;27(4);352-357

          [3]丁恩杰,蹤曉志.基于nRF24E1和的無線測溫系統[J].儀表技術與傳感器,2010;11(3);60-62

          [4]李飛,沈玲,黃熹. 1-Wire總線的構建[J]. 電子產品世界,2012;(10);43-44

          [5]孫保群,王瓊. 基于nRF2401軟件跳頻協議的設計與實現[J].電子技術應用,2012;38(5);46-48,51

          [6]郭吉術,林明星,劉偉,等. 基于nRF2401的無線扭矩監測系統[J].儀表技術與傳感器,2012;(12);57-60

          [7]朱嶸濤,徐愛鈞,葉傳濤. STC15單片機和nRF2401的無線門禁系統設計[J].單片機與嵌入式系統應用,2014;(6);57-60

          [8]王曉峰,張致恒,張 波,等. 基于nRF2401的高速路不停車收費系統[J]. 電力學報,2009;24(5);431-433

          [9]呂勝杰,霍淑艷. 基于的單總線多點測溫技術[J].現代電子技術,2011;34(2);185-187

          [10]陳佳聞. 基于多點測溫的溫室智能控制系統設計[J].山東農業大學學報(自然科學版),2010;41(3);435-439


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 连州市| 和平区| 金沙县| 武川县| 江陵县| 共和县| 托克托县| 宁津县| 玛沁县| 皮山县| 上林县| 通许县| 北碚区| 宁津县| 当涂县| 时尚| 衡东县| 平顺县| 靖西县| 二连浩特市| 盖州市| 阳新县| 洛浦县| 湖北省| 盈江县| 固始县| 轮台县| 阿拉善左旗| 桃源县| 奇台县| 嫩江县| 竹溪县| 宜君县| 时尚| 句容市| 孝感市| 武城县| 古丈县| 扶沟县| 平湖市| 张家港市|