王 濤,傅錚翔,俞鵬先,田 旭
(1.中國電子科技集團公司第五十八研究所,江蘇無錫 214062;2.中國礦業大學(北京)機械與電氣工程學院,北京 100083)
隨著科學技術的發展,各種利用半導體集成電路和數字信號處理技術等電子技術制作的互聯控制器已廣泛應用于交通運輸、生物醫療、航空航天、工業自動化控制等領域[1-4],因此對數據采集和輸出信號的通道數、精度等方面的要求越來越高[5-8]。一些輸入輸出通道數較少、采樣和輸出精度較低的互聯控制器已無法滿足實際工作的需求[6-13]。
基于上述需求,該文設計了一種基于TMS320 F28335 的多通道、高精度互聯控制器。該控制器利用恒流源驅動壓電式加速度傳感器采集振動量,振動信號經過調理電路后輸入給兩片ADC 芯片ADS8586S 進行12 路模擬量采集。DSP 通過XINTF總線讀取ADC 采樣轉換后的數字量,并對采樣的振動信號進行數據處理。處理分析后,DSP 通過SPI 接口控制一片DAC 芯片DAC8718 輸出6 路模擬信號驅動后級電路。
對該文設計的互聯控制器進行了測試驗證,測試結果表明,設計的4 mA 恒流源能驅動傳感器正常采集振動量信號,設計的低通濾波器對高于350 Hz的信號濾波效果較好,ADS8586S 采樣、DAC8718 輸出、數據的存儲和收發等功能均正常,12 路ADC 采集通道的輸入電壓范圍為±5 V,6 路DAC 輸出通道的電壓范圍為±10 V,采集和輸出信號偏差均在5‰以內。
多通道互聯控制器硬件主要包括電源、低通濾波、信號調理、ADC 采集和DAC 輸出等部分,控制器系統框圖如圖1 所示。

圖1 系統框圖
控制器通過恒流源給12 路壓電式加速度傳感器供電,傳感器獲取振動量后將其轉換為電壓信號輸出,經過二階無源低通濾波和信號調理電路后,輸入給ADC 芯片ADS8586S 進行模擬量采集。采用型號為TI TMS320F28335 的DSP 作為控制核心,通過XINTF 總線讀取ADC 芯片采樣轉換后的數字量,并對采樣的振動量信號進行數據處理。處理分析后,DSP 通 過SPI 接口控 制DAC 芯 片DAC8718,DAC 輸出相應的模擬信號驅動后級電路。
控制器的主要性能指標見表1。該控制器具有如下特點:1)采用兩片ADC 芯片ADS8586S 和一片DAC 芯片DAC8718,實現多通道、高精度的數據采集和電壓輸出;2)DSP 通過XINTF 接口與ADS8586S 的數據輸出引腳直接相連,通過SPI 接口與DAC8718的串行數據輸入輸出引腳相連,實現數據傳輸。

表1 主要性能指標
多通道互聯控制器電源設計框圖如圖2 所示,首先通過AC/DC 模塊電源LDE10-20B24 將220 V/50 Hz 的交流電壓轉換成24 V 的直流電壓,24 V 電壓通過Buck 變換器TPS54202 分別降壓為7 V 和5 V的直流電壓;24 V 作為可編程電流源LT3092 的輸入,產生4 mA 的恒流輸出給壓電式加速度傳感器供電。

