基于ADS1158和DSP的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機(jī)看文章
摘要:為了實(shí)現(xiàn)對信號的高精度測量,以ADS1158和dsPIC30f4011為基礎(chǔ)設(shè)計了16位高精度數(shù)據(jù)采集系統(tǒng)方案。給出了系統(tǒng)硬件結(jié)構(gòu)圖以及主要電路模塊的設(shè)計思路,并介紹了系統(tǒng)軟件的結(jié)構(gòu)與主要程序流程以及如何在此硬件基礎(chǔ)之上將系統(tǒng)快速升級為24住數(shù)據(jù)采集系統(tǒng)的方素。該數(shù)據(jù)采集系統(tǒng)可以廣泛的應(yīng)用于傳感器信號采集、工業(yè)控制等場合中,具有非常好的市場應(yīng)用前景,其設(shè)計也具有很強(qiáng)的參考價值。
關(guān)鍵詞:數(shù)據(jù)采集;ADS1158;dsPIC30F4011;傳感器信號
0 引言
ADS1158是美國TI公司生產(chǎn)的多通道(16單端或8差分)、高精度(16位)、高速(掃描速度為1.8~23.7 KSPS)的高性能模/數(shù)轉(zhuǎn)換芯片。ADS1258與ADS1158具有同樣的功能,更高的精度(24位),同樣的封裝和引腳定義,使得硬件系統(tǒng)能夠以最簡單的方式從16位升級到24位系統(tǒng)。Microchip公司的數(shù)字信號控制器dsPIC30F4011為16位DSP,具有DSP的高速運(yùn)算能力,保證了微處理器能夠?qū)DS1158的數(shù)據(jù)讀取進(jìn)行快速的響應(yīng),同時完成數(shù)據(jù)處理與通信功能。
本方案較為詳細(xì)的介紹了以這兩種芯片為基礎(chǔ)構(gòu)建的模擬量數(shù)據(jù)采集系統(tǒng),包括硬件組成原理和部分關(guān)鍵電路的設(shè)計,并對軟件設(shè)計上的難點(diǎn)進(jìn)行了闡述。
1 硬件設(shè)計
硬件設(shè)計方案如圖1所示,主要由信號輸入、電源、AD外圍電路、MCU外圍電路以及各部分電路之間的接口幾部分組成。本文將對硬件設(shè)計中的幾個關(guān)鍵電路設(shè)計進(jìn)行介紹。在設(shè)計的過程中除了考慮到模擬量采集功能的實(shí)現(xiàn)以外,還充分考慮了采集模塊的可靠性設(shè)計、保護(hù)電路等設(shè)計,增強(qiáng)其實(shí)際應(yīng)用能力。
1.1 信號輸入設(shè)計
為了提高數(shù)據(jù)的采集精度,本系統(tǒng)采用高精度和低溫漂的4.096 V電壓基準(zhǔn)芯片REF5040。同時為了擴(kuò)大輸入信號的范圍,在信號輸入端設(shè)計了電阻分壓。為了保證不同通道輸入信號的一致性,分壓電阻均采用0.1%以上精度的精密電阻。本方案采用2.7kΩ,1kΩ的精密電阻來組成分壓電路,實(shí)際電壓輸入范圍為0~15V,其電路如圖2所示。此外,在ADC輸入端加濾波電容,組成RC低通濾波器,可以有效的減小由過采樣和通道切換引入的開關(guān)噪聲。為了保護(hù)輸入通道,應(yīng)在外圍電路設(shè)計上下鉗位的保護(hù)電路,鉗位二極管采用肖特基二極管BAT54SWT1。
1.2 隔離設(shè)計
從提高模塊的可靠性角度來設(shè)計,應(yīng)該充分考慮到電氣信號隔離功能。包括模擬信號輸入隔離、電源隔離、通信接口隔離三部分,確保該模塊產(chǎn)生故障時,不會影響到通信總線、電源線路上其他電路的正常工作。
ADS1158與DSP的通信采用的是SPI串行通信,加上控制端口,共有五根輸入輸出線。本方案采用ADI公司的隔離芯片ADUM-1200,組成SPI的高速隔離輸入,如圖3所示。模擬信號的參考地與數(shù)字信號的參考地必須是隔離的,實(shí)際應(yīng)用中對模擬地和數(shù)字地分開布局,然后通過最短的連線(低阻抗)連在一起,再接到外部某一個低阻抗的系統(tǒng)接地平面上,構(gòu)成星形接地。
在本方案中,總線電源電壓為24 V,在模塊的電源設(shè)計上采用了24~5 V的隔離電源模塊。此外,本方案采用CAN總線通信,所以在CAN接口設(shè)計中采用了ZLG公司的隔離CAN通信模塊CTM8250T。
通過上述三處隔離設(shè)計,大大提高了A/D模塊的獨(dú)立性,增強(qiáng)了系統(tǒng)的可靠性。
1.3 ADS1158外圍電路設(shè)計
圖4中,詳細(xì)畫出了ADS1158的外圍接口電路,主要包括電源、參考電壓、晶振、通信接口、信號輸入、信號處理等部分。該芯片與DSP的接口均采用隔離電路,晶振部分也選擇了外部晶振,外加鎖相環(huán)電路。這里主要介紹兩個部分,分別是ADS1158的各種電源組成和信號處理電路部分。
ADS1158的電源由三組引腳組成,分別是模擬部分工作電源AVDD、AVSS;參考電壓VrefN,VrefP;數(shù)字信號部分電源DVDD、DGND。其中AVDD電壓是由數(shù)字電源DVDD經(jīng)過隔離而來。DVDD的主要作用是匹配數(shù)字信號接口的電壓信號,因?yàn)镾PI以及部分控制線端口均已隔離,所以該端口仍舊與AVDD相接。VrefP,VrefN為參考電壓,對模擬信號的采樣精度有至為重要的影響,所以該部分必須謹(jǐn)慎、認(rèn)真設(shè)計。
本方案電壓參考端采用的是0~4.096 V,搭建了如圖5所示的參考電壓電路。將5 V的電源轉(zhuǎn)化為4.096 V的參考電源,并經(jīng)過一系列的濾波電路設(shè)計,來構(gòu)造一個高精度、低噪聲的參考電源。也可以將AVDD,AVSS通過電源模塊轉(zhuǎn)化為±2.5 V電壓,輸入至VrefP,VretN引腳,來構(gòu)造雙極性輸入的應(yīng)用。
MUXOUTN,MUXOUTP與ADCINP,ADCINN之間為信號處理電路。在此處可以采用運(yùn)放對信號進(jìn)行放大、濾波處理。如果不需要對信號進(jìn)行處理,此處可以不接任何電路,將信號直連即可。
1.4 硬件設(shè)計中需要注意的地方
在硬件設(shè)計的過程中,要充分考慮到電容的應(yīng)用,應(yīng)該按照數(shù)據(jù)手冊的推薦要求在各位置放置大小合適的膽電容或者瓷片電容,包括電源、晶振等部分。
ADS1158如果有沒有使用到的引腳,應(yīng)該讓其處于一個確定的狀態(tài),或拉高,或拉低,不能讓其懸空。本方案中懸空的引腳均通過電阻拉低。
背部裸露的散熱焊盤應(yīng)該與AVSS相連,并且焊接在電路板上。
1.5 24位A/D采樣設(shè)計
采用ADS1158來構(gòu)建模擬量采樣電路的一個最大的優(yōu)點(diǎn)就是可以從16位數(shù)據(jù)采集系統(tǒng)快速升級到24位數(shù)據(jù)采集系統(tǒng),只需要將ADS1158更換為ADS1258,即可實(shí)現(xiàn)系統(tǒng)硬件升級。這兩款新品具有同樣的封裝,同樣的引腳定義,同樣的外圍電路設(shè)計,對于設(shè)計者來說,可以節(jié)約很多的精力和時間。
2 軟件設(shè)計
本方案采用的是Microchip公司的數(shù)字信號控制器dsPIC30F4011,主要利用其強(qiáng)大的計算能力和高速的指令周期,保證控制器能夠快速地響應(yīng)ADS1158的數(shù)據(jù)請求。軟件分為DSP初始化、ADS1158初始化、數(shù)據(jù)讀取、數(shù)據(jù)發(fā)送四部分。
2.1 軟件初始化
定義SystemInitialize()初始化函數(shù),主要工作完成對DSP的定時器、I/O口輸入輸出、SPI、CAN、外部中斷等功能的初始化。定義了ADS1158 Initialize()初始化函數(shù),通過SPI傳輸數(shù)據(jù),完成對ADS1158的初始化。其寄存器地址與值的設(shè)置見表1。
2.2 數(shù)據(jù)讀取與處理
完成上述設(shè)置后,ADS1158即會進(jìn)入自動采集模式,以約100 Hz(16個通道)的頻率進(jìn)行掃描,并且每個通道得到采樣值后會發(fā)送中斷信號至dsPIC30F4011的外部中斷,dsPIC30F4011對外部中斷信號進(jìn)行響應(yīng),讀取當(dāng)前通道采樣值。
根據(jù)ADS1158的數(shù)據(jù)組成定義,一個結(jié)果值由三個字節(jié)組成,第一個字節(jié)為通道號信息,第二、三個字節(jié)由16位的數(shù)據(jù)組成(如果是ADS12 58的話,數(shù)據(jù)由三個字節(jié)組成)。
對三個數(shù)據(jù)進(jìn)行解析,可以得到當(dāng)前通道的采樣值。其程序流程如圖6所示。
以上數(shù)據(jù)讀取都是通過SPI實(shí)現(xiàn)的。在程序結(jié)構(gòu)的設(shè)計中,建議數(shù)據(jù)讀取和數(shù)據(jù)解析以及數(shù)據(jù)換算不要放在外部中斷函數(shù)里面,在中斷函數(shù)里置標(biāo)志位,返回主程序處理。dsPIC30F4011的指令周期以及強(qiáng)大的計算能力,足以支持所有通道的數(shù)據(jù)讀取以及數(shù)據(jù)處理功能。
2.3 通信功能
本方案采用CAN總線通信。與一般的通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時性和靈活性。系統(tǒng)自動以100 Hz的頻率向外發(fā)送數(shù)據(jù),為了能夠獲得高精度的100 Hz,同時不干擾其他程序韻正常運(yùn)行,下位機(jī)采用了設(shè)定系統(tǒng)時基的機(jī)制。下位機(jī)軟件在系統(tǒng)內(nèi)部定義了一個1 ms的時基(選擇定時器1為1ms溢出產(chǎn)生中斷),還有一個發(fā)送時基累加寄存器。
在時基(定時器1)中斷函數(shù)中,對發(fā)送時基累加寄存器加1,并對該寄存器進(jìn)行判斷,如果大于9,則清零寄存器,置標(biāo)志位,回主程序執(zhí)行發(fā)送數(shù)據(jù)函數(shù)。此外,可以定義很多其他功能的時基累加寄存器,通過判斷累加器的值,來實(shí)現(xiàn)程序的步進(jìn)運(yùn)轉(zhuǎn)。
3 結(jié)論
本方案構(gòu)建的數(shù)據(jù)采集系統(tǒng)具有很強(qiáng)的實(shí)際應(yīng)用價值,文中介紹到的硬件組成以及關(guān)鍵電路的設(shè)計和軟件設(shè)計思路等,對開發(fā)者都具有很強(qiáng)的參考意義。