2021-4-9 | 無線通信論文
作者:劉崇翔 高美鳳 單位:江南大學自動化研究所
無線通信電路主要由ATmega48單片機和CC1101無線收發模塊組成。CC1101芯片通過4線SPI兼容接口(SI、SO、SCLK、CSn)配置通信工作。GDO0和GDO2是2個專用的配置引腳,能輸出對內部狀態信息,用來對MCU產生外部中斷。它內部有2個64字節FIFO,一個用來接收數據,另一個用來發送數據。ATmega48的PD0(RxD)、PD1(TxD)用于連接MAX232電路,因為要使用UART0與RS232接口的設備進行基本的通信,就需要一個RS232轉換器將TTL電平轉換成RS232電平。CC1101芯片和ATmega48的電路連接圖如圖3所示。
系統軟件設計系統的軟件設計包括在ADS1.2編程環境下利用C語言編寫基于MiniARM工控板的嵌入式系統程序。計算機監測軟件是利用VB語言進行編程和調試;CC1101的開發與配置利用SmartRFStudio軟件。
小車數據采集與無線通訊的軟件設計數據采集部分的設計包括:溫度傳感器DS18B20的驅動程序,煙霧濃度報警程序,以及串口通信程序,控制器對DS18B20進行溫度轉換必須經過三個步驟:每一次讀寫之前都要對DS18B20進行復位操作,復位成功后發送一條ROM指令,最后發送RAM指令,這樣才能進行預定的操作,本設計采用12位轉換精度,在該精度下,溫度每變化0.0625℃,輸出的二進制數會增1,程序只要將測得的數值先轉換成十進制再乘以0.0625就能得到實際的溫度值。DS18B20溫度傳感器軟件流程圖如圖4所示。無線通信部分的軟件設計包括對控制器ATmega48初始化、CC1101初始化,CC1101芯片的發送和接收程序的設計,ATmega48通過CC1101的SPI接口來控制CC1101的發送模式和接收模式兩個控制狀態。當CSn為低電平時,SPI接口開始工作,準備接受一條指令,CSn由高到低跳變時開始轉換指令。無線通訊的軟件流程圖如圖5所示。
計算機監控界面的設計計算機檢測軟件采用VB編寫,其中包括串口參數設置區,溫度狀態顯示區,煙霧報警模塊,小車運動控制模塊。串口設置區包括對于串口號、波特率、數據位、停止位和校驗位等進行設置,溫度狀態顯示區包括溫度的當前值、平均值、最大值、最小值,溫度曲線顯示,以及最近兩百次溫度的記錄。計算機與小車數據采集部分的通信主要是利用VB中的MSComm控件,它通過串行端口傳輸和接收數據,為應用程序提供了串行通信功能。利用msflexgrid控件來顯示網格數據,該控件提供了高度靈活的網格順序、合并和設置功能,網格中可以包含字符串和圖片。利用picturebox繪制曲線,使溫度值的整體變化情況可以更加直觀地顯示出來。
小車數據采集部分與計算機的串口通信參數設置為:數據傳輸的波特率為4800bps,1位開始位,8位數據位,1位停止位,無奇偶校驗位。數據采集部分每秒向計算機發送1幀數據,每幀數據由12個字節組成,第一個字節定義為二進制常數FF,第二個字節為煙霧濃度數據,第三、四個字節為溫度數據,后面的八個字節表示四個超聲波傳感器測得的四個方向距障礙物的距離。數據是以壓縮的BCD碼編碼方式,即用四位二進制數來表示一位十進制數中的0~9。計算機監測軟件采用窗口化界面,圖形顯示,操作簡單,功能齊全,基本上滿足系統的設計要求。
本文對無線傳輸小車監控系統的設計進行了詳細的介紹該監控系統能夠將傳感器測得的環境的溫度、煙霧的濃度通過無線傳輸的方式發送給計算機,監控系統采用VB編寫圖形界面,可以清楚的反應環境的變化,此系統功耗低,可靠性高。