999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于藍(lán)牙串口模塊的數(shù)據(jù)處理算法

2013-10-20 08:25:50朱洪濤李江明王志勇
實(shí)驗(yàn)室研究與探索 2013年11期

朱洪濤, 李江明, 王志勇

(南昌大學(xué)機(jī)電工程學(xué)院,江西 南昌 330031)

0 引言

隨著微電子、計(jì)算機(jī)等技術(shù)的飛速發(fā)展,現(xiàn)代工業(yè)數(shù)據(jù)采集的信息量在不斷擴(kuò)大,單位信息數(shù)據(jù)可能會(huì)包含多個(gè)字節(jié),一般將包含特定字節(jié)長(zhǎng)度的數(shù)據(jù)流加上首尾判斷標(biāo)志以數(shù)據(jù)包方式傳輸[1]。藍(lán)牙是一種短距離無(wú)線通信技術(shù),成本低、功耗小、傳輸速率較高、抗干擾能力強(qiáng)、組網(wǎng)靈活[2],但傳統(tǒng)藍(lán)牙通信的協(xié)議復(fù)雜,不易操作。相比之下,串口是計(jì)算機(jī)上一種常用設(shè)備的通信協(xié)議,相當(dāng)簡(jiǎn)單,為人們所熟知[3]。藍(lán)牙串口模塊正是兩者結(jié)合的產(chǎn)物,它保留了藍(lán)牙通信與串口通信的優(yōu)點(diǎn),數(shù)據(jù)的傳輸采用藍(lán)牙技術(shù),在上位機(jī)的程序開(kāi)發(fā)過(guò)程中直接調(diào)用虛擬串口就能實(shí)現(xiàn)數(shù)據(jù)的無(wú)線通信[4]。但藍(lán)牙發(fā)送數(shù)據(jù)包的頻率和長(zhǎng)度不確定,其數(shù)據(jù)包格式與標(biāo)準(zhǔn)串口通信之間存在細(xì)微差異,導(dǎo)致用傳統(tǒng)串口編程時(shí)可能出現(xiàn)數(shù)據(jù)丟失[5]。

本文提出一種基于環(huán)形緩沖的數(shù)據(jù)處理算法,首先創(chuàng)建一個(gè)全局的緩沖數(shù)組、讀指針和寫(xiě)指針,在數(shù)據(jù)的接收線程函數(shù)中實(shí)現(xiàn)該算法。利用緩沖區(qū)先將原始數(shù)據(jù)保存到該緩沖區(qū)內(nèi),此過(guò)程在數(shù)據(jù)采集中是不間斷的,同時(shí)按照要求的數(shù)據(jù)格式去緩沖區(qū)中取出數(shù)據(jù),由于此時(shí)所取數(shù)據(jù)是標(biāo)準(zhǔn)格式,所以不會(huì)出現(xiàn)接收到不完整的信息或者接收到錯(cuò)誤信息的情況[6]。

1 典型應(yīng)用系統(tǒng)

一個(gè)典型的無(wú)線數(shù)據(jù)采集系統(tǒng)由上下位機(jī)組成,下位機(jī)包括傳感器、信號(hào)調(diào)理電路、單片機(jī),上位機(jī)則通常為計(jì)算機(jī)或手持終端。下位機(jī)部分主要負(fù)責(zé)數(shù)據(jù)采集,通過(guò)單片機(jī)采集各個(gè)傳感器的有效測(cè)量數(shù)據(jù),然后將采的集數(shù)據(jù)通過(guò)藍(lán)牙串口模塊轉(zhuǎn)為無(wú)線數(shù)據(jù)發(fā)送。上位機(jī)則調(diào)用虛擬串口接收數(shù)據(jù)并對(duì)其進(jìn)行處理及保存[7]。系統(tǒng)組成如圖1所示。

圖1 無(wú)線數(shù)據(jù)采集系統(tǒng)

2 數(shù)據(jù)處理算法

