溫濕度自記儀中無線通信係統的設計
0引言
針zhen對dui室shi內nei環huan境jing溫wen濕shi度du的de監jian測ce問wen題ti,本ben文wen利li用yong單dan片pian機ji和he無wu線xian通tong信xin短duan距ju離li無wu線xian通tong信xin技ji術shu設she計ji了le一yi款kuan溫wen濕shi度du無wu線xian測ce量liang係xi統tong。溫wen濕shi度du自zi記ji儀yi的de係xi統tong由you接jie收shou數shu據ju的de上shang位wei機ji無wu線xian筆bi記ji本ben和he以yiMC9S12xs128為核心的下位機控製顯示模塊組成,上位機模塊和下位機模塊間通過無線通信無線網絡進行數據交互。上位機主要通過Java語言編程,實現對無線通信網絡上數據的實時監聽、顯示並存儲;下位機主要以單片機為核心實現數據的實時采集、校正、顯示以及上傳處理後的數據。其中單片機主要負責完成溫濕度采集、LCD顯示以及SCI傳輸數據等功能。
1溫濕度自記儀中無線通信係統的係統構成
1.1溫濕度記錄儀的係統構成和係統框圖
本係統由AM2301、MC9S12xs128單片機、USR 無線通信 MODII無線通信模塊及無線筆記本組成。其中AM2301在本係統中負責感知環境的變化並將檢測的信號通過SDA信號線傳送給MCU。MC9S12xs128mal為本設計係統的核心部分,負責接收前端傳感器采集的信號、將校準後正確的溫濕度數值在LCD上顯示並將該數據通過無線通信 MODII無線模塊發送到上位機。無線通信 MODII為RS-232轉無線通信模塊,該無線模塊可將數據通過無線通信向外發送。無線筆記本為上位機接收端,利用Java編程接收無線通信傳輸來的數據並將其顯示及存入文件。係統框圖如圖1所示。

1.2溫濕度記錄儀的係統硬件設計
1.2.1傳感器模塊
本文采用AM2301單總線數字溫濕度傳感器,該傳感器是一款含有校準數字信號輸出的溫濕度複合傳感器,具有傳輸距離遠、全部自動化校準、數字單總線輸出等優點。AM2301傳感器讀單總線的流程圖如圖2所示。

1.2.2MCU模塊
Free scale公司的MC9S12xs128mal的16位單片機為測量係統的核心控製器,該控製器實現傳感器的初始化,以及後續的數據采集、處理和發送。MC9S12xs128有112個引腳,采用LQFP封裝方式,內部總線時鍾頻率最高可達40MHz。
1.2.3無線通信無線模塊
無線發送模塊采用的是USR 無線通信 MODII,該模塊是一款可將串口數據和無線通信網絡數據相互轉換和傳輸的設備。該無線模塊符合IEEE802.11b/g標準,支持Ad-hoc模式和基礎模式。RS-232波特率範圍9600~115200band,可設數據位和奇偶校驗位。
2溫濕度自記儀中無線通信係統的軟件設計
2.1溫濕度記錄儀的整體設計流程
軟件設計包括上位機和下位機程序設計兩部分。上位機程序是在eclipse環境下采用Java語言編程,通過調用Socket套接字監聽、接收數據。下位機程序在CodeWarrior環境中編譯,通過C語言對單片機的編程實現了對I/O口接收數據的相關處理。總體軟件流程圖如圖3所示。

2.2數據采集和校正
該功能通過對MC9S12xs128mal的C語言編程實現,主要包括AM2301的初始化、讀取AM2301數據、校正數據。具體過程為:PJ1端口向AM2301的SDA寫入初始化指令,等待讀取SDA傳來的40位數據,通過校正位判斷讀取的溫濕度值是否正確。其中校正溫濕度數值代碼如下:

2.3數據的顯示和發送
該功能由MC9S12xs128、LCD12864以及無線通信無線通信模塊實現,包括在LCD12864上顯示和向無線模塊發送溫濕度數據。具體過程為:MCU將正確的數據通過IIC串口操作模式寫到LCD12864漢顯液晶模塊上;采用查詢發送方式通過調用SCI發送函數將數據發到串口端口;通過和RS-232相連的無線通信無線模塊將數據通過無線通信發送到網絡上。其中串口發送函數代碼如下:

2.4數據的接收和保存
該功能由Java編程實現,包括調用Socket建立網絡連接和接收顯示並存儲數據。具體過程為:調用Buffered Input Stream將接收到的數據顯示在控製台,通過調用File Output Stream將溫濕度數據寫到txt文件中保存。其中調用Socket建立網絡連接代碼如下:

3溫濕度自記儀中無線通信係統的實驗調試
按照圖1所示搭建硬件電路,將數據采集和傳輸程序燒錄到單片機。上位機采用Java語言在eclipse環境中編程接收無線通信傳輸過來的溫濕度數據,將數據在eclipse控製台實時顯示,如圖4所示。並將接收到的數據自動寫入txt文檔中保存,以便後續數據處理。實驗表明:通過下位機的數據處理和發送及上位機對Java Socket的調用實現了無線通信的無線通信,並能保證數據實時、準確傳輸。

4結束語
本文采用無線通信技術將室內溫濕度自記儀測ce量liang結jie果guo傳chuan輸shu到dao筆bi記ji本ben終zhong端duan,實shi現xian了le短duan距ju離li無wu線xian傳chuan輸shu和he接jie收shou。本ben係xi統tong在zai實shi際ji應ying用yong中zhong取qu得de了le良liang好hao的de效xiao果guo,解jie決jue了le室shi內nei布bu線xian繁fan亂luan的de問wen題ti,實shi現xian了le無wu線xian網wang絡luo的de數shu據ju交jiao換huan。開kai發fa的de係xi統tong數shu據ju傳chuan輸shu速su度du快kuai、可靠性高。在以後的研究工作中,將對係統的低功耗設計做進一步研究。



