藍(lán)牙無線數(shù)據(jù)采集模塊的設(shè)計
摘 要:本文介紹了由ADmC812和藍(lán)牙芯片ROK101008構(gòu)建的無線數(shù)據(jù)采集模塊,給出了該模塊的總體方案、硬件電路和軟件設(shè)計。該模塊可以實現(xiàn)8路數(shù)據(jù)的采集與無線傳輸,并能實現(xiàn)2路PID控制。
關(guān)鍵詞:藍(lán)牙技術(shù);數(shù)據(jù)采集;無線傳輸
引言
藍(lán)牙技術(shù)是近年來發(fā)展迅速的短距離無線通信技術(shù),利用藍(lán)牙技術(shù)構(gòu)建無線數(shù)據(jù)采集模塊,可以減少系統(tǒng)間的電纜連接,具有攜帶方便、應(yīng)用靈活等優(yōu)點。本文介紹了利用藍(lán)牙芯片和數(shù)據(jù)采集芯片研制成的藍(lán)牙無線數(shù)據(jù)采集模塊,對模塊的總體方案、硬件電路和軟件設(shè)計等內(nèi)容作了詳細(xì)的介紹。藍(lán)牙無線數(shù)據(jù)采集模塊與數(shù)據(jù)分析系統(tǒng)調(diào)試結(jié)果說明該模塊性能達(dá)到了設(shè)計要求。
無線數(shù)據(jù)采集模塊方案
無線數(shù)采及分析系統(tǒng)的總體方案如圖1所示,PC機(jī)通過掛接在USB口的藍(lán)牙芯片發(fā)送指令信息(通道選擇、采樣頻率、采樣長度等)給數(shù)據(jù)采集模塊,數(shù)據(jù)采集模塊接收指令信息,采集數(shù)據(jù)并以無線方式傳輸給PC機(jī),PC機(jī)接收數(shù)據(jù)后顯示,并進(jìn)行各種處理。
藍(lán)牙無線數(shù)據(jù)采集模塊是無線數(shù)據(jù)采集及分析系統(tǒng)的重要組成部分,該模塊由數(shù)據(jù)采集單元、無線傳輸單元、系統(tǒng)軟件幾大部分構(gòu)成。數(shù)據(jù)采集模塊由電池供電,安裝在現(xiàn)場,可脫離系統(tǒng)按指令自動完成數(shù)據(jù)的采集。
在圖1中,輸入信號是傳感器放大器送來的模擬信號,此信號經(jīng)信號調(diào)理電路隔離放大及極性轉(zhuǎn)換后送入數(shù)據(jù)采集芯片ADmC812,再經(jīng)過 A/D轉(zhuǎn)換(高速數(shù)據(jù)采集時數(shù)據(jù)可緩存在外部RAM AT29LV256中),然后封裝成數(shù)據(jù)包,由藍(lán)牙芯片的天線發(fā)送。電源管理模塊利用電池為信號調(diào)理電路、數(shù)據(jù)采集芯片、藍(lán)牙芯片提供長期穩(wěn)定的電源。
數(shù)據(jù)采集模塊硬件設(shè)計
在硬件電路的設(shè)計中,最重要的是所用元器件的選型,特別是主要元器件的選型。無線數(shù)據(jù)采集模塊中主要的元器件有兩個:一是數(shù)據(jù)采集芯片,另一個是無線傳輸模塊。
無線數(shù)傳模塊選型
愛立信的藍(lán)牙模塊ROK 101008和ROK101007(含USB接口)是兩款使用非常廣泛的產(chǎn)品,它們集成了射頻單元和基帶控制器,提供多種HCI(主機(jī)控制器接口)傳輸層接口,并提供用于試驗的接口電路板和天線,在使用上非常方便。由于本文設(shè)計的藍(lán)牙無線數(shù)據(jù)采集模塊使用串口通信,而ROK101008可以完成無線數(shù)采模塊所需要的功能,所以采用了ROK101008藍(lán)牙模塊。
數(shù)據(jù)采集芯片選型
ADmC812的優(yōu)點是集成了一個完全可編程、自校準(zhǔn)、高精度的模擬數(shù)據(jù)采集系統(tǒng),它的體積小、成本低,通過采用閃速/電擦除存儲器,輔之以內(nèi)含的加載器和調(diào)試軟件,解決了以ROM為基礎(chǔ)的芯片產(chǎn)品的靈活性差、存儲困難等問題,也使系統(tǒng)的設(shè)計、編程、調(diào)試更加簡便。另外,它的空閑和掉電方式對于電池供電的測控設(shè)備來說都是至關(guān)重要的性能。
無線數(shù)據(jù)采集模塊原理框圖
無線數(shù)據(jù)采集模塊硬件如圖2所示。為了用電池滿足ADmC812、ROK 101008、7HC573、AT29LV256芯片3.3V供電,以及信號調(diào)理電路 5V供電要求,采用可以輸出3.3V和5V電壓的穩(wěn)壓模塊MAX756和輸出-5V電壓的ICL7660。由于ADmC812只能實現(xiàn)單極性模數(shù)轉(zhuǎn)換,因此以差分放大器IN105進(jìn)行雙極性到單極性轉(zhuǎn)換,并實現(xiàn)隔離和放大作用。另外,以差分放大器OP291實現(xiàn)兩路D/A輸出信號單極性到雙極性轉(zhuǎn)換及隔離作用。極性轉(zhuǎn)換電路原理如圖3所示。
數(shù)據(jù)采集模塊軟件設(shè)計及調(diào)試
數(shù)據(jù)采集模塊的軟件主要包括兩部分:數(shù)據(jù)采集和藍(lán)牙通信。該軟件是在Windows環(huán)境下用C51編寫的,用Keil編譯成HEX格式的文件,然后用ADI公司提供的程序下載軟件Wsd通過RS-232串口和接口電路下載到ADmC812。數(shù)據(jù)采集模塊的調(diào)試包括軟件調(diào)試和硬件調(diào)試,軟件調(diào)試可以在Keil軟件環(huán)境下完成,硬件調(diào)試不需要專門的開發(fā)工具,只要在網(wǎng)上下載一個普通的串口調(diào)試工具ComTools就可以觀察程序的運行情況。
數(shù)據(jù)采集模塊軟件流程
數(shù)據(jù)采集模塊的軟件主要有初始化程序(包括串口、藍(lán)牙、狀態(tài)寄存器、定時器和看門狗)、接收采集參數(shù)程序、A/D轉(zhuǎn)換及數(shù)據(jù)存儲程序、數(shù)據(jù)發(fā)送程序等部分組成。其流程如圖4所示。
所實現(xiàn)的軟件是基于實際工程應(yīng)用的,數(shù)據(jù)采集模塊的單片機(jī)接收上位機(jī)的指令,按照上位機(jī)設(shè)置的參數(shù)(采樣頻率、采集通道數(shù)及通道號、采集模式、采集點數(shù)等)進(jìn)行數(shù)據(jù)采集,然后把采集的數(shù)據(jù)發(fā)送 給上位機(jī)進(jìn)行數(shù)據(jù)顯示和分析處理。
所研制的數(shù)據(jù)采集模塊還可實現(xiàn)PID控制,其程序主要包括:接收控制參數(shù)(通道選擇、比例系數(shù)、積分系數(shù)、微分系數(shù)、采樣頻率等)、采樣(A/D轉(zhuǎn)換)、PID運算、D/A轉(zhuǎn)換以及數(shù)據(jù)發(fā)送等。
藍(lán)牙通信
兩個藍(lán)牙設(shè)備進(jìn)行數(shù)據(jù)通信是通過HCI分組實現(xiàn)的。HCI分組有命令分組、事件分組和數(shù)據(jù)分組。圖5是藍(lán)牙通信示意圖。ACL (Asynchronous ConnectionLess)數(shù)據(jù)通信流程一般有6個步驟:藍(lán)牙模塊自身初始化、HCI流量控制設(shè)置、查詢、建立連接、進(jìn)行數(shù)據(jù)傳輸和斷開連接。其中藍(lán)牙初始化和HCI流量控制設(shè)置部分程序主體如下:
Init_bluetooth( )
{
Reset(); /*復(fù)位藍(lán)牙主機(jī)控制器、鏈路管理器和射頻部分*/
Read_Buffer_Size(); /*讀取主機(jī)發(fā)往主機(jī)控制器數(shù)據(jù)分組的最大長度和允許的數(shù)量*/
Set_Event_Filt(); /*制定事件過濾器,主機(jī)通過事件過濾器來過濾所需事件*/
Write_Scan_Enable(); /*控制藍(lán)牙設(shè)備是否周期性地掃描其他藍(lán)牙設(shè)備的尋呼掃描或查詢請求*/
Write_Connection_Accept_ Timeout(); /*設(shè)置超鏈接時間*/
Write_Page_Timeout(); /*確定本地鏈路管理器等代遠(yuǎn)端設(shè)備基帶尋呼響應(yīng)的超時時間*/
Set_Host_Controller_to_Host_ Flow_Control();
/*開啟和關(guān)閉主機(jī)到主機(jī)控制器方向的流量控制*/
Host_Buffer_Size(); /*主機(jī)通知主機(jī)控制器可以發(fā)往主機(jī)的數(shù)據(jù)分組最大長度和緩沖區(qū)所能同時緩存的最大分組數(shù)量*/
}
初始化程序主要是單片機(jī)對藍(lán)牙發(fā)送一系列命令分組。單片機(jī)每向藍(lán)牙發(fā)送一個HCI命令分組就要接收藍(lán)牙返回的事件分組,判斷命令執(zhí)行的情況。若返回事件分組不正確就要重新初始化藍(lán)牙,直到完全正確。藍(lán)牙芯片初始化完成后,打開流量控制,對數(shù)據(jù)流量進(jìn)行配置,包括數(shù)據(jù)分組的長度等。此后,主設(shè)備查詢周圍的藍(lán)牙設(shè)備,找到之后即可向其發(fā)出建立連接指令,建立ACL連接。建立連接成功后,兩個藍(lán)牙設(shè)備可以相互發(fā)送ACL數(shù)據(jù)分組,其格式為0x 01 02 01 20 數(shù)據(jù)總長(兩個字節(jié)) 數(shù)據(jù)。每發(fā)送5個數(shù)據(jù)分組將返回一個完成事件分組,用于流量控制。通信完成后,主設(shè)備和從設(shè)備都可以發(fā)出斷開連接命令Disconnect。
結(jié)語
試驗結(jié)果表明:該無線數(shù)據(jù)采集模塊可以實現(xiàn)8路不同模式(連續(xù)模式、點檢模式等)數(shù)據(jù)采集、2路PID控制等功能,數(shù)據(jù)采集速率最高可達(dá)150kHz,數(shù)據(jù)傳輸速率最高可達(dá)721kbps,具有較強的實用性?!?/P>
參考文獻(xiàn)
1. 劉書明,馮小平.?dāng)?shù)據(jù)采集系統(tǒng)芯片ADmC812原理與應(yīng)用.西安電子科技大學(xué)出版社,2000
2. 馬建倉,羅亞軍,趙玉亭.藍(lán)牙核心技術(shù)及應(yīng)用.科學(xué)出版社,2003
pid控制器相關(guān)文章:pid控制器原理
藍(lán)牙技術(shù)相關(guān)文章:藍(lán)牙技術(shù)原理
評論