藍(lán)牙串口模塊支持藍(lán)牙串口協(xié)議[8],將復(fù)雜的藍(lán)牙協(xié)議轉(zhuǎn)換為簡(jiǎn)單易用的串口通信協(xié)議,使用戶(hù)能夠以串口的編程方式使用藍(lán)牙。但是藍(lán)牙發(fā)送數(shù)據(jù)包的頻率和長(zhǎng)度不確定,其數(shù)據(jù)包格式與標(biāo)準(zhǔn)的串口傳輸間存在差異,所以在應(yīng)用傳統(tǒng)的串口編程方式處理藍(lán)牙數(shù)據(jù)時(shí),無(wú)疑會(huì)產(chǎn)生錯(cuò)誤的結(jié)果。本文將從產(chǎn)生兩種方式數(shù)據(jù)包格式差異的原因、環(huán)形緩沖區(qū)的概念以及如何在數(shù)據(jù)接收線程中實(shí)現(xiàn)環(huán)形緩沖區(qū)三個(gè)方面來(lái)闡述該數(shù)據(jù)處理算法。

2.1 數(shù)據(jù)格式間的差異

串口傳輸一次性發(fā)送完一個(gè)數(shù)據(jù)包或者多個(gè)數(shù)據(jù)包,即每次傳輸數(shù)據(jù)長(zhǎng)度為包長(zhǎng)度的整數(shù)倍[9]。故在傳統(tǒng)的串口傳輸方式下,接收線程中的暫存數(shù)組長(zhǎng)度為一個(gè)或多個(gè)完整包數(shù)據(jù)。

藍(lán)牙技術(shù)特別設(shè)計(jì)了快速認(rèn)證和跳頻方案。在一次數(shù)據(jù)傳輸中,無(wú)線電收發(fā)器按一定的碼序列不斷地從一個(gè)信道跳到另一個(gè)信道。與其它工作在相同頻段的系統(tǒng)相比,藍(lán)牙跳頻更快,數(shù)據(jù)包更短,每個(gè)數(shù)據(jù)包以不同的頻率發(fā)送,而且數(shù)據(jù)包長(zhǎng)度不定[10]。兩種方式下的數(shù)據(jù)包格式差異如圖2所示,為了說(shuō)明方便,這里假設(shè)一個(gè)標(biāo)準(zhǔn)數(shù)據(jù)包長(zhǎng)度為63 kB。

圖2 兩種方式下的數(shù)據(jù)包格式

圖3 環(huán)形緩沖區(qū)示意圖

從圖1可以得出以下結(jié)論:就藍(lán)牙傳輸?shù)哪骋粩?shù)據(jù)包而言,由于其無(wú)規(guī)律性,一般不會(huì)是固定長(zhǎng)度,因此若直接取出該數(shù)據(jù)包進(jìn)行處理無(wú)疑將得到錯(cuò)誤的結(jié)果。但是從數(shù)據(jù)的整體接收過(guò)程看,藍(lán)牙傳輸?shù)臄?shù)據(jù)是完整且有效的[11]。

2.2 環(huán)形緩沖區(qū)

綜上對(duì)藍(lán)牙數(shù)據(jù)的分析,可知藍(lán)牙數(shù)據(jù)包是零散且非標(biāo)準(zhǔn)格式的,故實(shí)際應(yīng)用中需要先將這些零碎的數(shù)據(jù)包進(jìn)行整合,再按照標(biāo)準(zhǔn)格式讀取[12]。為此本文提出一種數(shù)據(jù)預(yù)處理算法—環(huán)形緩沖區(qū)。在進(jìn)入數(shù)據(jù)接收進(jìn)程之前,首先創(chuàng)建一個(gè)全局的緩沖數(shù)組,一個(gè)寫(xiě)指針和一個(gè)讀指針。其中讀指針指向環(huán)形緩沖區(qū)中可讀的數(shù)據(jù),寫(xiě)指針指向環(huán)形緩沖區(qū)中可寫(xiě)的緩沖區(qū)。通過(guò)移動(dòng)讀指針和寫(xiě)指針就可以實(shí)現(xiàn)緩沖區(qū)的數(shù)據(jù)讀取和寫(xiě)入[13]。經(jīng)過(guò)這種預(yù)處理算法,用戶(hù)可以依照個(gè)人要求讀取數(shù)據(jù)進(jìn)行分析處理。該方法不僅有效地保存了藍(lán)牙數(shù)據(jù),而且節(jié)省系統(tǒng)資源,圖3為該緩沖區(qū)的示意圖:

2.3 算法實(shí)現(xiàn)

