以上兩種方法采用的ADC的轉(zhuǎn)換速度通常在10μs甚至5μs以下,對于工頻電參數(shù)測量實(shí)際上有些浪費(fèi),在ADC轉(zhuǎn)換速度能夠滿足采樣頻率和數(shù)值處理要求的條件下,分辨率、線性度、抗干擾能力及量化噪聲等指標(biāo)對于測量精度顯得尤為重要。本文設(shè)計(jì)采用一種基于6通道獨(dú)立采樣的16位串行Σ-ΔA/D轉(zhuǎn)換器AD73360L,構(gòu)成多路相互關(guān)聯(lián)信號同時(shí)、同步采樣的數(shù)據(jù)采集系統(tǒng),并且具有跟蹤輸入信號頻率變化,抗混疊濾波的功能。內(nèi)部6個(gè)通道可同時(shí)采樣,無須CPU干預(yù),從而有效地減少了由于采樣時(shí)間不同而產(chǎn)生的相位誤差,非常適合三相電壓、電流的采樣,且高達(dá)64kHz的采樣率完全能夠滿足電力參數(shù)測量要求。AD73360L還能多片級聯(lián)使用,使模擬量輸入通道的最大數(shù)目方便地?cái)U(kuò)展至48路。另外,AD73360L還有內(nèi)置的程控可變增益放大器, 增益可在0~38dB之間選擇,因而它既適合于大信號的應(yīng)用,也適合于小信號的應(yīng)用[1]。
本文詳細(xì)介紹AD73360L與TMS320LF2407 DSP組成的同步采集系統(tǒng)的工作原理及不同結(jié)構(gòu)的同步串行口的接口電路設(shè)計(jì)方法。
1 同步數(shù)據(jù)采集系統(tǒng)硬件結(jié)構(gòu)與工作原理
同步數(shù)據(jù)采集系統(tǒng)由三部分組成,其結(jié)構(gòu)框圖如圖1所示。第一部分由抗混疊濾波電路和Σ-△A/D轉(zhuǎn)換器AD73360L組成,6路輸入信號經(jīng)過RC抗混疊濾波處理后進(jìn)入6通道Σ-△A/D轉(zhuǎn)換器。第二部分是由低通濾波器、過零比較器和倍頻鎖相電路組成的同步采樣信號發(fā)生電路。它產(chǎn)生N倍于測量信號頻率的方波信號作為采樣信號,控制A/D轉(zhuǎn)換器同步采樣和數(shù)字濾波。第三部分由DSP、SRAM、鍵盤、顯示和光隔控制等電路組成,實(shí)現(xiàn)對A/D轉(zhuǎn)換結(jié)果的高速讀取、數(shù)據(jù)處理、存儲、顯示和上傳數(shù)據(jù)給上位機(jī)等。
1.1 Σ-ΔADC內(nèi)部結(jié)構(gòu)與工作原理
AD73360L的每個(gè)獨(dú)立的A/D轉(zhuǎn)換通道的內(nèi)部結(jié)構(gòu)如圖2所示。經(jīng)程控放大器調(diào)理后的輸入信號Vin與反饋信號Vf相減后的增量再經(jīng)采樣保持器保持后輸入A/D轉(zhuǎn)換器,低分辨率A/D轉(zhuǎn)換器以Lfs=DMCLK/8的高過采樣率對保持后的增量進(jìn)行高速采樣,16位累加器對低分辨率采樣值累加求和后得到高分辨率的Vo,再由D/A轉(zhuǎn)換器轉(zhuǎn)換成16位模擬量Vf反饋到減法器,從而形成閉環(huán)負(fù)反饋的Σ-ΔA/D調(diào)制器。通過負(fù)反饋環(huán)路的不斷調(diào)整使Vo(N)=Vo(N-1)+[Vin-Vf (N-1)],即Vo(N)=Vin。由于A/D轉(zhuǎn)換器在量化過程中存在量化誤差,但通過閉環(huán)負(fù)反饋環(huán)路的誤差補(bǔ)足性能和高速重復(fù)取樣方法,把量化噪聲延續(xù)到Lfs/2的整個(gè)頻帶范圍內(nèi),并將它推到正常采樣率以外的高頻段上[2]。
抗混疊數(shù)字濾波器對2K個(gè)高速采樣值Vo進(jìn)行數(shù)字均值滑動濾波(抽取系數(shù)K=高過采樣率/采樣率),濾除二分之一采樣頻率以上的高頻噪音和輸入信號的高次諧波。濾波特性的詳細(xì)描述參見文獻(xiàn)[1]。經(jīng)濾波后的采樣值按K:1抽取作為輸出,降低了A/D轉(zhuǎn)換通道的采樣率,從而降低了同步串行口的速度要求。A/D轉(zhuǎn)換通道的采樣頻率fs=Lfs/K。時(shí)鐘頻率與高過采樣率、采樣率和抽取系數(shù)K均存在整倍數(shù)關(guān)系,提供了控制Σ-ΔADC實(shí)現(xiàn)同步采集、跟蹤濾波的條件。
1.2 同步采樣的實(shí)現(xiàn)方法
當(dāng)采樣速率是被測信號頻率的整倍數(shù),采樣點(diǎn)包含整個(gè)周期,且滿足采樣定理時(shí),用DFT頻譜分析,頻域不會發(fā)生泄漏,可完全消除誤差[2]。因此采用硬件鎖相環(huán)電路產(chǎn)生整倍于被測信號頻率的方波來控制Σ-ΔA/D轉(zhuǎn)換器實(shí)現(xiàn)同步整周期采樣。倍頻鎖相電路如圖3所示。
為使鎖相環(huán)準(zhǔn)確鎖定在被測信號(ui或ii)的基波頻率上,輸入電壓信號經(jīng)3階有源低通濾波器濾除60Hz以上高次諧波,經(jīng)過零比較器輸出對稱方波,作為高速鎖相環(huán)的輸入信號fi。fi同時(shí)也用作DSP測量信號頻率的信號源。
被測信號頻率fi與反饋信號fo/N進(jìn)行相位比較,其相位差信號經(jīng)過低通濾波后,控制壓頻振蕩器輸出頻率fo發(fā)生相應(yīng)的變化,再經(jīng)N分頻后反饋到相位比較器,通過負(fù)反饋環(huán)路的快速調(diào)整,最終達(dá)到環(huán)路鎖定。鎖定時(shí)fo/N與fi的頻率之差趨于零,即fo=Nfi。將鎖相環(huán)產(chǎn)生的倍頻信號fo作為Σ-ΔA/D轉(zhuǎn)換器的主時(shí)鐘信號,可以控制Σ-ΔA/D轉(zhuǎn)換器實(shí)現(xiàn)同步數(shù)據(jù)采集[3-4]。
被測50Hz信號每周期采樣1 024次,則采樣率fs為51.2kHz,壓控振蕩器中心頻率fo=fs×256=13.1 072(MHz)。壓控振蕩器上、下限頻率設(shè)計(jì)為16MHz和10MHz,當(dāng)被測信號在60~40Hz范圍變化時(shí),可以實(shí)現(xiàn)同步數(shù)據(jù)采集。同步采樣率可通過編程選擇每周期采樣1 024、512、256和128次。
鎖相環(huán)電路由高速鎖相環(huán)芯片74HC4046A和分頻器CD4060組成,產(chǎn)生AD73360L采集觸發(fā)信號,74HC4046A壓頻振蕩器最高輸出頻率可達(dá)24MHz。
1.3 跟蹤濾波的實(shí)現(xiàn)方法
由于Σ-ΔA/D轉(zhuǎn)換器實(shí)現(xiàn)同步采集,采樣頻率始終是被測信號頻率的整倍數(shù)。由Σ-ΔA/D轉(zhuǎn)換器的原理可知,抗混疊數(shù)字濾波器對2K個(gè)高速采樣值Vo進(jìn)行數(shù)字均值滑動濾波,濾除被測信號中二分之一采樣頻率以上的高次諧波。因此,抗混疊數(shù)字濾波器的截止頻率始終跟蹤信號頻率變化,使它具有良好的抗混疊跟蹤濾波功能。
1.4 模擬輸入前端電路設(shè)計(jì)
由于采用Σ-Δ A/D轉(zhuǎn)換原理,具有良好的內(nèi)置抗混疊性能,所以對模擬前端濾波器的要求不高,用一階RC低通濾波器就能滿足要求[5],從而省去由開關(guān)電容濾波器和復(fù)雜外圍控制電路組成的抗混疊跟蹤濾波電路,節(jié)省了成本。為了提高系統(tǒng)抗干擾能力,模擬輸入通道采用差動輸入方式,具體電路如圖4所示。輸入信號通過C1和C2耦合到ADC的模擬輸入端。R1和C3、R2和C4構(gòu)成一階低通抗混疊濾波器。圖中REFOUT是片內(nèi)基準(zhǔn)電壓輸出,通過R3和R4為輸入端引入共模偏置電壓,可根據(jù)需要配置為1.5V或2.5V。該電路可以把50Hz的交流信號直接耦合到AD73360L的模擬輸入端。
1.5 頻率測量方法
電壓或電流信號經(jīng)濾波整形后輸入到鎖相環(huán)的方波信號fi,也同時(shí)輸入到DSP的CPI捕獲輸入端,利用DSP的捕獲功能,檢測兩個(gè)相鄰脈沖上升沿的時(shí)間間隔,計(jì)算出信號的頻率。為提高測量精度,每次檢測出N個(gè)相鄰上升沿的時(shí)間間隔,求平均得信號頻率。
2 TMS320LF2407與AD73360L接口電路設(shè)計(jì)
2.1 AD73360L性能簡介
AD73360L是ADI公司推出的6獨(dú)立通道的16位串行可編程A/D轉(zhuǎn)換器。每個(gè)A/D轉(zhuǎn)換通道由程控放大器、高過采樣率的Σ-ΔA/D調(diào)制器、抽取數(shù)字濾波器等組成。具有設(shè)計(jì)簡便、結(jié)構(gòu)緊湊、工作穩(wěn)定和可以方便地在幾種采樣率之間選擇等優(yōu)點(diǎn)。與并行接口相比,采用串行接口的硬件連接線大為減少,這樣不僅可以減少印制電路板的面積,還可以減少電磁干擾,從而使系統(tǒng)更加穩(wěn)定地工作。在不影響系統(tǒng)工作速度的條件下,在系統(tǒng)設(shè)計(jì)中利用串行接口代替并行接口不失為一種很好的設(shè)計(jì)方法。
2.2 AD73360L同步串行口
AD73360L的16位同步串行口(SPORT)有輸入、輸出兩個(gè)移位寄存器,它用6條通訊總線實(shí)現(xiàn)發(fā)送采樣值和接收控制信息的雙向同步通訊。它只能工作在主控方式。AD73360L的SPORT有三種工作模式:編程模式、數(shù)據(jù)模式和混合模式。
在編程模式下,AD73360L首先在SCLK的下降沿檢測輸入幀同步SDIFS,當(dāng)檢測到SDIFS高電平后,從下個(gè)周期開始,在SCLK的下降沿將SDI線上的命令控制字的1位移入AD73360L的移位寄存器,連續(xù)移位16次,一個(gè)命令控制字接收完畢,存入對應(yīng)的寄存器中。然后重復(fù)上述過程,直到接收到新的工作模式控制字后,才能轉(zhuǎn)入新的工作模式。
在數(shù)據(jù)模式下,只能輸出采樣值。當(dāng)AD73360L完成一次數(shù)據(jù)采集后,首先在SCLK的上升沿向SDOFS發(fā)送一個(gè)時(shí)鐘周期高電平的輸出幀同步信號,將一個(gè)采樣值裝入移位寄存器,然后從下個(gè)周期開始,在SCLK的上升沿將移位寄存器中的采樣值移位到SDO線上,連續(xù)移位16次,一個(gè)采樣值發(fā)送完畢,重復(fù)上述過程,直到6個(gè)采樣值發(fā)送完畢。當(dāng)下次AD轉(zhuǎn)換完成后,重復(fù)上述過程,重新發(fā)送一組采樣數(shù)據(jù)。只有復(fù)位AD73360L,才能終止數(shù)據(jù)模式的輸出過程。
2.3 TMS320LF2407同步串行口
TMS320LF2407 DSP的16位同步串行口SPI可工作于主動或從動兩種工作方式[6]。它只有一個(gè)移位寄存器,僅含有4條通訊總線:SPISOMI 從動輸出/主動輸入數(shù)據(jù)線;SPISIMO 從動輸入/主動輸出數(shù)據(jù)線;SPICLK 串行同步時(shí)鐘;SPISTE 從動方式SPI端口使能,由主控機(jī)輸入,低電平有效。當(dāng)SPI接口有多個(gè)數(shù)據(jù)發(fā)送和接收時(shí),在SPICLK控制下,數(shù)據(jù)是連續(xù)傳輸,各數(shù)據(jù)間沒有間隔,除非SPISTE無效,才能停止數(shù)據(jù)的傳輸。
2.4 TMS320LF2407與AD73360L接口電路
通過以上分析可知,它們之間的通訊方式存在以下三個(gè)不匹配的地方。
(1)AD73360L發(fā)送或接收數(shù)據(jù)是根據(jù)幀同步信號實(shí)現(xiàn)數(shù)據(jù)起始位的識別,在時(shí)鐘SCLK的控制下,通過移位方式進(jìn)行數(shù)據(jù)通訊。TMS320LF2407僅提供4條通訊總線,輸出數(shù)據(jù)時(shí),不能提供輸出幀同步信號,因而造成接收命令錯(cuò)誤;接收數(shù)據(jù)時(shí),因不能識別AD73360L發(fā)出的輸出幀同步信號,而造成接收數(shù)據(jù)錯(cuò)位。
(2)AD73360L發(fā)送或接收數(shù)據(jù),在兩個(gè)數(shù)據(jù)間至少存在一個(gè)時(shí)鐘周期的時(shí)間間隔,TMS320LF2407則是連續(xù)傳輸,在兩個(gè)數(shù)據(jù)間沒有時(shí)間間隔。
(3)AD73360L只能工作在主動方式,不能向DSP的SPI端口提供使能控制信號SPISTE,AD73360L不能啟動TMS320LF2407接收或發(fā)送數(shù)據(jù)。
因此,TMS320LF2406與AD73360L的兩個(gè)同步串行接口不能直接匹配。為此設(shè)計(jì)了如圖5所示的通訊接口電路。通過軟硬件結(jié)合的方法,可以實(shí)現(xiàn)它們之間的雙向數(shù)據(jù)通訊。圖中AD73360L的兩個(gè)幀同步信號連接成幀同步返回環(huán)方式,即FDOFS輸出幀同步作為SDIFS輸入幀同步,同時(shí)也連接到DSP的XINT1的中斷輸入端,作為DSP的發(fā)送或接收數(shù)據(jù)的同步信號;ADC的SCLK作為DSP的移位時(shí)鐘信號;ADC的數(shù)據(jù)輸出SDO作為DSP的數(shù)據(jù)輸入SPISIMO;DSP的數(shù)據(jù)輸出SPISOMI作為ADC的數(shù)據(jù)輸入SDI;DSP的IOPE1輸出作為SPI端口使能SPISTE輸入;DSP的IOPE2輸出控制AD73360L的復(fù)位和片選使能。
3 通訊軟件設(shè)計(jì)
首先,TMS320LF2407 DSP的IOPE1輸出端置1,禁止SPI接口通訊,DSP的IOPE2輸出端置0,使AD73360L復(fù)位;然后,初始化DSP的SPI通訊接口,設(shè)置SPI為從動工作方式和數(shù)據(jù)發(fā)送方式。當(dāng)AD73360L可靠復(fù)位后,全部控制寄存器復(fù)位到零,默認(rèn)最低的SCLK速率( DMCLK/8)和采樣率(DMCLK/2048),它確保與低速微處理器的可靠通訊。當(dāng)DSP將IOPE2輸出端置1時(shí),AD73360L的復(fù)位過程結(jié)束并使片選CS使能。AD73360L復(fù)位之后,默認(rèn)工作在編程模式,便于對AD73360L進(jìn)行初始化,并且在每個(gè)采樣周期輸出一個(gè)幀同步SDOFS。它既作為AD73360L的輸入幀同步信號,同時(shí)也作為DSP的XINT1的輸入。在對AD73360L進(jìn)行初始化階段,DSP查詢XINT1的狀態(tài)。當(dāng)檢測到XINT1引腳的幀同步脈沖的上升沿時(shí),將一個(gè)16位控制字發(fā)送至緩沖區(qū);當(dāng)DSP檢測到XINT1的下降沿時(shí),把IOPE1置0,使SPISTE有效,允許發(fā)送數(shù)據(jù)。在SCLK的上升沿將數(shù)據(jù)移位到發(fā)送數(shù)據(jù)線SPISOMI上,然后在SCLK的下降沿,移入AD73360L內(nèi)部的輸入移位寄存器。在發(fā)送數(shù)據(jù)時(shí),DSP始終查詢SPI的狀態(tài),當(dāng)DSP查詢到一個(gè)控制字發(fā)送完畢時(shí),立即把IOPE1置1,則SPISTE無效,禁止繼續(xù)發(fā)送。然后,DSP重新查詢XINT1引腳的幀同步脈沖,重復(fù)上述的發(fā)送控制命令字的過程。同時(shí),AD73360L將接收的控制字存入相應(yīng)的控制寄存器中。當(dāng)最后一個(gè)控制字(數(shù)據(jù)工作模式字)輸出完畢時(shí),AD73360L初始化過程結(jié)束,以后對其編程將無效,除非重新復(fù)位AD73360L。而DSP則重新初始化SPI接口,把它設(shè)置為輸入方式,并允許SPI接收中斷,允許XINT1下降沿中斷。每當(dāng)一次A/D轉(zhuǎn)換完成后,AD73360L按規(guī)定時(shí)序連續(xù)發(fā)送6個(gè)采樣值和對應(yīng)的6個(gè)同步脈沖,AD73360L的每個(gè)輸出同步脈沖的下降沿(即SCLK的上升沿),XINT1都產(chǎn)生一次中斷,中斷服務(wù)程序中把IOPE1置0使SPISTE有效,允許接收數(shù)據(jù)。在SCLK的每個(gè)下降沿,將AD73360L輸出的采樣值移入DSP內(nèi)部的移位寄存器中。每當(dāng)DSP接收一個(gè)16位采樣值后,SPI產(chǎn)生中斷,SPI中斷程序保存采樣值并把IOPE1置1使SPISTE無效,禁止接收數(shù)據(jù)。接口通訊軟件流程如圖6所示。
本文提出的由TMS320LF2407和AD73360L構(gòu)成的數(shù)據(jù)采集與處理系統(tǒng),將硬件鎖相環(huán)技術(shù)應(yīng)用于16位串行Σ-ΔA/D轉(zhuǎn)換器,可對多路關(guān)聯(lián)信號同時(shí)、同步采樣和抗混疊跟蹤濾波,提高了系統(tǒng)的測量精度和抗干擾能力,且電路結(jié)構(gòu)簡單、成本低廉。文中還討論了不同結(jié)構(gòu)的同步串行口接口電路的設(shè)計(jì)方法。給出的同步采集系統(tǒng)設(shè)計(jì)方案已應(yīng)用于高精度三相電能表現(xiàn)場校驗(yàn)儀和分布式變電站高壓設(shè)備絕緣在線監(jiān)測裝置中,取得了良好的效果。