基于DSP和ADS8364的數據采集系統設計
2.1 信號調理模塊的設計[1]
激光位移傳感器輸出的模擬量電流輸入信號的范圍為4~20 mA。ADS8364待轉換的模擬輸入電壓范圍應保持在A(yíng)GND-0.3 V和AVDD+0.3 V之間。通過(guò)1個(gè)250 Ω精密取樣電阻,將電流信號轉換為1~5 V電壓信號。通過(guò)運放跟隨電路提高輸入阻抗,增強系統的抗干擾能力。電路中取樣電阻非常關(guān)鍵,它們影響著(zhù)輸入信號的變換精度,因此必須采用溫漂較小的精密電阻。
2.2 DSP處理器與A/D轉換模塊設計
本采集系統要求對激光位移傳感器的模擬信號進(jìn)行采集,鑒于測量精度要求較高,選擇TI公司的高精度ADS8364作為A/D轉換芯片,它是TI公司新推出的高速、低功耗、6通道同步采樣16位模數轉換器,采用+5 V工作電壓,最大采樣吞吐率可高達5 MHz; 帶有80 dB共模抑制的全差分輸入通道以及6個(gè)4 s連續近似的模數轉換器、6個(gè)差分采樣放大器;片上還帶有+2.5 V參考電壓以及高速并行接口。
DSP主要負責通過(guò)CAN總線(xiàn)與上位機交換數據、以地址/數據總線(xiàn)的方式與CPLD 通信, 實(shí)現對數據采集的控制以及對采樣后的數據進(jìn)行前端數字信號處理(數字低通濾波)。這里選用TI公司的32位定點(diǎn)DSP TMS320F2812芯片,它采用1.8 V 的內核電壓, 具有3.3 V 的外圍接口電壓,最高頻率150 MHz,片內有18 KB的RAM, 128 KB的高速Flash[2]。
在本系統中,上電后由硬件復位ADS8364,ADS8364的CLK時(shí)鐘由外部獨立的有源晶振提供,頻率為4 MHz。A/D轉換完成后產(chǎn)生轉換結束信號EOC。將ADS8364的BYTE引腳接低電平,使轉換結果以16位的方式輸出。地址/模式信號(A0,A1,A2)決定ADS8364 的數據讀取方式,可以選擇的方式包括單通道、周期或FIFO模式。將ADD引腳置為高電平, 使得讀出的數據中包含轉換通道信息??紤]到數據采集處理系統的采樣頻率一般較高,如果用DSP直接控制ADS8364的訪(fǎng)問(wèn),將占用DSP較多的資源, 同時(shí)對DSP的實(shí)時(shí)性要求也較高。因此在本系統設計中, 用CPLD實(shí)現ADS8364的接口控制電路。DSP的GPIO與ADS8364的HOLDA、HOLDB、HOLDC信號相連,控制6個(gè)ADC的采樣/保持。EOC連接到F2812的XINT1。
2.3 CPLD邏輯控制模塊設計[3]
在該數據采集處理系統中, CPLD是一個(gè)重要的組成部分。由CPLD 組成的邏輯控制模塊接收DSP傳送過(guò)來(lái)的動(dòng)作命令, 控制A/D 轉換模塊進(jìn)行數據采集。這里選用Altera公司的MAX II系列芯片 EPM1270, 它包含1 270個(gè)LE相當于40 000門(mén)數,980個(gè)等效宏單元數,8 KB用戶(hù)可用Flash。116個(gè)用戶(hù)可用I/O口,擴展方便。
CPLD 作為一個(gè)單獨的控制執行結構,通過(guò)編寫(xiě)相應的Verilog HDL代碼, 即可生成相應的操作電路, 實(shí)現對各種輸入信號的鎖存、判斷、處理以及對各種命令信號的執行和輸出信號的控制。
2.4 CAN通信模塊設計[4]
由于所選的TMS320F2812 DSP 內部含有CAN控制器,只需加1個(gè)CAN收發(fā)器芯片即可實(shí)現CAN總線(xiàn)網(wǎng)絡(luò )。CAN通信模塊的功能是將采集系統的采樣結果及運行參數實(shí)時(shí)上傳到總線(xiàn),提供給上位機存儲及處理。
3 系統軟件設計
軟件程序運行于硬件平臺之上,實(shí)現采樣系統的采集、濾波以及后期處理,是測量裝置的靈魂。本裝置軟件設計主要由主程序和子程序組成。為了實(shí)現準確、快速、實(shí)時(shí)的測量功能,采用C 語(yǔ)言和匯編語(yǔ)言混合編程。
3.1 DSP 程序設計
DSP編程的主要任務(wù)是初始化、管理板上的資源和實(shí)現前端數字信號處理的算法。這里以TI公司提供的功能強大的CCS(Code Composer Studio) 為集成開(kāi)發(fā)環(huán)境。系統上電復位后, 首先完成F2812 自身的初始化, 包括配置RAM塊、設置I/O 模式、定時(shí)器模式、中斷等; 然后程序進(jìn)入循環(huán)狀態(tài),等待上位機CAN指令的到來(lái)。在F2812的程序存儲器中存儲常用的數字信號處理算法,F2812在收到上位機通過(guò)CAN總線(xiàn)發(fā)送的控制指令后,在中斷函數中選擇某種處理算法,同時(shí)向CPLD發(fā)出動(dòng)作命令,控制A/D轉換模塊完成信號的采集并將采集到的數據存入SRAM中。當采樣點(diǎn)數達到設定點(diǎn)數時(shí),DSP程序實(shí)現對部分采樣數據的讀取,在主循環(huán)程序中根據上位機選定的處理算法完成數據的前端處理,然后將數據打包,通過(guò)CAN總線(xiàn)傳輸給上位機。F2812主程序流程圖如圖3所示。 本文引用地址:http://dyxdggzs.com/article/190511.htm
評論