在實(shí)際應(yīng)用程序中實(shí)現(xiàn)環(huán)形緩沖區(qū),一般在接收線程中進(jìn)行,因?yàn)檫@樣可以保證之后得到數(shù)據(jù)的正確性[14]。圖4為該算法的具體實(shí)現(xiàn)過(guò)程。

3 算法驗(yàn)證與效果

圖4 算法實(shí)現(xiàn)流程

本文使用安裝藍(lán)牙串口模塊的軌道檢測(cè)檢儀來(lái)對(duì)一段已知參數(shù)的軌道進(jìn)行測(cè)量,得到該段軌道的測(cè)量數(shù)據(jù)曲線,如圖5所示。由于直接進(jìn)行數(shù)據(jù)對(duì)比難以直觀地體現(xiàn)出數(shù)據(jù)的連續(xù)性,故此處通過(guò)對(duì)比采用本文算法后采集得到的軌道參數(shù)曲線與原有的軌道參數(shù)曲線是否一致[15]。通過(guò)對(duì)比無(wú)線采集得到的軌道參數(shù)曲線與原有的軌道參數(shù)曲線,可以看出圖中無(wú)線采集得到的曲線與原有參數(shù)的曲線高度吻合,無(wú)數(shù)據(jù)丟失現(xiàn)象。證明該數(shù)據(jù)處理算法在實(shí)際工作中是穩(wěn)定有效的。

4 結(jié)語(yǔ)

圖5 無(wú)線采集的測(cè)量數(shù)據(jù)

藍(lán)牙串口模塊是目前廣泛使用的一種通信模塊,它同時(shí)具備藍(lán)牙與串口的優(yōu)點(diǎn)。但是由于藍(lán)牙發(fā)送數(shù)據(jù)包的頻率和每個(gè)數(shù)據(jù)包長(zhǎng)度均不確定,致使其數(shù)據(jù)格式無(wú)規(guī)律,不規(guī)則,這在一定程度上加大了應(yīng)用程序開(kāi)發(fā)難度。本文在詳細(xì)分析了藍(lán)牙數(shù)據(jù)包格式后,提出了一種基于環(huán)形緩沖區(qū)的數(shù)據(jù)處理算法。在接收線程中實(shí)現(xiàn)環(huán)形緩沖區(qū),先將藍(lán)牙數(shù)據(jù)存入環(huán)形緩沖數(shù)組中,再對(duì)其進(jìn)行相應(yīng)操作。通過(guò)移動(dòng)讀指針和寫(xiě)指針就可以實(shí)現(xiàn)緩沖區(qū)的數(shù)據(jù)讀取和寫(xiě)入。這樣做不僅可以節(jié)省系統(tǒng)資源,而且有效數(shù)據(jù)不會(huì)丟失,所取得的數(shù)據(jù)準(zhǔn)確無(wú)誤。通過(guò)實(shí)際檢測(cè),表明本文提出的藍(lán)牙數(shù)據(jù)處理方法穩(wěn)定可靠,同時(shí)算法原理簡(jiǎn)單,易于編程實(shí)現(xiàn)。進(jìn)一步討論可知,該算法亦適用于其他不規(guī)則數(shù)據(jù)的處理,具有一定的通用性。

[1] 左 震,張羿猛,唐貴林,等.基于多字節(jié)流水線的POS信號(hào)IP包提取算法[J].測(cè)試技術(shù)學(xué)報(bào),2009,23(4):337-342.

[2] 錢(qián)志鴻,楊 帆.藍(lán)牙技術(shù)原理、開(kāi)發(fā)與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006.

[3] 張海林,楊 勇.自動(dòng)化系統(tǒng)中的串行通信協(xié)議的設(shè)計(jì)[J].計(jì)算機(jī)工程與應(yīng)用,2003,31:159-160.

[4] 孟 凱,李 鑫.基于藍(lán)牙串口模塊的小型六足機(jī)器人系統(tǒng)設(shè)計(jì)[J].河南工程學(xué)院學(xué)報(bào),2012,24(1):71-74.

[5] 錢(qián)志鴻,劉 丹.藍(lán)牙技術(shù)數(shù)據(jù)傳輸綜述[J].通信學(xué)報(bào),2012,33(4):143-151.

[6] 孫海燕,侯朝楨.具有數(shù)據(jù)包丟失及多包傳輸?shù)木W(wǎng)絡(luò)控制系統(tǒng)穩(wěn)定性[J].控制與決策,2005,20(5):511-515.

