引言
溫度檢測是許多行業的重要工作條件之一。
無論是糧食倉庫、中藥倉庫, 還是圖書保存。都需要在符合規定的溫度環境條件之中。而溫度卻是zui不易保障的指標。針對這一情況。研制一款可靠、方便、易及時調控的溫度檢測系統就顯得極 為重要。筆者運用D1S18B20采集數字信號,通過藍牙無線通信技術和USB接口技術。實現由89S52單片機檢測控制溫度的監測系統。
1 系統的結構
整個系統由采集板、通信板和PC機監控程序組成。采集板以溫度監測芯片DS18B20t21、單片機芯片AT89S52和藍牙芯片BC4為核心分時完成 監聽主機的命令和數據采集以及數據發送的功能。可以根據接收到的主機的命令隨時改變系統的工作狀態。 如圖1。通信板以USB 芯片PDIUSBD12、單片機芯片AT89S52為核心,實現數據接收、數據發送,以及將采集回來的外部信號通過波形圖實時顯示在PC機界面上。同時把 數據保存到數據庫中。如圖2。
2 系統硬件設計
2.1 采集板電路設計
2.1.1 藍牙模塊—無線接收發射電路
系統采用了CSR公司藍牙芯片BC417143.該芯片采用Blue2.0、支持主或從模式、支持AT命令集、支持波特率為2 400到1 382 400 bps,適用于嵌入式串口傳輸無線的全新的模塊。
值得注意的是。藍牙芯片工作在3.3 V,而MCU工作在5 V.存在邏輯電平不匹配問題。且IO管腳無法容忍MCU的5 V邏輯電平。設計中采用了1117芯片進行電平轉換輸出3.3 V.藍牙與MCU連接需經過電平限制以保證藍牙模塊正常工作 以下是藍牙模塊的電源選擇方案及串口模塊的引腳定義。如圖3。
在建立藍牙數據通信時。需要先對其通信協議進行設置:
(1)UART參數設置:先設置通信協議長度,再設置波特率、硬件控制流參數。校驗參數、數據位數及停止位
(2)工作模式設置:可將藍牙模塊的工作模式設置為主模式或者從模式。
(3)設置藍牙模塊名:名稱是藍牙模塊在進行通信的標識之一。通過設置藍牙模塊名協議可以更改藍牙模塊名
(4)設置安全模式:藍牙通信中的數據安全主要是有藍牙通信時的PIN碼保障的。通過設置安全模式協議。可以根據不同的需要。設置藍牙通信的安全模式
(5)設置PIN碼:設置PIN碼可以保證僅有可靠的設備通過藍牙與模塊互相通信系統采用的波特率為9 600 bps.傳輸距離能達10 In。由于采用藍牙做為傳輸。具有很強的抗干擾能力
2.1.2 采集板電路塬理圖
采集板電路塬理圖如圖4。藍牙模塊主要與單片機的串行IO口連接。數字溫度傳感器DS18B20與單片機的P1.0口連接。繼電器則與P1.2口連接。 溫度傳感器DS18B20將溫度轉化為數字信號通過P1.0 El送給單片機。經單片機處理后的數據由串口傳給藍牙模塊(BLUETOOTH) 也可以通過藍牙模塊接收通信板發來的指令2-2通信板電路設計通信板主要由單片機、藍牙模塊、USB模塊等相關電路構成。如圖5 PDIUSBD12是一款 性價比很高的USB器件它通常用作微控制器系統中實現與微控制器進行通信的高速通用并行接口。它還支持DMA傳輸此外它還集成了許多特性。包括 SoftConnet、GoodLink、可編程時鐘輸出低頻晶振和終止寄存器集合 所有這些特性都為系統顯著節約了成本。 同時使USB功能在外設上的應用變得容易。
PDIUSBD12的8根DATA引腳與單片機的PO口相連接,采用 10 k的排阻作為上拉電阻;SUSPEND是當芯片掛起狀態掛起時,輸出為高。
與單片機的P1.1連接:INT_N是中斷請求。與單片機的IN,m 連接:RD N和WR N讀寫選通信號分別與單片機的RD和WR連接;DMREQ、DMACK N、EOT N分別是DMA 的中斷請求、DMA應答和DMA傳輸完成。由于沒用啟用DMA功能直接接高電平。RESET N是復位引腳。接單片機的P1.7;GL N是芯片的工作指示燈。接人一個LED指示燈。可以直接觀察USB設備的運行狀態;XTAL1和XTAL2接6MHZ.CS N為片選信號。接單片機的PI.6,A0地址線,采用I/O口模擬,接單片機P3.4:D+和D一是USB的差分數據線分別串聯一個l8 Q的阻抗匹配電阻。后接USB插頭上 。
藍牙模塊連接方法與采集板的連接方式相同。
通訊板的信號流程為:由采集板采集的溫度數據經藍牙模塊傳輸到通訊板上,送到單片機上處理。通過PDIUSBD12傳輸到PC上進行顯示保存。
單用戶在PC上進行操作時,數據由PC通過PDIUSBD12傳送到單片機。再經過藍牙傳輸,送到采集板進行相對的響應。
3 軟件設計
本系統涉及內容較多。開發環境也都不一樣,對于單片機軟件的開發是基于KEIL uVision 3的uVision3集成開發環境IDE是一個基于Window的軟件開發平臺,有功能強大的編輯器、項目管理器和制作工具。
對于USB驅動的開發采用了WinDriver9.2.1.用該軟件生成所需驅動只需要USB設備插入后通過簡單的幾步就可以完成,同時還可以根據需要生成相應的應用程序代碼。方便應用程序的開發嘲。
采集板的系統流程圖如圖6,通訊板的系統流程圖如圖7PC機應用程序則采用了VISUAL STUDIO 6.0進行開發。采用C++語言編寫程序代碼。由于VC具有文檔類程序、對話框類程序等。可以很快地實現界面的編程。
為了將波形圖實時顯示。就需要重復繪制波形圖。運用傳統的繪圖方法。會引起屏幕的強烈閃爍。現在常用的解決方法是:利用內存繪圖的技術。將需顯示的圖形 繪制在內存位圖中。然后再拷貝到屏幕上。很好地解決了屏幕閃爍的問題,并且處理速度快自定義的繪圖函數聲明如下。在該函數內部實現了內存繪圖。
void CMyusbDlg::MEM— DRAW(
int ID,
unsigned char m_buf,
int d_ pnow,int ONDRAW,
CString TXT)
在數據保存方面。本系統使用Access建立數據庫。系統流程圖如圖8。
當主程序開始后。初始化了USB和界面后。就創建一個新的線程,和主線程并行工作。新線程主要就是完成USB數據的讀取。然后把接收到得數據存放到一個緩沖區和數據庫中。緩沖區主要是供主線程顯示波形時使用。數據庫則供用戶日后查看歷史記錄使用。
4 結論
提出了一種基于USB與藍牙芯片BC417143的無線溫度監測系統的設計方案。并從硬件和軟件兩個方面介紹了系統的設計過程。實現了對溫度信息進行的 無線數據采集。利用藍牙芯片作為無線收發模塊。DS18B20作為溫度數據采集。USB接口芯片作為與PC機的通信接口。簡化了電路設計并具有易擴展和組 網的特點。
聯系我們
泰州盛達儀表科技有限公司 公司地址:江蘇省泰州市海陵區工業園 技術支持:儀表網掃一掃 更多精彩
微信二維碼
網站二維碼