圖2 電源設計框圖
1)7 V 一路經 過REF5050 產 生5 V 電壓作 為DAC8718 的基準電壓,一路經過穩壓器AMS1117 產生5 V 電壓給ADS8586S 供電。
2)5 V 一路經過Boost 變換器TPS65130 分別產生15 V 的正輸出和-15 V 的負輸出電壓,15 V 電壓經過穩壓器TPS7A49 產生12 V 電壓,-15 V 電壓經過TPS7A3401 產生-12 V 電 壓,分別 給DAC8718 的模擬電源AVDD和AVSS以及運放供電;一路通過穩壓器TPS74401 產生1.9 V 電壓給DSP28335 內核供電;一路通過穩壓器TPS74401 產生3.3 V 電壓,給ADS8586S、DAC8718 的數字部分以及DSP28335 的IO 端口供電。
在數據采集系統中,ADC的前級電路設計是非常重要的,需要對輸入信號進行濾波、限幅、放大或衰減等預處理操作[14-16]。信號處理電路如圖3所示,傳感器獲取振動信號后通過內置電路將其轉換為電壓信號Ui輸出,Ui首先經過電容C1隔直,去除Ui信號中的直流成分,得到交流信號U1。電阻R2、R3和電容C2、C3組成二階無源低通濾波器,用于濾除信號中的高頻分量,交流信號U1經過低通濾波后,得到頻率小于350 Hz的低頻信號U2。信號U2經過運放OP07 比例放大后得到輸出電壓Uo,Uo作為ADS8586S采樣的輸入電壓。
ADC 芯片選用TI 公司的ADS8586S,該芯片具有6 個同步采樣通道,分辨率為16 位,每通道的最大采樣速率為250 ks/s,內置了可編程增益放大器、輸入鉗位等模擬前端,提供單極性電源就可以實現雙極性電壓輸入,ADS8586S 與DSP 的硬件連接如圖4 所示。與DSP 之間的接口主要有片選CS、BUSY、復位RESET、輸入范圍選擇RANGE以及轉換開始CONVST等接口。

圖4 ADS8586S連接圖
將ADS8586S 芯片的PAR/SER 和BYTE SEL 引腳接地,選擇并行模式進行數據傳輸,DB0-DB15 引腳 與DSP28335 的D0-D15 相 連,DSP 通 過XINTF 總線讀數據;將REFSEL 引腳上拉,參考電壓選擇內部的2.5 V 帶隙基準源,2.5 V 電壓通過REFOUT 引腳輸出;將CONVSTA 和CONVSTB 連接在一起,保證所有通道同步采樣。
DAC 芯片選用TI 公司的DAC8718,該芯片具有8 個16 位的數模轉換通道,DAC8718 與DSP 的硬件連接如圖5 所示。與DSP 之間的接口主要有寄存器復位RST、清除CLR、數據鎖存LDAC、喚醒WAKEUP以及四線SPI 等接口。

圖5 DAC8718連接圖
將DAC8718 芯片SPI 接口的SDI、SDO、SCLK、CS 四個引腳與DSP28335 的GPIO54-57 相連,進行SPI 通信;REF5050 產生5 V 電壓給REFA 和REFB,作為基準電壓輸入;將USB/BTC 引腳上拉至IOVDD,DAC 輸入數字量采用二進制補碼格式;GPIO0-2 引腳上拉至IOVDD,避免IOVDD電源電流過大。
互聯控制器采用TI C2000 系列DSP 芯片TMS320F28335 作為控制核心,該芯片采用哈佛總線架構,內部集成了88 個GPIO、一個SPI、三個SCI 接口等外設資源,外部接口XINTF 可用于擴展SRAM、FLASH、ADC、DAC 模塊等。
DSP 通過XINTF 總線接口讀取ADC 芯片轉換后的數字量,進行數據處理后,將處理后的結果保存在片外存儲器中。通過SPI接口控制DAC8718輸出相應的模擬信號,通過SCI接口與上位機進行數據收發。
DSP28335 輸入時鐘信號由30 MHz 有源晶振提供,30 MHz 信號經DSP 內部鎖相環(Phase Locked Loop,PLL)模塊倍頻后,得到150 MHz 的系統頻率。DSP 軟件工作流程如圖6 所示。

