基于TMS320F2812的數(shù)字頻率計(jì)的設(shè)計(jì)
3 誤差分析及測試結(jié)果
3.1 量化誤差
設(shè)被測信號的頻率為Fx,其真實(shí)值為Fxe,標(biāo)準(zhǔn)頻率為Fs,在一次測量中,預(yù)置閘門時(shí)間為T′,Tpr為實(shí)際閘門時(shí)間,被測信號計(jì)數(shù)值為Nx,標(biāo)準(zhǔn)頻率信號計(jì)數(shù)值為Ns。
Fx計(jì)數(shù)的起停時(shí)間是由該信號的上升沿觸發(fā)的,在T′時(shí)間內(nèi)對Fx的計(jì)數(shù)Nx無誤差,對Fs的計(jì)數(shù)Ns假設(shè)相差N個(gè)脈沖,即|△et|≤n。
由于Fx/Nx=Fs/Ns,F(xiàn)xe/Nx=Fs/(Ns+△et),根據(jù)相對誤差公式有:
因此可以得到以下結(jié)論:
①相對測量誤差與被測信號的頻率無關(guān)。
②增大T′或者提高Fs,可以增大Ns,減少測量誤差,提高測量精度。本設(shè)計(jì)方案中,預(yù)置閘門時(shí)間限定了最低的測量精度。
③誤差分析中的n,主要由硬件切斷T1PWM所需要的時(shí)間決定,為一個(gè)小整型常數(shù)。若預(yù)置閘門時(shí)間Tpr=O.012 8 s,則
即使n取不為l的小整型常數(shù),仍可以使得精度維持在十萬分之一以內(nèi),并且可以隨著預(yù)置閘門時(shí)間的適當(dāng)延長,得到進(jìn)一步的提高。
3.2 測量的原理誤差和標(biāo)準(zhǔn)頻率誤差
本測量原理類似多周期同步測量原理,主要的原理誤差來自測量即將結(jié)束時(shí),由D觸發(fā)器產(chǎn)生低電平跳變來切斷T1PWM,從而使其產(chǎn)生由CAPl和CAP3同時(shí)捕獲上升沿的跳變。這段時(shí)間主要是由D觸發(fā)器的反應(yīng)時(shí)間決定。在測量過程中,針對這部分誤差,可以通過適當(dāng)增加預(yù)置閘門的時(shí)間來克服,同時(shí)考慮到DSP內(nèi)部高速的時(shí)鐘頻率,這并不會(huì)明顯地增加測量耗時(shí),但卻達(dá)到了弱化此誤差的影響、增加測量精度的目的。
標(biāo)準(zhǔn)頻率誤差為△Fs/Fs。因?yàn)榫w的穩(wěn)定度很高,標(biāo)準(zhǔn)頻率誤差可以進(jìn)行校準(zhǔn),并且已將DSP內(nèi)部的高速時(shí)鐘頻率進(jìn)行了適當(dāng)?shù)姆诸l,所以相對于量化誤差,校準(zhǔn)后的標(biāo)準(zhǔn)頻率誤差可以忽略不計(jì)。
3.3 測試結(jié)果
用函數(shù)信號發(fā)生器(型號為Tektronix AFG3010;精度為O.000 1%)產(chǎn)生方波信號,用設(shè)計(jì)的頻率計(jì)測出頻率,求出誤差。本測頻系統(tǒng)的測量精度可達(dá)到O.01%。根據(jù)誤差分析可知,系統(tǒng)的最大誤差發(fā)生在預(yù)置閘門時(shí)間正好填充了整數(shù)個(gè)被測信號時(shí),即頻率為78.125 Hz或者其整數(shù)倍時(shí),所以選擇這些點(diǎn)進(jìn)行測試。實(shí)際的測試數(shù)據(jù)如表1所列。
4 結(jié) 論
本文著重分析了數(shù)字頻率計(jì)的設(shè)計(jì)方案、硬件組成,以及采用Modbus協(xié)議實(shí)現(xiàn)上位機(jī)與下位機(jī)通信的軟件設(shè)計(jì)。特點(diǎn)有:
①在頻率測量原理方面,由于采用了多周期測量原理,消除了對被測信號計(jì)數(shù)時(shí)產(chǎn)生的±1個(gè)計(jì)數(shù)誤差,其精度僅與閘門時(shí)間和標(biāo)準(zhǔn)頻率有關(guān),克服了傳統(tǒng)的測頻法或測周法的不足,實(shí)現(xiàn)了寬量程、高精度的頻率測量。同時(shí)由于預(yù)置閘門時(shí)間的存在,保證了當(dāng)被測頻率在各頻段之間來回切換時(shí),系統(tǒng)反應(yīng)靈敏,跟隨性能好。
②在系統(tǒng)的總體設(shè)計(jì)方面,充分利用了F2812 DSP的內(nèi)部資源,即使用事件管理器中的定時(shí)器、捕獲單元完成頻率的測量;使用PWM的輸出實(shí)現(xiàn)自檢電路的設(shè)計(jì);使用串口通信模塊完成上位機(jī)和下位機(jī)的通信。在測量結(jié)果的顯示方面利用RS232,通信協(xié)議采用Modbus協(xié)議,實(shí)現(xiàn)下位機(jī)和上位機(jī)的通信,將測量結(jié)果在上位機(jī)中顯示出來。
本文只探討了如何對單路信號進(jìn)行頻率測量,而對于多路信號,可先使其經(jīng)過一個(gè)與門,通過軟件判斷哪一路信號,然后再運(yùn)用本設(shè)計(jì)方法進(jìn)行測量。針對這種情況所產(chǎn)生的誤差問題還需作進(jìn)一步的探討,本文只給出初步的探索。
評論