基于TMS320VC5416的多路加速度采集系統設計
摘要:本文介紹了一種基于TMS320VC5416的多路加速度采集與處理系統的設計方法。該系統采用AD73360作為數據采集前端,通過DSP的McBSP和AD73360級聯,可實現多路模擬加速度信號的實時采集和處理。
關鍵詞:TMS320VC5416;AD73360;加速度;數據處理
引言
多路加速度采集系統在平臺式慣導系統中起著至關重要的作用。在早期的產品中,控制和處理核心都采用馮諾衣曼總線結構的微處理器,由于其指令執行速度較慢,設計一個高性能的實時采集與處理系統顯得比較困難。本文介紹了一種采用TMS320V C5416(DSP)作為處理器,用十六位高精度AD73360作為ADC的多路加速度采集系統設計方法。
系統硬件設計
系統由A/D轉換電路、DSP及其外圍電路和通信接口電路組成,如圖1所示。
A/D轉換電路設計
AD73360簡介
AD73360工作模式控制起來非常方便,當器件加電以后,DSP通過XF或者寫I/O 的方式將AD73360的片選SE引腳置為高電平,此時AD73360處于上電復位狀態,輸出同步幀信號SDOFS,當采用圖3的接法時,可以通過DSP的McBSP串口向AD73360寫入控制字。AD73360由8個寄存器來控制,控制字字長為16位。
在用AD73360進行電路設計時,可直接用單極性輸入方式,也可采取差動輸入方式將單片AD73360接成三通道轉換器。不過在用AD73360器件內部參考電壓對模擬輸入前端進行直流偏置時,最好采用高輸入阻抗的運算放大器進行隔離。
加速度信號預處理電路設計
加速度信號預處理電路主要對輸入的多路加速度信號進行取樣、直流偏置和抗混疊濾波處理,具體電路如圖2所示。
在直流偏置之前,首先采用精密電阻網絡R1和R2對加速度信號進行取樣。為了盡可能提高A/D轉換精度,減小電路板的體積,系統使用AD73360片內參考電壓REFOUT作直流偏置。在送到運算放大器OP2進行直流偏置之前,采用運算放大器OP1進行隔離,以確保ADC的REFOUT端子沒有輸入、輸出電流,從而保證ADC片內精密電壓源電壓恒定和較高的A/D轉換精度。最后,經R5和C1組成RC網絡,抗混迭濾波后送到AD73360進行A/D轉換。
AD73360與TMS320VC5416的接口設計
AD73360片內集成有同步串口SPI,通過和DSP的McBSP簡單連接便可組成一個多通道同步數據采集系統。AD73360的復位信號/RESET、片選信號SE分別由DSP器件的/RESET和XF引腳通過一個上升沿雙D觸發器提供,這樣可以確保AD73360的復位信號、片選信號和DMCLK保持同步,以免發生讀寫錯誤。McBSP的輸入/輸出時鐘均由AD73360提供,即DSP的同步緩沖串口工作于外部時鐘模式。通過多片AD73360級聯,最多可以實現48路同步采集系統(見圖3)。系統在收到主控單片機的啟動命令后,將XF置為高電平,AD73360處于上電復位狀態,DSP將控制字依順序寫到所有AD73360中,最后啟動A/D轉換,系統開始對加速度信號進行采集。
DSP外圍電路和通信接口電路設計
DSP外圍電路包括時鐘、電源、復位以及片外程序存儲器電路。系統采用外部時鐘模式,電源和復位電路采用TI公司專用芯片TPS767D301和TPS3707-33。由于TMS320VC5416無片內Flash,因此系統采用AM29LV200B作為程序存儲器,此芯片是16位Flash存儲器。系統上電后,DSP片內引導程序將AM29LV200B中的工作程序加載到片內SRAM,提高程序執行效率。
系統通信電路包括并行通信和串行通信兩部分,由于主控單片機采用5V邏輯,故并行通信的握手信號和數據線均需采用SN74LV245B進行電平隔離,同時數據總線需用SN74LV373進行鎖存。并行通信的握手信號若采用I/O讀寫的方式實現,數據傳輸效率會降低許多,所以系統將McBSP2定義為通用I/O口,用McBSP2來和主控單片機握手,從而減少硬件開銷,同時提高數據傳輸速度。
TMS320VC5416片內無UART端口,要實現和主控單片機的串行數據通信,本系統采用ST
為了編寫出模塊性強、執行效率高的DSP程序,該系統在開發過程中采用匯編語言和C語言相結合的方式進行軟件開發。用C語言編寫程序主體,用匯編語言進行硬件接口程序編寫。
系統軟件執行過程如圖4所示,其中左圖為主程序流程,右圖為中斷程序流程。系統加電后,首先對McBSP、AD73360、DMA和串/并通信接口等進行初始化,然后等待主控單片機的啟動命令,接收到啟動命令后開始進行多路加速度信號的采集和處理,并將經過線性修正和濾波的加速度數據實時發送給主控單片機。
中斷響應程序包括定時器中斷程序、DMA中斷程序和數據傳輸請求中斷程序。當系統打開中斷后,一旦收到啟動命令,便啟動AD73360,同時定時器開始計時;AD73360將轉換后的離散加速度數據經McBSP0直接送到DMA,并分類裝到各個RAM區間,當DMA指定的數據塊緩沖區充滿以后,DSP響應DMA中斷,對加速度值進行線性修正和數字濾波;若主控計算機數據請求中斷產生,DSP通過并口、串口向主控計算機發送加速度值和空間位置信息;若定時器產生中斷,DSP將開關變量T置為1。當中斷返回后,繼續進行加速度數據處理,并判斷開關變量T的狀態,決定是否給出控制信號。
因為在地面模擬三維加速度輸入較為困難,在數據采集試驗中,選用三路100Hz正弦信號作為模擬輸入,用1kHz采樣率進行采樣。采集系統幅度和相位一致性較好,需要在實際應用中進一步檢驗其采集精度。
利用AD73360和TMS320V C5416進行加速度采集系統設計需注意以下幾個問題:由于DSP系統具有低功耗、雙電源和高速度性能,在設計時需考慮芯片引腳的外接方式和工藝特性; AD73360的模擬電源和數字電源要隔離;DSP和AD73360之間的接口在布線時需注意抗干擾,必要時可在串行數據線上串接10左右的電阻;在用AD73360提供的參考電壓作直流偏置時,最好先用運算放大器隔離。
評論