基于DSP和nRF24L01的無線環境監測系統設計
2.2 無線發射部分
首先設置nRF24L01為發射模式(設置發射和接收節點地址),使能自動應答,配置自動重發次數,選擇通信頻率,配置發射參數,選擇通道0有效數據寬度,配置nRF24L01的基本參數以及切換工作模式;然后設置發射數據,啟動發射,發射完數據后會自動轉入接收模式接收應答信號。

2.3 無線接收部分
首先設置接收模式(即寫接收節點地址),使能自動應答,通道0接收地址允許,選擇通信頻率,選擇通道0有效數據寬度,配置發射參數,配置nRF24L01的基本參數以及切換工作模式;然后啟動接收,130μs后開始檢測空中數據,若收到,則數據模塊會自動發射應答信號。

2.4 數據采集部分
分站對溫度、光照、地址編號進行采集,通過讀取I/O口得到地址編號的值,通過讀取A/D來獲得溫度、光照的最初值,經過DSP處理后得到準確的溫度、光度值。

2.5 數碼管顯示部分
程序以模擬串口的方式實現數據顯示,過程為:取一字節數據,移一位數據到I/O口中,通過置位另一I/O口高低電平來模擬時鐘信號,即把數據一位一位地移到移位寄存器74LS164中,然后并行輸出到數碼管顯示數據。
3 調試分析
3.1 系統板硬件部分調試
系統板硬件部分調試主要是萬用表檢查電路通斷情況,并測量部分關鍵引腳的電壓是否達到要求。
3.2 環境溫度測量調試
首先,把標準溫度計和熱敏電阻同時放入冰水混合液中,標準溫度計的示數為Y1,根據基礎表值探測點顯示為X1。接著,將它們放入沸水中,標準溫度計的示數為Y2,根據基礎表值探測點顯示為X2,得出比例系數K=(X2-X1)/(Y2-Y1)=2。最后,在沸水和冰水混合液之間的溫度內,測得標準溫度Yi(i=3,4,…,30)和探測點顯示值Xi(i=3,4,…,30)共28組,從而得到近似比例系數K=2±0.5。再通過軟件部分進行數據的校準,建立溫度數據表。最終,將溫度計和溫度傳感器置于同一環境下記錄測得的溫度值,如表1所列。本文引用地址:http://www.104case.com/article/150857.htm
3.3 環境光度測量調試
①將分站放置在燈光下,從最亮逐漸調暗,當暗到人眼看字有些費力時,從LED數碼管上讀得的光度原始數據為195 lx。
②將分站放置在自然光下,用手遮擋光度傳感器,由亮到完全遮蔽,當暗到幾乎無光線進入時,從LED數碼管上讀得的光度原始數據為198 lx。
根據以上試驗結果,結合人們的習慣思維,在程序上進行了一些設計。用195減去測得的原始數據,值小于等于零時顯示為零,光照越強顯示值越大。
3.4 無線通信調試
首先進行分站單發送信息、主站單接收信息的調試,經過一步步改進,最終通信成功。然后再進行主站、分站(即發送又接收信息)的調試,經反復調試最終通信成功。
結語
本文介紹的無線環境監測系統的控制采用TMS320LF2407實現。TMS320LF2407內部資源豐富,既有A/D轉換器,又有SPI、SCI,省去了系統擴展的麻煩;另外,I/O口比較多,內部存儲空間較大,有利于系統功能擴充。無線部分采用高度集成的nRF24L01器件,大大簡化了系統硬件和軟件設計,減小了體積,提高了系統工作的可靠性。
經試驗驗證,用編碼模塊可以設置分站的地址編號1~255,并能實時采集到周圍環境的溫度和光照數據,平均誤差控制在0.5℃以內,溫度測量范圍在0~100℃,各項數據都能通過數碼管清晰地顯示出來。光的有無還可通過一個發光二極管顯示,有光時發光二極管滅,無光時發光二極管亮。主站能準確無誤地無線接收分站數據,距離50 m左右仍能無線通信,但響應較慢。該系統攜帶方便,價格低廉,可應用到狹小的環境,可以隨意放置;此外,還可再接入其他傳感器,以測量更多的環境參數。
評論