一種基于C8051F350的無(wú)線同步數(shù)據(jù)采集方法
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:設(shè)計(jì)了一種以C8051F350作為核心控制器,并配以無(wú)線通信模塊的數(shù)據(jù)采集系統(tǒng)。介紹了系統(tǒng)無(wú)線數(shù)據(jù)傳輸中軟件同步的設(shè)計(jì)及相關(guān)的處理,提出了一種通過(guò)多次測(cè)試、計(jì)算,獲得數(shù)據(jù)在無(wú)線傳輸過(guò)程中產(chǎn)生的時(shí)間差,進(jìn)行時(shí)間補(bǔ)償后實(shí)現(xiàn)系統(tǒng)同步數(shù)據(jù)采集的方法。通過(guò)對(duì)同一信號(hào)進(jìn)行多次測(cè)試,證明了該方法實(shí)現(xiàn)了數(shù)據(jù)的同步采集,為殲擊機(jī)操縱桿/舵操縱力一位移性能檢測(cè)評(píng)估系統(tǒng)提供了準(zhǔn)確的測(cè)量數(shù)據(jù)。
關(guān)鍵詞:殲擊機(jī)操縱性能;C8051F350微控制器;無(wú)線同步;數(shù)據(jù)采集
殲擊機(jī)的操縱性,如桿/舵的操縱力、位移等要符合技術(shù)要求,符合飛行員的使用習(xí)慣,才能使飛行員安全舒適地駕駛殲擊機(jī),在整個(gè)飛行中較好地完成飛行任務(wù)。殲擊機(jī)操縱桿/舵操縱力一位移性能評(píng)估是殲擊機(jī)產(chǎn)品質(zhì)量檢測(cè)的主要項(xiàng)目之一,它根據(jù)殲擊機(jī)操縱桿/舵操縱力一位移性能指標(biāo)的要求,檢測(cè)出其力和位移是否在規(guī)定的標(biāo)準(zhǔn)范圍內(nèi)。本系統(tǒng)主要完成對(duì)殲擊機(jī)操縱桿/舵操縱力和位移的同步數(shù)據(jù)采集,并通過(guò)無(wú)線的方法將采集到的力、位移數(shù)據(jù)傳輸給評(píng)估系統(tǒng),為評(píng)估系統(tǒng)提供繪制力一位移曲線所需的準(zhǔn)確測(cè)量數(shù)據(jù)。
1 系統(tǒng)整體設(shè)計(jì)
殲擊機(jī)操縱桿/舵操縱力一位移性能檢測(cè)評(píng)估系統(tǒng)由采集系統(tǒng)和評(píng)估系統(tǒng)兩部分構(gòu)成。采集系統(tǒng)主要包括傳感器、信號(hào)調(diào)理電路、微控制器和無(wú)線模塊。系統(tǒng)的硬件框圖如圖1所示。
采集系統(tǒng)通過(guò)兩片C8051F350分別同時(shí)控制采集對(duì)殲擊機(jī)操縱桿/舵操縱的施力信號(hào),以及同一時(shí)刻操縱連桿相對(duì)力的位移信號(hào),然后由各自的無(wú)線模塊將采集到的數(shù)據(jù)傳輸給評(píng)估系統(tǒng)。評(píng)估系統(tǒng)利用接收到的數(shù)據(jù)繪制力一位移曲線,和標(biāo)準(zhǔn)曲線進(jìn)行對(duì)比后給出評(píng)估結(jié)果。
2 采集系統(tǒng)硬件概述
采集系統(tǒng)的核心控制器C8051F350是美國(guó)Silabs公司推出的一款完全集成的混合信號(hào)片上系統(tǒng)型微控制器,具有高速、低功耗、集成度高、功能強(qiáng)大、體積小巧等優(yōu)點(diǎn)。它內(nèi)部有1個(gè)全差分24位模/數(shù)轉(zhuǎn)化器,2個(gè)獨(dú)立的抽取濾波器,每個(gè)抽取濾波器均可通過(guò)編程達(dá)到l kHz的采樣率。
從傳感器輸出的信號(hào)往往是很微弱的毫伏級(jí)信號(hào),需要用放大器對(duì)信號(hào)加以放大。信號(hào)經(jīng)放大、濾波后接入C805lF350的模擬信號(hào)輸入端。
射頻芯片nRF24L01是一款工作在2.4 GHz~2.5 GHz,世界通用ISM頻段的單片無(wú)線收發(fā)器芯片,不僅具有自動(dòng)應(yīng)答及自動(dòng)重發(fā)功能,而且在增強(qiáng)型ShockBurst模式下還具有數(shù)據(jù)包識(shí)別、地址及循環(huán)冗余校驗(yàn)方式(Cyclic Redundancy Check,CRC)校驗(yàn)的功能,減少了外部CPU的工作量,增強(qiáng)了數(shù)據(jù)傳輸?shù)目煽啃浴?/p>
3 采集系統(tǒng)同步設(shè)計(jì)
3.1 系統(tǒng)軟件設(shè)計(jì)
安裝在操縱桿手柄上的采集系統(tǒng)作為主采集器(簡(jiǎn)稱(chēng)A),實(shí)現(xiàn)對(duì)操縱桿/舵操縱的施力信號(hào)的采集。和操縱連桿相連的采集系統(tǒng)為從采集器(簡(jiǎn)稱(chēng)B),實(shí)現(xiàn)對(duì)操縱連桿位移信號(hào)的采集?,F(xiàn)有的同步數(shù)據(jù)采集系統(tǒng)一般是由l臺(tái)控制器控制1片具有多通道的同步數(shù)據(jù)采集芯片,或者同時(shí)控制多片同步數(shù)據(jù)采集芯片來(lái)實(shí)現(xiàn)的。而本系統(tǒng)要完成的是由2片單片機(jī)分別控制,對(duì)力和位移進(jìn)行同步數(shù)據(jù)采集。由A控制采集過(guò)程的開(kāi)始和結(jié)束,2個(gè)采集器由2片C8051F350分別控制,所以在數(shù)據(jù)采集開(kāi)始前必須使A和B系統(tǒng)同步。A和B的程序流程圖分別如圖2、圖3所示。
3.2 系統(tǒng)同步的實(shí)現(xiàn)
A和B系統(tǒng)同步是指2個(gè)采集系統(tǒng)開(kāi)始采集力數(shù)據(jù)和位移數(shù)據(jù)的時(shí)間是一致的,先計(jì)算出2片C805lF350控制無(wú)線模塊通信過(guò)程中的時(shí)間差,經(jīng)過(guò)時(shí)間補(bǔ)償后使2個(gè)采集系統(tǒng)開(kāi)始同步數(shù)據(jù)采集。A和B進(jìn)行系統(tǒng)同步的流程圖分別如圖4、圖5所示。
A同步初始化后向B發(fā)送一個(gè)準(zhǔn)備開(kāi)始采集的同步信號(hào),隨即檢測(cè)是否接收到B發(fā)來(lái)的應(yīng)答信號(hào)(同步信號(hào)和應(yīng)答信號(hào)為相同字節(jié)),同時(shí)A使用定時(shí)器中斷監(jiān)測(cè)同步信號(hào)是否丟失,定時(shí)時(shí)間要遠(yuǎn)大于從發(fā)送同步信號(hào)到接收到應(yīng)答信號(hào)所用時(shí)間的理論計(jì)算值。若定時(shí)內(nèi)沒(méi)有收到應(yīng)答信號(hào)則認(rèn)為同步信號(hào)丟失,觸發(fā)中斷,在中斷子程序中將重新發(fā)送同步信號(hào)并裝載定時(shí)初值,直到收到應(yīng)答信號(hào)。
A的定時(shí)時(shí)間包括發(fā)送同步信號(hào)的時(shí)間、同步信號(hào)的傳輸時(shí)間、B檢測(cè)判斷該信號(hào)的時(shí)間、發(fā)送應(yīng)答信號(hào)的時(shí)間、應(yīng)答信號(hào)的傳輸時(shí)間和關(guān)定時(shí)器的時(shí)間。
其中A發(fā)送同步信號(hào)需m個(gè)機(jī)器周期,B檢測(cè)判斷同步信號(hào)需n個(gè)機(jī)器周期,發(fā)送應(yīng)答信號(hào)需p個(gè)機(jī)器周期(p=m),關(guān)定時(shí)器需q個(gè)機(jī)器周期,C8051F350的機(jī)器周期為T(mén),則執(zhí)行這些指令的時(shí)間S=(m+n+p+q)T。nRF24L0l的數(shù)據(jù)傳輸率為l Mbps,同步信號(hào)的傳輸時(shí)間為tl,應(yīng)答信號(hào)的傳輸時(shí)間為t2(t2=t1),這一過(guò)程共用時(shí)G=t1+t2+S,定時(shí)時(shí)間為H>>G。
B接收到同步信號(hào)后,向A發(fā)送一個(gè)應(yīng)答信號(hào),經(jīng)過(guò)X的延時(shí)后2個(gè)采集系統(tǒng)便完成了系統(tǒng)同步。由于測(cè)試環(huán)境的不同,X也是不確定的,可由另外的測(cè)試程序測(cè)試后加以計(jì)算獲得。
因?yàn)锳,B選用的均為C805lF350,機(jī)器周期相同,所以2個(gè)采集系統(tǒng)在完成系統(tǒng)同步后的數(shù)據(jù)采集過(guò)程可視為是同步進(jìn)行的,不考慮其間的時(shí)間差。
3.3 同步測(cè)試設(shè)計(jì)
A的測(cè)試流程圖如圖6所示。A定時(shí)H觸發(fā)中斷,在中斷子程序中令同步測(cè)試信號(hào)丟失標(biāo)志Flag=1,表明同步測(cè)試信號(hào)丟失,要重新發(fā)送。同時(shí)A使能計(jì)數(shù)器,利用計(jì)數(shù)值可以計(jì)算出從發(fā)送同步測(cè)試信號(hào)到接收到應(yīng)答信號(hào)的實(shí)際用時(shí),進(jìn)而得到同步(應(yīng)答)信號(hào)的實(shí)際傳輸時(shí)間。用多次測(cè)試中出現(xiàn)概率最大的數(shù)值計(jì)算實(shí)測(cè)時(shí)間,實(shí)測(cè)時(shí)間記為T(mén)A。
B始終處于接收數(shù)據(jù)的狀態(tài),只要收到A發(fā)來(lái)的同步測(cè)試信號(hào)就發(fā)送一個(gè)測(cè)試應(yīng)答信號(hào),如圖7所示。
從圖6可知實(shí)測(cè)時(shí)間中開(kāi)、關(guān)計(jì)數(shù)器的時(shí)間可相互抵消,且A檢測(cè)判斷應(yīng)答信號(hào)同樣需n個(gè)機(jī)器周期,則同步(應(yīng)答)信號(hào)的實(shí)際傳輸時(shí)間tA=(TA-(n+p+n)T)/2。
圖5中的延時(shí)時(shí)間包括應(yīng)答信號(hào)的傳輸時(shí)間、A檢測(cè)判斷該應(yīng)答信號(hào)的時(shí)間和關(guān)定時(shí)器的時(shí)間,則x=tA+(n+q)T。
4 測(cè)試結(jié)果及分析
A,B對(duì)加入l V直流偏置、頻率為1 kHz、峰值為1 V的同一正弦信號(hào)進(jìn)行同步數(shù)據(jù)采集,利用MATLAB將采集到的2路數(shù)據(jù)擬合。圖8為多次實(shí)驗(yàn)中擬合效果較好的波形,C805lF350的采樣頻率為19.2 kHz。
從圖8可以看出兩路波形基本重合,進(jìn)行局部放大后的波形如圖9所示??筛鶕?jù)波形的周期、采樣頻率計(jì)算出A和B對(duì)同一數(shù)值采集的時(shí)間差在μs量級(jí),實(shí)現(xiàn)了系統(tǒng)的同步數(shù)據(jù)采集。
5 結(jié)論
通過(guò)多次實(shí)驗(yàn)證明了本文提出的時(shí)間補(bǔ)償法可使采集系統(tǒng)實(shí)現(xiàn)同步數(shù)據(jù)采集,為殲擊機(jī)進(jìn)行操縱性能檢測(cè)評(píng)估提供有效、準(zhǔn)確的測(cè)量數(shù)據(jù)。本系統(tǒng)具有電路簡(jiǎn)單、體積小巧,使用方便等特點(diǎn),可應(yīng)用于其他相關(guān)領(lǐng)域和行業(yè)中。