一種基于C8051F350的無線同步數據采集方法
從傳感器輸出的信號往往是很微弱的毫伏級信號,需要用放大器對信號加以放大。信號經放大、濾波后接入C805lF350的模擬信號輸入端。
射頻芯片nRF24L01是一款工作在2.4 GHz~2.5 GHz,世界通用ISM頻段的單片無線收發器芯片,不僅具有自動應答及自動重發功能,而且在增強型ShockBurst模式下還具有數據包識別、地址及循環冗余校驗方式(Cyclic Redundancy Check,CRC)校驗的功能,減少了外部CPU的工作量,增強了數據傳輸的可靠性。本文引用地址:http://www.j9360.com/article/195482.htm
3 采集系統同步設計
3.1 系統軟件設計
安裝在操縱桿手柄上的采集系統作為主采集器(簡稱A),實現對操縱桿/舵操縱的施力信號的采集。和操縱連桿相連的采集系統為從采集器(簡稱B),實現對操縱連桿位移信號的采集?,F有的同步數據采集系統一般是由l臺控制器控制1片具有多通道的同步數據采集芯片,或者同時控制多片同步數據采集芯片來實現的。而本系統要完成的是由2片單片機分別控制,對力和位移進行同步數據采集。由A控制采集過程的開始和結束,2個采集器由2片C8051F350分別控制,所以在數據采集開始前必須使A和B系統同步。A和B的程序流程圖分別如圖2、圖3所示。
3.2 系統同步的實現
A和B系統同步是指2個采集系統開始采集力數據和位移數據的時間是一致的,先計算出2片C805lF350控制無線模塊通信過程中的時間差,經過時間補償后使2個采集系統開始同步數據采集。A和B進行系統同步的流程圖分別如圖4、圖5所示。
A同步初始化后向B發送一個準備開始采集的同步信號,隨即檢測是否接收到B發來的應答信號(同步信號和應答信號為相同字節),同時A使用定時器中斷監測同步信號是否丟失,定時時間要遠大于從發送同步信號到接收到應答信號所用時間的理論計算值。若定時內沒有收到應答信號則認為同步信號丟失,觸發中斷,在中斷子程序中將重新發送同步信號并裝載定時初值,直到收到應答信號。
A的定時時間包括發送同步信號的時間、同步信號的傳輸時間、B檢測判斷該信號的時間、發送應答信號的時間、應答信號的傳輸時間和關定時器的時間。
其中A發送同步信號需m個機器周期,B檢測判斷同步信號需n個機器周期,發送應答信號需p個機器周期(p=m),關定時器需q個機器周期,C8051F350的機器周期為T,則執行這些指令的時間S=(m+n+p+q)T。nRF24L0l的數據傳輸率為l Mbps,同步信號的傳輸時間為tl,應答信號的傳輸時間為t2(t2=t1),這一過程共用時G=t1+t2+S,定時時間為H>>G。
B接收到同步信號后,向A發送一個應答信號,經過X的延時后2個采集系統便完成了系統同步。由于測試環境的不同,X也是不確定的,可由另外的測試程序測試后加以計算獲得。
評論