[7] 盧偉國(guó),童明俶.基于藍(lán)牙的無(wú)線數(shù)據(jù)采集系統(tǒng)[J].電測(cè)及儀表,2002,39(9):26-29.

[8] Bluetooth Special Interest Group.Bluetooth Specification Vol.3 Part A:Logical Link Control and Adaptation Protocol Specification[S].2009.

[9] 劉書(shū)智.Visual C++串口通信與工程應(yīng)用實(shí)踐[M].北京:中國(guó)鐵道出版社,2011.

[10] 張文娜,黎 寧.基于藍(lán)牙跳頻原理的通信系統(tǒng)仿真[J].福建電腦,2010(8):125-126.

[11] 彭述清,施心凌,苗愛(ài)敏,等.嵌入式藍(lán)牙協(xié)議的數(shù)據(jù)傳輸實(shí)現(xiàn)[J].通信技術(shù),2009,42(9):32-34.

[12] 禹 榮.數(shù)據(jù)采集系統(tǒng)中緩沖區(qū)的設(shè)計(jì)方法[J].工業(yè)控制計(jì)算機(jī),2006,19(5):73.

[13] 莊哲民,蔡清福.基于環(huán)形緩沖區(qū)的高速數(shù)據(jù)采集系統(tǒng)[J].數(shù)據(jù)采集與處理,1998,13(3):264-266.

[14] 菅志剛,金 旭.數(shù)據(jù)挖掘中數(shù)據(jù)預(yù)處理的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2004(7):117-118.

[15] 梅海軍,王 平,謝昊飛.基于EPA標(biāo)準(zhǔn)的藍(lán)牙數(shù)據(jù)采集器[J].中國(guó)儀器儀表,2004(5):10-19.

主站蜘蛛池模板: 91美女视频在线| 人妻出轨无码中文一区二区| 欧美第九页| 亚洲 成人国产| 欧美成人A视频| 精品国产免费观看| 曰韩免费无码AV一区二区| 久青草国产高清在线视频| 国产综合无码一区二区色蜜蜜| 国产 日韩 欧美 第二页| 日韩在线视频网| 色香蕉网站| 亚洲精品动漫| 久久大香香蕉国产免费网站| 91精品日韩人妻无码久久| 国产国语一级毛片| 亚洲一区无码在线| 国产精品免费露脸视频| 亚洲男人在线天堂| 国产精品久久久久久久伊一| 日韩精品一区二区三区中文无码| 五月婷婷导航| 玖玖免费视频在线观看| 久综合日韩| 国产一区二区网站| 996免费视频国产在线播放| 亚洲视屏在线观看| 伊人天堂网| 欧美日一级片| 国产乱肥老妇精品视频| 91福利免费视频| 又爽又大又光又色的午夜视频| 亚洲精品国产综合99久久夜夜嗨| 国产无码网站在线观看| 国产农村妇女精品一二区| 国产精品福利尤物youwu | a欧美在线| 亚洲中久无码永久在线观看软件| 女人18毛片久久| 天堂在线视频精品| 亚洲一区二区在线无码| 亚洲三级a| 欧美一区二区自偷自拍视频| 自拍偷拍欧美日韩| 五月婷婷欧美| 欧美高清三区| 欧美中文字幕在线视频| 亚洲精品中文字幕无乱码| 国产手机在线小视频免费观看| 精品国产aⅴ一区二区三区| 国产午夜无码专区喷水| 国产人人射| 欧美精品亚洲二区| av手机版在线播放| 91青青视频| 免费人成视网站在线不卡| 五月激情婷婷综合| 日本一区二区不卡视频| 免费在线看黄网址| 国产成人综合网| 999国产精品永久免费视频精品久久| 中文字幕丝袜一区二区| 性视频久久| 精品成人一区二区三区电影| www.91在线播放| 成人午夜网址| 久久亚洲欧美综合| 久一在线视频| 国产丰满大乳无码免费播放| 夜夜操国产| 午夜精品福利影院| 色亚洲成人| 国产特级毛片aaaaaa| 9丨情侣偷在线精品国产| 日本福利视频网站| 乱系列中文字幕在线视频| 日韩午夜片| 久久国产高潮流白浆免费观看| 色呦呦手机在线精品| 亚洲天堂精品视频| 欧美中文一区| 欧美激情伊人|