楊志芳,胡夢(mèng)蝶,陳玨,王磊
武漢工程大學(xué)電氣信息學(xué)院,湖北武漢430205
基于SoCFPGA同步數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
楊志芳,胡夢(mèng)蝶,陳玨,王磊
武漢工程大學(xué)電氣信息學(xué)院,湖北武漢430205
為實(shí)現(xiàn)電能質(zhì)量分析系統(tǒng)多通道數(shù)據(jù)同步采集的功能,設(shè)計(jì)一種基于SoCFPGA的同步數(shù)據(jù)采集系統(tǒng),采用Altera SoCFPGA為核心硬件平臺(tái),結(jié)合ADS8364模數(shù)轉(zhuǎn)換芯片構(gòu)建了6通道數(shù)據(jù)同步采集系統(tǒng).首先,采用軟硬件協(xié)同設(shè)計(jì)方法,使用VHDL對(duì)AD轉(zhuǎn)換控制過程的邏輯進(jìn)行描述,然后利用FFT核進(jìn)行數(shù)據(jù)處理,對(duì)測(cè)試數(shù)據(jù)的幅頻特性進(jìn)行顯示,為后續(xù)的諧波分析做準(zhǔn)備.仿真結(jié)果表明:SoCFPGA實(shí)現(xiàn)了對(duì)ADS8364的控制以及512點(diǎn)FFT運(yùn)算.系統(tǒng)使得數(shù)據(jù)采集硬件結(jié)構(gòu)更加簡(jiǎn)單,集成化程度更高,縮短了系統(tǒng)開發(fā)周期,能夠滿足數(shù)據(jù)同步采集的實(shí)際需求.
同步數(shù)據(jù)采集;SoCFPGA;ADS8364;軟件仿真
電能是當(dāng)代社會(huì)最為依賴的能源,電能的應(yīng)用深入到生活中的方方面面,由于電力電子技術(shù)的飛速發(fā)展,在現(xiàn)代社會(huì)中,一些大功率變流、變頻裝置等在電力系統(tǒng)中被廣泛地應(yīng)用,變頻、變流這些裝置對(duì)電網(wǎng)造成非常嚴(yán)重的諧波污染,導(dǎo)致電能質(zhì)量下降,進(jìn)而會(huì)影響到一些高精度自動(dòng)化儀表的工作特性.因此,開展對(duì)電能質(zhì)量的監(jiān)測(cè)十分重要,同時(shí)電能質(zhì)量問題也是影響電力系統(tǒng)運(yùn)行和國(guó)民經(jīng)濟(jì)發(fā)展的關(guān)鍵因素.多通道數(shù)據(jù)采集作為一種計(jì)算機(jī)從外部實(shí)時(shí)獲取并處理信息的方法,其重要性不言而喻[1].現(xiàn)有的數(shù)據(jù)采集方案往往以DSP或單片機(jī)作為控制器,用來控制存儲(chǔ)器、ADC(模/數(shù)轉(zhuǎn)換器)和其他的外圍電路的工作.但是由于單片機(jī)受到自身的指令周期以及處理速度的限制,還未能達(dá)到多通道高速數(shù)據(jù)采集系統(tǒng)的要求,DSP相對(duì)于單片機(jī),能夠?qū)崿F(xiàn)更高速的數(shù)據(jù)采集,但是在速度提高的同時(shí),會(huì)使得系統(tǒng)的成本相應(yīng)提高.DSP和單片機(jī)的各種功能要依靠軟件的運(yùn)行來實(shí)現(xiàn),且執(zhí)行的效率和速度往往不高,軟件的運(yùn)行時(shí)間占用了很大一部分的采樣時(shí)間[2].在現(xiàn)有的研究基礎(chǔ)上,設(shè)計(jì)了一種基于SoCFPGA的同步數(shù)據(jù)采集系統(tǒng),F(xiàn)PGA在高速數(shù)據(jù)采集方面比單片機(jī)和DSP要更有優(yōu)勢(shì),其執(zhí)行速度快,內(nèi)部的延時(shí)小,控制邏輯均由硬件編程語言來實(shí)現(xiàn),片內(nèi)時(shí)鐘的頻率高,開發(fā)效率高.通過仿真驗(yàn)證了數(shù)據(jù)采集系統(tǒng)的可行性,可以應(yīng)用于高速實(shí)時(shí)數(shù)據(jù)采集等領(lǐng)域.
為了滿足質(zhì)量檢測(cè)的需要,對(duì)電能質(zhì)量的關(guān)鍵指標(biāo)加以研究,以Altera公司的SoCFPGA芯片為開發(fā)平臺(tái),進(jìn)行硬件和軟件的設(shè)計(jì),實(shí)現(xiàn)電能質(zhì)量分析儀的研制.系統(tǒng)中電壓、電流互感器用來采集電網(wǎng)三相電壓和三相電流數(shù)據(jù),經(jīng)過調(diào)理電路后輸送到AD芯片進(jìn)行模數(shù)轉(zhuǎn)換.SoCFPGA的FPGA子系統(tǒng)主要用來控制AD芯片進(jìn)行模數(shù)轉(zhuǎn)換并對(duì)AD轉(zhuǎn)換結(jié)果進(jìn)行FFT運(yùn)算,將AD轉(zhuǎn)換結(jié)果和FFT分析結(jié)果送入SoCFPGA的ARM子系統(tǒng),電能質(zhì)量的相關(guān)參數(shù):三相電壓電流有效值,功率因數(shù),三相電壓電流不平衡度等的計(jì)算及電壓瞬變、閃變、諧波分析均在SoCFPGA的ARM子系統(tǒng)中完成[3-4].系統(tǒng)可以對(duì)測(cè)量數(shù)據(jù)與分析結(jié)果進(jìn)行本地存儲(chǔ).系統(tǒng)的測(cè)量結(jié)果利用MTL2觸摸屏可進(jìn)行本地顯示及回放.通過配備的以太網(wǎng)接口,與遠(yuǎn)程服務(wù)器進(jìn)行通訊,可以實(shí)現(xiàn)數(shù)據(jù)的上傳與遠(yuǎn)端保存.本文主要研究的是對(duì)獲取的三相電壓電流進(jìn)行AD轉(zhuǎn)換以及FFT部分,整體的系統(tǒng)原理框圖如圖1所示.
圖1 系統(tǒng)原理框圖Fig.1System principle block diagram
3.1 SoCFPGA介紹
在數(shù)據(jù)采集部分中將被測(cè)量的電壓、電流數(shù)據(jù)先分別通過電壓、電流互感器進(jìn)行采集,然后經(jīng)過信號(hào)調(diào)理電路如差分信號(hào)放大等將數(shù)據(jù)送到AD芯片中進(jìn)行模/數(shù)轉(zhuǎn)換.對(duì)于數(shù)據(jù)采集部分,必須配以一個(gè)高速、高精度的CPU(本文中為SoCFPGA的FPGA子模塊),使其具備實(shí)時(shí)事務(wù)處理能力和數(shù)據(jù)處理能力[5],本系統(tǒng)中用到的SoCFPGA器件在同一個(gè)器件中同時(shí)集成了處理器和FPGA體系結(jié)構(gòu),將兩種技術(shù)合并起來,系統(tǒng)具有更高的集成度,更低的功耗,節(jié)省了電路板面積,其中的雙核ARM Cortex-A9處理器子系統(tǒng)與FPGA子系統(tǒng)之間通信的帶寬大大增加.FPGA子系統(tǒng)能夠高速完成數(shù)字信號(hào)處理算法及FFT運(yùn)算、電壓閃變計(jì)算等任務(wù),對(duì)于6路的LVDS信號(hào)采集、調(diào)理、濾波、整合可以用FPGA子系統(tǒng)進(jìn)行并行處理,大大加速了系統(tǒng)的進(jìn)程[6].通過大吞吐量數(shù)據(jù)通路(AXI),實(shí)現(xiàn)ARM Cortex-A9 MPCore處理器系統(tǒng)和FPGA的互聯(lián),峰值帶寬超過100 Gbps,保證了數(shù)據(jù)傳輸?shù)倪B續(xù)性,與其他應(yīng)用處理器相比,功耗大大降低,提高了系統(tǒng)的性能[7].
3.2 ADS8364芯片簡(jiǎn)介
本系統(tǒng)選用的A/D轉(zhuǎn)換芯片型號(hào)為TI公司的ADS8364芯片.ADS8364是TI公司生產(chǎn)的一款6通道同步采樣的模數(shù)轉(zhuǎn)換器,具有高速、低功耗的特點(diǎn),采用的是+5 V供電,而且?guī)в?0 dB共模抑制的全差分輸入通道、6個(gè)獨(dú)立的模數(shù)轉(zhuǎn)換器,符合本文多路數(shù)據(jù)采集系統(tǒng)的需要.ADS8364對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換的結(jié)果是16位,由BYTE、ADD和地址線A2、A1、A0的組合控制來分別設(shè)置為直接讀取方式、循環(huán)讀取方式以及FIFO方式[8].模擬與數(shù)字邏輯電源均采用+5 V供電,數(shù)字接口緩沖電源采用3 V~5 V,使其能夠方便地與FPGA進(jìn)行接口設(shè)計(jì). ADS8364工作時(shí)序圖如圖2所示.
圖2 ADS8364工作時(shí)序圖Fig.2Operational timing chart of ADS8364
3.3 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)原理
將ADS8364與SoCFPGA的FPGA子系統(tǒng)相連,AD轉(zhuǎn)換的控制信號(hào)由FPGA子系統(tǒng)給出,同時(shí),ADS8364工作所需的時(shí)鐘信號(hào)也由FPGA給出,這樣可以靈活地改變時(shí)鐘速率,以便在不同的速率下進(jìn)行調(diào)整,便于FPGA做整體的時(shí)序控制.在模/數(shù)轉(zhuǎn)換過程中,F(xiàn)PGA子系統(tǒng)通過對(duì)啟動(dòng)轉(zhuǎn)換控制引腳,時(shí)鐘引腳等的控制來進(jìn)行AD轉(zhuǎn)換.當(dāng)ADS8364的HOLDX保持至少20 ns的低電平時(shí),開始進(jìn)行AD轉(zhuǎn)換.當(dāng)轉(zhuǎn)換結(jié)束后,轉(zhuǎn)換結(jié)果將被存入輸出寄存器,在ADS8364芯片的------EOC引腳會(huì)產(chǎn)生一個(gè)低電平信號(hào),此低電平信號(hào)會(huì)觸發(fā)FPGA選通AD芯片的片選信號(hào),同時(shí)訪問AD模塊預(yù)先設(shè)定的地址空間,并讀取AD轉(zhuǎn)換后寄存器里的數(shù)據(jù)[9-12].將RD和CS引腳設(shè)置為低電平可以讓數(shù)據(jù)通過并行輸出總線讀出.在讀取數(shù)據(jù)后,F(xiàn)PGA在下一次數(shù)據(jù)采集過程之前,完成對(duì)數(shù)據(jù)的處理.數(shù)據(jù)采集模塊的硬件結(jié)構(gòu)圖如圖3所示.
圖3 數(shù)據(jù)采集模塊硬件結(jié)構(gòu)圖Fig.3Hardware structure diagram of data acquisition module
4.1 系統(tǒng)軟件設(shè)計(jì)
在Altera公司的Quartus II13.0軟件平臺(tái)下,使用VHDL硬件描述語言進(jìn)行邏輯描述,根據(jù)ADS8364的工作原理及工作時(shí)序分析,把整個(gè)工作流程分為START、READ0、CONVERT、READ1、 READ2、READ3六個(gè)工作狀態(tài),各個(gè)狀態(tài)之間的轉(zhuǎn)換關(guān)系及在EDA工具中進(jìn)行編譯與仿真的ADS8364控制時(shí)序圖分別如圖4、圖5所示.對(duì)比圖5和圖2可以看出FPGA子系統(tǒng)實(shí)現(xiàn)了對(duì)ADS8364的正確控制,仿真結(jié)果基本與ADS8364的工作時(shí)序相符.
圖4 狀態(tài)轉(zhuǎn)移圖Fig.4State transition diagram
圖5 系統(tǒng)仿真圖Fig.5System simulation diagram
4.2 諧波分析
諧波分析的核心是FFT(快速傅里葉變換),將AD轉(zhuǎn)換產(chǎn)生的數(shù)字信號(hào)由時(shí)域變換到頻域,為后期的諧波分析做準(zhǔn)備,對(duì)檢測(cè)到的一個(gè)周期的諧波信號(hào)進(jìn)行傅里葉變換,得到各次諧波的相位和幅值.采用FFT對(duì)量化后的被測(cè)信號(hào)進(jìn)行處理,獲得基波和各次諧波的電壓,從而計(jì)算出失真度,失真度的計(jì)算公式為
式(1)中:γ為失真度;P為信號(hào)的總功率;P1為基波信號(hào)的功率;U1為基波電壓的有效值;U2~Un為諧波電壓的有效值.
FFT運(yùn)算器采用FFT MegaCore實(shí)現(xiàn).本系統(tǒng)用到Altera公司Cyclone V系列5CSEMA5,該芯片能夠完全支持FFT MegaCore,能有效提高FFT部分的開發(fā)效率,縮短工程開發(fā)周期[13-15].為了盡量減少轉(zhuǎn)換時(shí)間,將FFT處理器設(shè)置成四輸出引擎結(jié)構(gòu),算法用到了基-4FFT算法,I/O數(shù)據(jù)流結(jié)構(gòu)設(shè)置為Buffered Burst,采樣點(diǎn)數(shù)設(shè)置為512點(diǎn),能夠占用更小的內(nèi)存資源.設(shè)計(jì)中只需對(duì)FFT IP核進(jìn)行配置以及數(shù)據(jù)輸入和結(jié)果讀取.
4.3 FFT仿真
在MATLAB中產(chǎn)生用于測(cè)試的輸入數(shù)據(jù),將其寫入到.mif文件中,對(duì)數(shù)據(jù)的實(shí)部和虛部信息進(jìn)行保存,用作測(cè)試數(shù)據(jù),輸入數(shù)據(jù)信息如圖6所示.在Quartus II 13.0軟件中對(duì)FFT IP核進(jìn)行配置,并且添加兩個(gè)ROM分別存儲(chǔ)輸入數(shù)據(jù)的實(shí)部和虛部.FPGA用來對(duì)輸入數(shù)據(jù)做FFT運(yùn)算.FFT部分在Modelsim中的仿真結(jié)果如圖7所示,F(xiàn)PGA對(duì)輸入數(shù)據(jù)的實(shí)部虛部信息進(jìn)行了存儲(chǔ).MATLAB對(duì)FFT運(yùn)算后的數(shù)據(jù)分析如圖8所示.
圖6 測(cè)試數(shù)據(jù)信息(a)幅頻特性;(b)測(cè)試數(shù)據(jù)實(shí)部;(c)測(cè)試數(shù)據(jù)虛部Fig.6Information of test data(a)Amplitude-frequency characteristics;(b)Real part of test data;(c)Imaginary part of test data
圖7 FFT仿真Fig.7FFT simulation
圖8 MATLAB仿真Fig.8MATLAB simulation
通過對(duì)比圖6和圖8,可以看出:FPGA實(shí)現(xiàn)了512點(diǎn)的FFT運(yùn)算.
筆者設(shè)計(jì)的SoCFPGA的同步數(shù)據(jù)采集系統(tǒng),實(shí)現(xiàn)了SoCFPGA對(duì)ADS8364的控制,同時(shí)也實(shí)現(xiàn)了512點(diǎn)的FFT運(yùn)算.選用SoCFPGA作為控制器件,充分發(fā)揮ADS8364芯片的高速、高精度的特點(diǎn),使得集成化程度大大提高,數(shù)據(jù)采集硬件更加簡(jiǎn)單,控制更加靈活,另外,F(xiàn)PGA編程方式靈活,軟件工具強(qiáng)大,可縮短系統(tǒng)的開發(fā)周期,提高工作效率.因此,本系統(tǒng)可用于高速實(shí)時(shí)數(shù)據(jù)采集系統(tǒng)等領(lǐng)域.
[1]劉書明,聶麗斌,余愛民.ADS8364的原理及應(yīng)用[J].國(guó)外電子元器件,2002,33(10):43-45.
LIU S M,NIE L B,YU A M.The principle and application of ADS8364[J].International electronic elements,2002,33(10):43-45.
[2]駱東松,黃錦華,陳若珠,等.電能質(zhì)量分析儀的研制[J].自動(dòng)化儀表,2010,31(11):61-63.
LUO D S,HUANG J H,CHEN R Z,et al.Research and development of the quality analyzer for electric power[J].Process automation instrumentation,2010,31(11):61-63.
[3]霍銀龍.基于FPGA+ARM的電能質(zhì)量監(jiān)測(cè)裝置的研制[D].南京:南京師范大學(xué),2013.
[4]駱曉明,楊拴科,金印彬.基于DSP+ARM的便攜式電能質(zhì)量分析儀設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2010,33(5):179-181.
LUO X M,YANG S K,JIN Y B.Design of portable power quality analyzer based on DSP+ARM[J].Modern electronics technique,2010,33(5):179-181.
[5]柏玉峰,靳斌,劉曉飛.ADS8364在高精度電能質(zhì)量分析儀中的應(yīng)用[J].中國(guó)儀器儀表,2006,12(1):68-70.
BO Y F,JIN B,LIU X F.Application of ADS8364 in high precision power quality analyzer[J].China instrumentation,2006,12(1):68-70.
[6]吳彩林,寧平華,夏興國(guó).基于ARM+FPGA的電能質(zhì)量分析儀設(shè)計(jì)[J].齊齊哈爾大學(xué)學(xué)報(bào),2014,30(4):9-14. WU C L,NING P H,XIA X G.Design of power quality analyzer based on ARM and FPGA[J].Journal of Qiqihar university,2014,30(4):9-14.
[7]辛鳳艷,孫曉曄.基于FPGA的AD轉(zhuǎn)換控制器設(shè)計(jì)[J].中國(guó)科技信息,2012,35(5):78-79.
XIN F Y,SUN X Y.Design of the AD conversion controller based on FPGA[J].China science and technology information,2012,35(5):78-79.
[8]許孟杰,劉文臣,劉云.基于FPGA的AD采樣設(shè)計(jì)[J].艦船電子工程,2015,33(1):114-118.
XU M J,LIU W C,LIU Y.Design of AD sampling based on FPGA[J].Ship electronic engineering,2015,33(1):114-118.
[9]劉國(guó)營(yíng),劉俊,李杰.基于ADS8364和DSP的高精度數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2007,23(23):190-191.
LIU G Y,LIU J,LI J.Design of high accuracy data acquisition system based on ADS8364 and DSP[J].Microcomputer information,2007,23(23):190-191.
[10]程佩青.數(shù)字信號(hào)處理[M].北京:清華大學(xué)出版社,2007.
[11]龐國(guó)龍.基于TMS320VC5509 DSP的FIR數(shù)字濾波器的實(shí)現(xiàn)[J].電子技術(shù),2011,38(4):47-48.
PANG G L.Implementation of FIR digital filter based on TMS320VC5509 DSP[J].Electronic technology,2011,38(4):47-48.
[12]楊志芳,王澤成,涂坦,等.基于FPGA的多路高速數(shù)據(jù)采集系統(tǒng)的實(shí)現(xiàn)[J].武漢化工學(xué)院學(xué)報(bào),2006,28(3):58-61.
YANG Z F,WANG Z C,TU T,et al.Multi-channel high speed data acquisition system based on FPGA[J]. Journal of Wuhan institute of chemical technology,2006,28(3):58-61.
[13]楊志方,涂坦,談宏華.基于FPGA和ARM的新型電能質(zhì)量監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J].長(zhǎng)江大學(xué)學(xué)報(bào),2007,4(2):69-72.
YANG Z F,TU T,TAN H H.Design of a new electric energy quality detection system based on FPGA and ARM[J].Journal of Yangtze university,2007,4(2):69-72.
[14]熊俊俏,周建軍,熊詩(shī)琪.快速圖像數(shù)據(jù)采集與顯示控制器的設(shè)計(jì)[J].武漢工程大學(xué)學(xué)報(bào),2012,34(1):61-64.
XIONG J Q,ZHOU J J,XIONG S Q.Design of high speed image acquisition and display controller[J]. Journal of Wuhan institute of technology,2012,34(1):61-64.
[15]崔士杰,汪建華.基于MATLAB的單相全控整流電路功率因數(shù)測(cè)定[J].武漢工程大學(xué)學(xué)報(bào),2010,32(1):90-92.
CUI S J,WANG J H.Measurement based on MATLAB of power factor of fully controlled single-phase commutation[J].Journal of Wuhan institute of technology,2010,32(1):90-92.
本文編輯:陳小平
Design of Synchronous Data Acquisition System Based on SoCFPGA
YANG Zhifang,HU Mengdie,CHEN Jue,WANG Lei
School of Electrical and Information Engineering,Wuhan Institute of Technology,Wuhan 430205,China
To meet the requirements of multi-channel data acquisition in power quality analysis system,we designed a synchronous data acquisition system based on SoCFPGA,taking Altera SoCFPGA as the core of the hardware platform and combining with the analog-digital conversion chip ADS8364 to build the 6 channels synchronous data acquisition system.Firstly,we employed both software and hardware for co-design,and described the logic of the AD conversion control process in VHDL,and then the data were processed by FFT core and the amplitude-frequency characteristics of them were displayed,which prepared for the following harmonic analysis.The simulation results indicate that SoCFPGA is able to well control the ADS8364 and 512-point FFT operation.The system makes the data acquisition hardware structure simpler and the degree of integration higher,which shortens the system development cycle,meeting the needs of data synchronous acquisition in practice.
synchronous data acquisition;SoCFPGA;ADS8364;software simulation
TP211
A
10.3969/j.issn.1674-2869.2016.06.014
1674-2869(2016)06-0588-06
2016-06-15
湖北省科技廳自然科學(xué)基金項(xiàng)目(2014CKC524)
楊志芳,碩士,副教授.E-mail:frank@wit.edu.cn