圖6 軟件流程圖
DSP 主程序中首先對SCI、SPI、GPIO、XINTF 總線、中斷模塊等進行初始化操作。將SCI 波特率配置為9 600 b/s、8 個數據位、1 個停止位、偶校驗,SPI配置為主模式、SPICLK 為9.375 MHz、8 個數據位。然后配 置ADS8586S 和DAC8718,DSP 給ADC 芯 片RANGE 引腳輸入高電平,配置ADC 所有通道輸入電壓范圍為±10 V。DAC8718 初始化操作包括復位所有DAC 數據和控制寄存器,控制所有Vout引腳輸出0 V 并禁用SPI 通信等。DSP 接收到ADC 采樣結果后,對采樣的振動量信號進行數據處理。處理分析后,將數據保存在片外存儲器中,并上傳至上位機。最后,DSP 控制DAC8718 輸出相應的模擬信號驅動后級電路。
AD 采集程序通過定時器中斷服務程序實現,該程序定時200 μs 進行ADC 轉換操作,給CONVST 信號輸入上升沿脈沖后,ADC 啟動同步轉換。BUSY 信號為高電平時表示轉換正在進行,BUSY 變為低電平表示轉換結束。當DSP 檢測到BUSY 拉低后,利用標準的CS 和RD 信號通過XINTF 并行數據總線讀取所有ADC 通道的采樣結果,部分ADC 軟件代碼如下:
為了驗證所提硬件電路和軟件代碼設計的正確性,研制了一臺基于TMS320F28335 的多通道互聯控制器,并對互聯控制器進行了如下測試驗證。
利用信號發生器分別產生低于350 Hz 和高于350 Hz 的正弦波信號,作為模擬信號輸入。利用示波器實時測量濾波前后的信號波形,測量結果表明,高于350 Hz 的正弦波信號經過低通濾波后,信號幅值出現衰減,且頻率越高衰減越大;低于350 Hz 的正弦波信號經過低通濾波后,輸出波形與輸入一致,驗證了該文所設計低通濾波器的正確性。
將上述信號發生器產生的低于350 Hz 正弦波信號輸入給ADS8586S 進行模擬量采集,并改變輸入信號的幅值[17-18]。DSP28335 讀取采樣結果后,將其還原為模擬電壓值,與ADC 輸入端口的電壓測量值進行對比,部分對比結果見表2。

表2 ADC采樣對比結果
在DSP 軟件中將0~0xFFFF 范圍內的不同數值寫入DAC8718 輸入數據寄存器,理論輸出的模擬電壓值=輸入值的二進制補碼×15÷32 768,與測量的輸出電壓值進行對比,部分對比結果見表3。

表3 DAC輸出對比結果
從表2 和表3 可以看出,ADS8586S 采樣以及DAC8718 輸出功能均正常,且ADS8586S 所有通道的輸入電壓范圍、精度等指標以及DAC8718 所有通道的輸出電壓范圍、精度等指標均滿足表1 所示的主要性能指標要求,采集和輸出信號偏差均在5‰以內。與常見的數據采集和電壓輸出控制器相比,所設計互聯控制器輸入輸出通道數較多、采樣和輸出精度較高,驗證了所設計ADC和DAC電路的正確性。
利用設計的4 mA 恒流源驅動壓電式加速度傳感器可以正常采集實際的振動量信號,振動信號經過調理電路后,去除了直流成分,濾除了信號中的高頻分量,信號幅值比例放大了相應的倍數,驗證了該文所設計恒流激勵和信號調理電路的正確性。
針對當前一些互聯控制器輸入輸出通道數較少、數據采集和輸出精度較低的問題,該文設計了一種基于TMS320F28335 的多通道、高精度互聯控制器。該控制器利用恒流源驅動壓電式加速度傳感器采集振動量,振動信號經調理電路后輸入給兩片ADC 芯片ADS8586S 進行12 路模擬量采 集。DSP 通過XINTF 總線讀取ADC 芯片采樣轉換后的數字量,并對采樣的振動信號進行數據處理分析。處理分析后,DSP 通過SPI 接口控制一片DAC 芯片DAC8718輸出6 路模擬信號驅動后級電路。
對所設計的互聯控制器進行了測試驗證,測試結果表明,設計的4 mA 恒流源能驅動傳感器正常采集振動量信號,設計的低通濾波器對高于350 Hz 的信號濾波效果較好,ADS8586S 采樣、DAC8718 輸出、數據的存儲和收發等功能均正常,12 路ADC 采集通道的輸入電壓范圍為±5 V,6 路DAC 輸出通道的電壓范圍為±10 V,采集和輸出信號偏差均在5‰以內。與常見的數據采集和電壓輸出控制器相比,所設計互聯控制器輸入輸出通道數較多、采樣和輸出精度較高,驗證了設計方案的優越性。
所設計的多通道、高精度互聯控制器具有較強的工程應用價值,可以實際應用在各種數據采集和輸出系統中。