一種具有自適應(yīng)功能的ad采集板卡及采集方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)采集技術(shù)領(lǐng)域,具體涉及一種具有自適應(yīng)功能的AD采集板卡及米集方法。
【背景技術(shù)】
[0002]現(xiàn)有AD采集板卡采集正弦波信號(hào)并計(jì)算有效值的方法為:以固定頻率對(duì)正弦波信號(hào)進(jìn)行采樣,并將采樣得到的采樣點(diǎn)依次存儲(chǔ)到存儲(chǔ)器中;數(shù)字信號(hào)處理器對(duì)存儲(chǔ)器中每個(gè)信號(hào)周期內(nèi)的各采樣點(diǎn)進(jìn)行計(jì)算,得到該信號(hào)周期所對(duì)應(yīng)的有效值。
[0003]例如,當(dāng)正弦波信號(hào)的信號(hào)頻率是IHZ時(shí),其信號(hào)周期為I秒;假設(shè)采樣頻率為100KHZ,采樣周期為10微秒,即1us ;則I個(gè)信號(hào)周期需要采集100000個(gè)采樣點(diǎn),并且,100000個(gè)采樣點(diǎn)需要均存儲(chǔ)到存儲(chǔ)器中。而通常情況下,計(jì)算有效值實(shí)現(xiàn)I %的精度已能夠滿足絕大多數(shù)要求,而該精度僅需要每個(gè)信號(hào)周期具有5000個(gè)點(diǎn)即可,經(jīng)實(shí)際驗(yàn)證,過(guò)多的采樣點(diǎn)并不能夠明顯提高有效值計(jì)算精度,可見,現(xiàn)有AD采樣并計(jì)算有效值的方法具有以下問(wèn)題:(1)過(guò)多的采樣點(diǎn)存儲(chǔ)到存儲(chǔ)器中,消耗了大量的存儲(chǔ)資源;由于數(shù)字信號(hào)處理器內(nèi)部存儲(chǔ)資源有限,因此,需要占用額外的外部存儲(chǔ)資源,增加了系統(tǒng)硬件成本;(2)在精度足夠的情況下,過(guò)多的采樣點(diǎn)參與有效值計(jì)算,一方面,耗費(fèi)了數(shù)字信號(hào)處理器的計(jì)算資源;另一方面,對(duì)數(shù)字信號(hào)處理器的性能提出了更高的要求,需要高配置的數(shù)字信號(hào)處理器才能滿足該種計(jì)算需求,進(jìn)一步增加了系統(tǒng)硬件成本。原有方法還具有FPGA功耗比較大、可測(cè)量頻率范圍不足的缺點(diǎn)。
【發(fā)明內(nèi)容】
[0004]針對(duì)現(xiàn)有技術(shù)存在的缺陷,本發(fā)明提供一種具有自適應(yīng)功能的AD采集板卡及采集方法,可有效解決上述問(wèn)題。
[0005]本發(fā)明采用的技術(shù)方案如下:
[0006]本發(fā)明提供一種具有自適應(yīng)功能的AD采集板卡,包括多通道AD采樣芯片以及數(shù)字信號(hào)處理器;所述多通道AD采樣芯片與所述數(shù)字信號(hào)處理器連接;
[0007]所述多通道AD采樣芯片用于對(duì)正弦波信號(hào)進(jìn)行采樣,并將采樣得到的采樣點(diǎn)發(fā)送給所述數(shù)字信號(hào)處理器;
[0008]所述數(shù)字信號(hào)處理器用于:根據(jù)所輸入的正弦波信號(hào)的信號(hào)頻率,自適應(yīng)的準(zhǔn)確計(jì)算出采樣間隔;然后,從所述多通道AD采樣芯片所上傳的采樣點(diǎn)中,根據(jù)所述采樣間隔,選取得到若干個(gè)有效采樣點(diǎn);然后,并行執(zhí)行以下操作:存儲(chǔ)所述有效采樣點(diǎn);對(duì)一個(gè)信號(hào)周期包含的有效采樣點(diǎn)進(jìn)行計(jì)算,得到正弦波有效值。
[0009]優(yōu)選的,所述數(shù)字信號(hào)處理器為FPGA。
[0010]本發(fā)明還提供一種具有自適應(yīng)功能的AD采集方法,包括以下步驟:
[0011 ] SI,設(shè)AD采樣芯片共有η個(gè)采樣通道,分別記為第I采樣通道、第2采樣通道…第η采樣通道;其中,η為自然數(shù);數(shù)字信號(hào)處理器具有I個(gè)有效值計(jì)算模塊;
[0012]S2,當(dāng)有n路正弦波信號(hào)需要被AD采樣并計(jì)算有效值時(shí),每路正弦波信號(hào)的信號(hào)頻率預(yù)先發(fā)送給數(shù)字信號(hào)處理器;設(shè)η路正弦波信號(hào)依次為:第I路正弦波信號(hào)、第2路正弦波信號(hào)…第η路正弦波信號(hào);其信號(hào)頻率對(duì)應(yīng)為其信號(hào)周期對(duì)應(yīng)為-TpIV..T?;
[0013]數(shù)字信號(hào)處理器預(yù)設(shè)定一個(gè)信號(hào)周期所需要有效采樣點(diǎn)數(shù)量的最大值Zmax,以及,數(shù)字信號(hào)處理器預(yù)設(shè)定最小采樣間隔其中,所述最小采樣間隔t ^的設(shè)定原則為:最小采樣間隔t(i =有效值計(jì)算模塊計(jì)算I次有效值所需時(shí)間t y*n+tx;其中,t x為余量時(shí)間;
[0014]S3,所述數(shù)字信號(hào)處理器自適應(yīng)計(jì)算出各路正弦波信號(hào)的采樣間隔,具體計(jì)算方法均為:
[0015]對(duì)于任意的第i路正弦波信號(hào),其信號(hào)周期為Ti;其中,i = 1、2…η;采用S3.1-S3.3的方法計(jì)算其采樣間隔:
[0016]S3.ljj = l;
[0017]S3.2,判斷IVjtci是否小于等于Zmax,如果判斷結(jié)果為是,則第i路正弦波信號(hào)的采樣間隔h= j*最小采樣間隔t ^,并結(jié)束對(duì)該路正弦波信號(hào)采樣間隔的計(jì)算步驟;如果判斷結(jié)果為否,則執(zhí)行S3.3;
[0018]S3.3,令 j = j+Ι,返回 S3.2 ;
[0019]由此計(jì)算得到各路正弦波信號(hào)的采樣間隔,其均為最小采樣間隔h的整數(shù)倍,將η路正弦波信號(hào)的采樣間隔依次記為:采樣間隔h、采樣間隔t2…采樣間隔tn;
[0020]S4,AD采樣芯片的η個(gè)采樣通道以固定頻率持續(xù)并行對(duì)η路正弦波信號(hào)進(jìn)行獨(dú)立米樣;
[0021]S5,數(shù)字信號(hào)處理器對(duì)AD采樣芯片采集得到的η路采樣點(diǎn)進(jìn)行處理,并計(jì)算有效值,具體方法為:
[0022]在η路正弦波信號(hào)的信號(hào)頻率均未發(fā)生變化時(shí),執(zhí)行以下步驟:
[0023]數(shù)字信號(hào)處理器以最小采樣間隔h為循環(huán)觸發(fā)時(shí)鐘;
[0024](I)初始時(shí)刻,進(jìn)行第I次循環(huán)處理過(guò)程:即:數(shù)字信號(hào)處理器首先對(duì)第I采樣通道的當(dāng)前采樣點(diǎn)進(jìn)行取樣,得到第1-1有效采樣點(diǎn);然后,一方面,將所述第1-1有效采樣點(diǎn)存儲(chǔ)到第I存儲(chǔ)區(qū)域的第I位;另一方面,對(duì)第1-1有效采樣點(diǎn)計(jì)算有效值,將有效值結(jié)果記為Al,并將Al存儲(chǔ)到第2-1存儲(chǔ)區(qū)域;
[0025]然后,數(shù)字信號(hào)處理器對(duì)第2采樣通道輸送的當(dāng)前采樣點(diǎn)進(jìn)行取樣,得到第2-1有效采樣點(diǎn);然后,一方面,將所述第2-1有效采樣點(diǎn)存儲(chǔ)到第2存儲(chǔ)區(qū)域的第I位;另一方面,對(duì)第2-1有效采樣點(diǎn)計(jì)算有效值,將有效值結(jié)果記為A2,并將A2存儲(chǔ)到第2-2存儲(chǔ)區(qū)域;
[0026]依此類推,直到數(shù)字信號(hào)處理器對(duì)第η采樣通道輸送的當(dāng)前采樣點(diǎn)進(jìn)行取樣,得到第2-η有效采樣點(diǎn);然后,一方面,將所述第2-η有效采樣點(diǎn)存儲(chǔ)到第η存儲(chǔ)區(qū)域的第I位;另一方面,對(duì)第2-η有效采樣點(diǎn)計(jì)算有效值,將有效值結(jié)果記為An,并將An存儲(chǔ)到第2-η存儲(chǔ)區(qū)域;
[0027]上述總過(guò)程所需時(shí)間小于但接近最小采樣間隔
[0028](2)從所述初始時(shí)刻開始,當(dāng)經(jīng)過(guò)最小采樣間隔h后,進(jìn)行第2次循環(huán)處理過(guò)程:即:數(shù)字信號(hào)處理器返回到第I采樣通道,判斷從前一次對(duì)第I采樣通道輸送的采樣點(diǎn)進(jìn)行取樣的時(shí)刻至當(dāng)前時(shí)刻所經(jīng)過(guò)的時(shí)間間隔是否達(dá)到采樣間隔t1;如果達(dá)到,則對(duì)第I采樣通道輸送的當(dāng)前采樣點(diǎn)進(jìn)行取樣,得到第1-2有效采樣點(diǎn);然后,一方面,將所述第1-2有效采樣點(diǎn)存儲(chǔ)到第I存儲(chǔ)區(qū)域的第2位;另一方面,對(duì)第1-2有效采樣點(diǎn)計(jì)算有效值,其計(jì)算方法為:第1-2有效采樣點(diǎn)的值與Al進(jìn)行累積計(jì)算,得到的有效值結(jié)果記為A2,并用A2更新Al ;如果未達(dá)到,則對(duì)第I采樣通道輸送的當(dāng)前采樣點(diǎn)不進(jìn)行任何處理;
[0029]然后,采用同樣的處理方法,數(shù)字信號(hào)處理器依次對(duì)第2采樣通道至第η采樣通道進(jìn)行處理;
[0030](3)從所述初始時(shí)刻開始,當(dāng)經(jīng)過(guò)2倍的最小采樣間隔h后,進(jìn)行第3次循環(huán)處理過(guò)程;如此不斷循環(huán),數(shù)字信號(hào)處理器對(duì)η個(gè)采樣通道輸送的采樣點(diǎn),按各自對(duì)應(yīng)的采樣間隔,不斷進(jìn)行取樣并計(jì)算有效值;
[0031]其中,對(duì)于任意一個(gè)第i采樣通道,其信號(hào)周期為Ti,采樣間隔為則一個(gè)信號(hào)周期共包括有M = lVti+1個(gè)有效采樣點(diǎn),依次記為:&、CfCM;對(duì)第i采樣通道有效值計(jì)算過(guò)程具體為:
[0032]SlO:當(dāng)?shù)玫降贗個(gè)有效采樣點(diǎn)(^時(shí),計(jì)算得到有效值A(chǔ)l ;其中,有效值A(chǔ)l只為中間值;
[0033]當(dāng)?shù)玫降?個(gè)有效采樣點(diǎn)(:2時(shí),將有效采樣點(diǎn)C 2和有效值A(chǔ)l進(jìn)行累積計(jì)算,得到有效值A(chǔ)2 ;有效值A(chǔ)2只為中間值;
[0034]依此類推,當(dāng)?shù)玫降谝粋€(gè)周期的最后一個(gè)有效采樣點(diǎn)Cm時(shí),并與A η進(jìn)行累積計(jì)算,得到有效值A(chǔ)m;此處,有效值A(chǔ) ?不再是中間值,存儲(chǔ)A M;
[0035]S20,當(dāng)經(jīng)過(guò)第一個(gè)信號(hào)周期后,當(dāng)后續(xù)得到第M+1個(gè)有效采樣點(diǎn)(^+1后,此時(shí),通過(guò)(V..CM、Cmh這M個(gè)有效采樣點(diǎn)的值計(jì)算有效值A(chǔ) M+1;此處,有效值A(chǔ) M+1不再是中間值,存儲(chǔ) am+1;
[0036]當(dāng)后續(xù)得到第M+2個(gè)有效采樣點(diǎn)‘后,此時(shí),通過(guò)C 3...CM+1、CM+2這M個(gè)有效采樣點(diǎn)的值計(jì)算有效值A(chǔ)M+2;此處,有效值A(chǔ) M+2不再是中間值,存儲(chǔ)A M+2;
[0037]依此類推,只要第i采樣通道的信號(hào)頻率不發(fā)生變化時(shí),不斷計(jì)算并得到有效值,最終得到多個(gè)有效值;
[0038]S30,在任意時(shí)刻,當(dāng)?shù)趇采樣通道的信號(hào)頻率發(fā)生變化時(shí),采樣間隔自適應(yīng)變化,將信號(hào)頻率發(fā)生變化后的第I個(gè)有效采樣點(diǎn)記為C1,然后,返回S10,循環(huán)S10-S20。
[0039]本發(fā)明提供的具有自適應(yīng)功能的AD采集板卡及采集方法具有以下優(yōu)點(diǎn):
[0040](I)預(yù)設(shè)計(jì)采樣點(diǎn)數(shù)Zmax,以及,不同信號(hào)頻率的各個(gè)正弦波信號(hào)共用同一個(gè)有效值計(jì)算模塊,從而在保證有效