《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于ARM的藍牙實時數(shù)據(jù)采集系統(tǒng)的設計
基于ARM的藍牙實時數(shù)據(jù)采集系統(tǒng)的設計
崔偉 張暉
來源:微計算機信息
摘要: 本文提出了一種基于ARM的藍牙無線數(shù)據(jù)采集系統(tǒng)。結合嵌入式技術與藍牙技術的優(yōu)勢,解決了傳統(tǒng)工業(yè)現(xiàn)場數(shù)據(jù)采集系統(tǒng)中無法同時滿足低功耗、低價格與高性能,并受到電纜布線限制和使用不便等問題。采用藍牙無線通信技術來實現(xiàn)數(shù)據(jù)的采集,使得數(shù)據(jù)的采集和遠程監(jiān)測更為簡單和方便,并且提高了數(shù)據(jù)采集的抗干擾性能。
Abstract:
Key words :

 

1 引言

  隨著計算機技術的發(fā)展,尤其是無線技術廣泛深入到人們生活的各個方面,使人們的生 活發(fā)生了深刻的變化。就工業(yè)數(shù)據(jù)采集、測量領域來講,由于測量種類多、數(shù)據(jù)量大,且存 在許多條件惡劣、人們不易到達或不能時刻停留的地方偶爾采集一些現(xiàn)場數(shù)據(jù),因而不但需 要花費大量的人力、物力和財力進行設備的維護,同時給采集帶來很多不必要的麻煩。

  為了解決上述問題,本文提出了一種基于ARM藍牙實時數(shù)據(jù)采集系統(tǒng)。采用嵌入式 操作系統(tǒng)Windows CE,對通過藍牙無線傳輸方式集中的傳感器采集數(shù)據(jù),進行控制、顯示、 處理,實現(xiàn)工業(yè)實時數(shù)據(jù)的采集。ARM 技術為內核的微控制器指令周期短,處理能力強, 接口豐富,能成功運行操作系統(tǒng),為控制系統(tǒng)的應用程序開發(fā)提供了良好的平臺。同時,它 體積小,功耗低,運行性能優(yōu)越,能很好的應對于工控應用方面。而藍牙技術是一種短距離、 低功耗的無線通信技術,采用跳頻機制進行數(shù)據(jù)傳送,故能極大地提高數(shù)據(jù)傳送的抗干擾性 能。對于數(shù)據(jù)采集系統(tǒng)的應用而言,兩者的結合大大簡化了分布采集設備繁瑣的配置和系統(tǒng) 復雜度,且大大降低了功耗和體積。由其帶來的系統(tǒng)靈活性,使得系統(tǒng)的應用更加廣泛。該 系統(tǒng)充分體現(xiàn)了嵌入式系統(tǒng)和藍牙技術的優(yōu)勢,具有一定的實用價值。

  2 系統(tǒng)總體設計

  基于 ARM 的藍牙實時數(shù)據(jù)采集系統(tǒng)由基于ARM 的數(shù)據(jù)中心、單片機智能節(jié)點和藍牙 無線通信鏈路三大部分組成。數(shù)據(jù)中心,采用基于ARM9 微處理器S3C2410 的硬件平臺, 運行 Windows CE 嵌入式操作系統(tǒng),可為操作人員管理現(xiàn)場數(shù)據(jù)、控制目標設備提供友好、 方便的用戶接口;單片機節(jié)點,負責采集現(xiàn)場數(shù)據(jù),通過藍牙無線通信鏈路接收數(shù)據(jù)中心命 令并將數(shù)據(jù)上傳給數(shù)據(jù)中心;藍牙無線通信鏈路,通過在數(shù)據(jù)中心和單片機節(jié)點安裝的藍牙 模塊實現(xiàn)??紤]到系統(tǒng)的可擴展性,系統(tǒng)還可以通過RS-232 接口實現(xiàn)ARM 數(shù)據(jù)中心與PC機的數(shù)據(jù)通信。系統(tǒng)總體構成如圖1 所示。
 

  3 系統(tǒng)硬件設計

  基于 ARM 的藍牙實時數(shù)據(jù)采集系統(tǒng)的硬件設計包含藍牙模塊天線和外圍電路、基于 ARM 的數(shù)據(jù)中心、單片機節(jié)點三個部分?,F(xiàn)在分別對各個主要模塊做簡單介紹。

  3.1 藍牙模塊天線和外圍電路

  藍牙模塊是藍牙通信的基礎,在此采用嵌入式藍牙模塊 DFBM-CS120。它集成了藍牙 標準通信協(xié)議,對用戶提供全雙工UART 接口和射頻信號輸出,使用戶能通過UART 控制 模塊操作,并通過天線將承載數(shù)據(jù)的射頻信號發(fā)射出去。

  藍牙模塊外圍電路設計主要包括天線設計、電源設計和UART 接口設計,如圖2 所示。
 

  其中,天線的性能好壞直接關系到整個藍牙通信系統(tǒng)能否正常傳輸數(shù)據(jù),必須采用射頻 電路的設計方法進行具有針對性的設計。在此由于DFBM-CS120 有一個天線管腳Antenna, 輸出2.402~2.480GHz 射頻信號,天線管腳的輸出阻抗為50Ω。根據(jù)最大功率傳輸定理,在 天線管腳上外接阻抗50Ω的AT3216 多層陶瓷天線??紤]到由于制造參數(shù)與設計參數(shù)之間的 誤差可能造成的信號衰減,在模塊的天線管腳和藍牙天線之間增加了一個由一個電感和兩個 電容組成的π型網(wǎng)絡,用來放大射頻信號。天線電路框圖如圖3 所示。

  圖3 藍牙天線電路圖

  3.2 基于ARM 的數(shù)據(jù)中心

  基于 ARM 的數(shù)據(jù)中心的基本要求是體積小巧、功耗低、界面美觀、操作方便、通信功 能強大、系統(tǒng)擴展性好。具體到硬件上,對ARM 系統(tǒng)的基本要求是支持Windows CE 操作 系統(tǒng)、支持彩色LCD、支持觸摸屏、支持USB、支持以太網(wǎng)、支持藍牙模塊通信接口。根 據(jù)要求,結合嵌入式系統(tǒng)業(yè)內流行的開發(fā)平臺,在此選擇基于ARM9 處理器S3C2410 的硬 件平臺作為數(shù)據(jù)中心。將藍牙模塊作為S3C2410 硬件平臺的一個UART 外設安裝,數(shù)據(jù)中 心便具有了藍牙通信功能。

  S3C2410 硬件平臺的設計分為核心系統(tǒng)設計和外圍設計兩大部分。平臺核心系統(tǒng)包括 CPU、SDRAM 和Flash,其中SDRAM 是平臺的內存,F(xiàn)lash 相當于平臺的硬盤;平臺外設 包括LCD 和觸摸屏接口電路、以太網(wǎng)控制器、USB 和UART。

  硬件平臺的整體設計圖如圖 4 所示。

  3.3 單片機節(jié)點

  單片機節(jié)點是本系統(tǒng)的底層設備,正常工作時作為總控制器,協(xié)調控制其他監(jiān)測器件或 模塊工作,完成數(shù)據(jù)采集、測量、加工及與數(shù)據(jù)中心的通信、接受命令和數(shù)據(jù)傳送等任務。 本系統(tǒng)中,單片機節(jié)點模塊的MPU 采用Winbond W77E58,其串口與藍牙通信模塊的UART 進行通信。

  兼容 8051 內核、片載Flash 很大、具有雙串口是W77E58 的三個突出特點。前兩點意 味著單片機節(jié)點軟件可以用C51 語言設計,不必因為擔心代碼太大而采用匯編語言;雙串 口意味著可以用一個獨立的串口與PC 機聯(lián)機以調試編寫的藍牙通信軟件,調試完成后再將 其移植到與藍牙模塊通信的串口上,無需為軟件調試改動任何硬件,大大降低了硬件的復雜 性,提高了軟件開發(fā)速度。

  4 系統(tǒng)軟件設計

  基于 ARM 的藍牙實時數(shù)據(jù)采集系統(tǒng)的軟件設計包含三部分。第一部分是Windows CE 嵌入式操作系統(tǒng)平臺的搭建;第二部分是基于Windows CE 操作系統(tǒng),運行于數(shù)據(jù)中心藍牙 數(shù)據(jù)采集應用程序的設計;第三部分是單片機節(jié)點的藍牙通信軟件的實現(xiàn)。

  4.1 Windows CE 嵌入式操作系統(tǒng)的搭建

  Windows CE(簡稱WinCE)是當今市場上主流嵌入式操作系統(tǒng)中應用最廣泛的。它是一 個支持多種硬件平臺、核心代碼開放、組件可裁剪的32 位實時嵌入式窗口操作系統(tǒng),具有 可靠性高、實時性好、模塊化和小內存占用、支持多種無線與有線連接、支持多種硬件平臺、 支持多種無線與有線連接等特點,廣泛應用于各種嵌入式智能設備開發(fā)。

  由于嵌入式智能平臺不論是CPU 架構還是外圍硬件都是多種多樣的,移植WinCE 需要 開發(fā)者根據(jù)具體平臺要求對系統(tǒng)進行修改和定制。移植WinCE 操作系統(tǒng)主要有兩部分內容: 一是定制BSP 代碼,包括Bootloader、OAL 以及驅動程序;二是運行調試WinCE 操作系統(tǒng), 主要是運用開發(fā)工具編譯、下載、運行和調試操作系統(tǒng)映像。

  4.2 基于Windows CE 的藍牙數(shù)據(jù)采集程序的設計

  由于 DFBM-CS120 藍牙模塊通過串口進行通信,而WinCE 的驅動程序己經(jīng)以“文件” 的形式封裝了串口,開發(fā)者無需編寫操作串口硬件的代碼,所以藍牙數(shù)據(jù)采集程序沒有必要 設計驅動程序,只考慮設計應用程序即可。 本系統(tǒng)中,基于 WinCE 的藍牙數(shù)據(jù)采集程序采用Embedded Visual C++集成開發(fā)環(huán)境, 基于MFC 庫,采用面向對象的設計方法設計。藍牙數(shù)據(jù)采集程序的主要任務就是通過串口 發(fā)送和接收數(shù)據(jù),因此串口編程是設計藍牙數(shù)據(jù)采集程序必須實現(xiàn)的部分。WinCE 的驅動 程序己經(jīng)將串口以“文件”形式進行了封裝,因此基于WinCE 的串口編程無需編寫直接操 作UART 硬件的代碼,只要利用WinCE 提供的文件API 函數(shù)就可打開和讀寫串口。這些 API 函數(shù)分別是:CreateFile、ReadFile 和WriteFile。

  4.3 單片機節(jié)點程序設計

  單片機節(jié)點負責采集數(shù)據(jù)并把數(shù)據(jù)通過藍牙模塊發(fā)送給數(shù)據(jù)中心,程序設計的重點是實 現(xiàn)藍牙數(shù)據(jù)通信。單片機程序在Keil μVision2 開發(fā)環(huán)境下,采用C51 語言編寫。單片機節(jié) 點程序設計包括如下幾個部分:1.配置串口;2.根據(jù)串口中斷程序設計單片機-藍牙模塊通訊 程序;3.通信幀格式設計。

  單片機節(jié)點與數(shù)據(jù)中心建立連接后,串口中斷程序接收并識別數(shù)據(jù)中心的命令,由于數(shù) 據(jù)和命令是透明傳輸,單片機節(jié)點和數(shù)據(jù)中心之間必須設計通信協(xié)議,規(guī)定命令幀和數(shù)據(jù)幀 的幀頭、幀尾、幀長、幀類型、校驗等信息,二者才能正?;鲾?shù)據(jù)。通信幀格式設計如下:
 

  5 結束語

  本文將藍牙通信技術和 ARM 嵌入式系統(tǒng)應用于工業(yè)數(shù)據(jù)采集中,開發(fā)了一套新穎的無 線數(shù)據(jù)采集系統(tǒng)。系統(tǒng)包括數(shù)據(jù)中心、藍牙通信和單片機節(jié)點三部分。數(shù)據(jù)中心的硬件、軟 件功能強大,基于以ARM9 處理器S3C2410 為核心的硬件平臺設計,運行 Windows CE 操 作系統(tǒng),開發(fā)了基于 Windows CE 的藍牙數(shù)據(jù)采集應用程序。通過數(shù)據(jù)中心和單片機節(jié)點 的藍牙模塊,數(shù)據(jù)中心能夠在距離單片機節(jié)點半徑約10 米以內的任何位置方便地與智能節(jié) 點交換命令和數(shù)據(jù),不受傳輸角度和節(jié)點安裝位置的限制。

  本文作者創(chuàng)新點:在以 ARM9 芯片為核心的嵌入式數(shù)據(jù)采集系統(tǒng)中,采用藍牙無線通 信DFBM-CS120 芯片,實現(xiàn)高速實時數(shù)據(jù)信號采集和無線數(shù)據(jù)傳輸。與有線數(shù)據(jù)傳輸相比,更加方便靈活,具有較高的可靠性。在軟件設計上采用Windows CE 實時多任務系統(tǒng),實現(xiàn) 了系統(tǒng)初始化、數(shù)據(jù)采集、無線通信等任務進行調度和管理。試驗結果表明,該系統(tǒng)硬件電 路簡單、可靠性強,軟件設計合理,滿足了實時信號采集和無線數(shù)據(jù)傳輸?shù)囊蟆?/p>


 

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。