国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于查表插值法的余弦函數(shù)離散值算法

2019-01-29 07:19:32葉品勇吳銀福邵宗衛(wèi)關(guān)繼勇陳新之周兆慶
綜合智慧能源 2019年1期
關(guān)鍵詞:插值法余弦插值

葉品勇,吳銀福,邵宗衛(wèi),關(guān)繼勇,陳新之,周兆慶

(1.南京電研電力自動(dòng)化股份有限公司,南京 210000;2.南京國(guó)電南自自動(dòng)化有限公司,南京 211100)

0 引言

隨著智能電網(wǎng)的推進(jìn)和相關(guān)技術(shù)研究的深入,對(duì)繼電保護(hù)及自動(dòng)化設(shè)備的精度和動(dòng)態(tài)響應(yīng)的考核要求越來(lái)越高,因此需要一款能夠模擬電壓、電流輸出信號(hào)的信號(hào)發(fā)生裝置。該裝置應(yīng)具備調(diào)頻、調(diào)相、調(diào)幅、采樣率可調(diào)以及諧波疊加等各項(xiàng)繼電保護(hù)測(cè)試儀的功能,同時(shí)還應(yīng)具備輸出信號(hào)可編程功能。

現(xiàn)場(chǎng)可編程邏輯門(mén)陣列(FPGA)因靈活性、可靠性和集成度高而逐漸受人矚目。由于計(jì)算精度與存儲(chǔ)容量的矛盾,在存儲(chǔ)資源有限的FPGA芯片中,常用的查找表實(shí)現(xiàn)余弦函數(shù)離散值的方法已沒(méi)有優(yōu)勢(shì)[1-8]。因此,本文提出了一種查找表與拉格朗日插值相結(jié)合的算法,結(jié)合兩者的優(yōu)勢(shì),在保證精度的前提下優(yōu)化了算法的輸出時(shí)延和資源消耗。

1 算法介紹

連續(xù)余弦函數(shù)常見(jiàn)的表達(dá)式為F=Acos(ωt+φ)=Acos(2πft+φ),式中:A為幅值;f為頻率;φ為初相角。在數(shù)字系統(tǒng)中需要對(duì)連續(xù)函數(shù)進(jìn)行離散化處理,離散余弦函數(shù)常見(jiàn)的表達(dá)式為

k=0,1,2,…。

(1)

式中:s為采樣率,即每秒采樣點(diǎn)數(shù);k為采樣序號(hào)。

根據(jù)式(1)可直接計(jì)算每點(diǎn)對(duì)應(yīng)的采樣點(diǎn)數(shù)據(jù),然而這種方式需要消耗大量的FPGA邏輯資源且計(jì)算延時(shí)長(zhǎng)。采用查表法,如果查找表顆粒度太粗,則精度不夠,顆粒度太細(xì),則需要建立一個(gè)龐大的查找表,占用大量的FPGA存儲(chǔ)資源。鑒于此,為了在FPGA中實(shí)現(xiàn)余弦函數(shù)離散值生成器,綜合考慮邏輯資源和運(yùn)算速度,采用查表插值法是一種較合適的方法。

2 查表插值法

首先,建立一個(gè)整周波查找表,為了減少FPGA邏輯資源消耗,在滿(mǎn)足精度的前提下采用定點(diǎn)數(shù)表示。將F=32 768 cosθ均勻分割成1 024份,每份偏移角度為 2π/1 024,按四舍五入取,形成查表插值法的基準(zhǔn)查找表,見(jiàn)表1。將基準(zhǔn)查找表中1 024個(gè)采樣點(diǎn)按順序排列,波形如圖1所示。

表1 余弦函數(shù)基準(zhǔn)查找表Tab.1 Cosine function reference lookup

圖1 余弦函數(shù)基準(zhǔn)采樣點(diǎn)波形Fig.1 Waveform at cosine function reference sampling point

其次,需要計(jì)算出弧度落在基準(zhǔn)查找表的哪個(gè)區(qū)間及在區(qū)間中的偏移位置。將式(1)中的弧度除以基準(zhǔn)表最小步長(zhǎng)2π/1 024,得到式(2)。

(2)

另外,為采用定點(diǎn)數(shù)處理,將兩個(gè)基準(zhǔn)點(diǎn)之間的步長(zhǎng)均分為1 024等份,即將式(2)分子分母均乘以1 024得到式(3)。

k=0,1,2,…。

(3)

k=0,1,2,…。

(4)

計(jì)算式(4)所得商即為基準(zhǔn)查找表的左區(qū)間序號(hào),商加1即為基準(zhǔn)查找表的右區(qū)間序號(hào),余數(shù)為區(qū)間內(nèi)的相對(duì)偏移位置。

令n為式(4)的商,r為式(4)的余數(shù),由于余弦函數(shù)為周期性函數(shù),且基準(zhǔn)查找表只記錄1個(gè)周波的數(shù)值(分為1 024個(gè)基準(zhǔn)點(diǎn)),因此需要對(duì)n進(jìn)行求模運(yùn)算,令n′=n%1 024,則離散值插值區(qū)間為[n′,n′+1]。

根據(jù)以上計(jì)算可獲知余弦函數(shù)離散值對(duì)應(yīng)的插值區(qū)間和插值偏移位置,采用一階線(xiàn)性插值算法再乘以幅值A(chǔ),可計(jì)算出余弦函數(shù)離散值

(5)

3 算法實(shí)現(xiàn)

由以上算法推演過(guò)程可見(jiàn),實(shí)現(xiàn)一項(xiàng)諧波輸出需要配置4個(gè)參數(shù),分別為采樣率s(單位Hz)、頻率f′(單位Hz/1 024,如:頻率50.01 Hz表示為51 210)、初相角φ′(單位π/1 024,如:初相角1.5 π表示為1 536)和幅值A(chǔ)??稍贔PGA內(nèi)部維護(hù)多組配置信息,分別計(jì)算出相應(yīng)的諧波分量,相加后可實(shí)現(xiàn)多項(xiàng)諧波分量疊加信號(hào)輸出。

為了提高FPGA運(yùn)算速度和簡(jiǎn)化FPGA運(yùn)算邏輯,上述運(yùn)算過(guò)程盡量避免除法運(yùn)算而采用移位來(lái)實(shí)現(xiàn)。式(4)求商運(yùn)算可簡(jiǎn)化為右移10位實(shí)現(xiàn),求余數(shù)運(yùn)算可簡(jiǎn)化為取數(shù)值低10位數(shù)據(jù)實(shí)現(xiàn);同理,對(duì)n進(jìn)行求模運(yùn)算也可簡(jiǎn)化為取數(shù)值低10位數(shù)據(jù)來(lái)實(shí)現(xiàn)。需要注意,式(4)中1 024f′/s無(wú)法避免除法運(yùn)算,但該數(shù)值只與配置項(xiàng)有關(guān),因此,只需在初始時(shí)刻和配置項(xiàng)改變時(shí)刻計(jì)算一次,后期無(wú)需重復(fù)計(jì)算。

綜上所述,實(shí)現(xiàn)余弦函數(shù)離散值生成器的計(jì)算流程如圖2所示。

4 算法精度分析

查表插值算法中采用了一階線(xiàn)性插值,由此會(huì)引進(jìn)誤差,如圖3所示。

由拉格朗日插值多項(xiàng)式插值余項(xiàng)可知,一階線(xiàn)性插值誤差為

R1(x)=f(x)-L1(x)=

ξ∈(xn,xn+1) 。

(6)

圖4 算法驗(yàn)證波形Fig.4 Algorithm validation waveform

圖2 余弦函數(shù)離散值生成器計(jì)算流程Fig.2 Computational flow of cosine function discrete value generator

圖3 插值誤差示意Fig.3 Schematic of interpolation error

由于式(6)是一個(gè)誤差區(qū)間,不方便誤差估算,因此采用最大誤差進(jìn)行估算。

可見(jiàn),算法精度很高,且算法精度不受諧波頻率的影響,遠(yuǎn)遠(yuǎn)超過(guò)了目前智能電網(wǎng)對(duì)信號(hào)發(fā)生測(cè)試裝置精度的要求。

5 算法驗(yàn)證

為了驗(yàn)證算法的正確性,在Xilinx公司的Artix7芯片上進(jìn)行了板級(jí)驗(yàn)證,通過(guò)調(diào)用Vivado的Debug調(diào)試工具,將關(guān)鍵信號(hào)添加到信號(hào)觀(guān)察窗口,以判斷算法是否執(zhí)行正確,如圖4所示。

該驗(yàn)證程序占用 331 Flip-Flop (觸發(fā)器)、152LUT(查找表)、2 048字節(jié)Block-RAM、6 DSP48。系統(tǒng)時(shí)鐘頻率為125 MHz,每11個(gè)時(shí)鐘周期(即88 ns)完成一次離散值計(jì)算。

可見(jiàn),實(shí)際測(cè)試中本文提出的算法是正確可行的,具有占用FPGA資源少、響應(yīng)速度快的優(yōu)點(diǎn)。

圖5 余弦函數(shù)離散值幅頻特性Fig.5 Amplitude-frequency characteristic of cosine function discrete value

6 結(jié)論

本文提出了基于查找表與拉格朗日插值的用于實(shí)現(xiàn)余弦函數(shù)離散值的方法,該方法結(jié)合了兩者的優(yōu)勢(shì),具有占用FPGA資源少、響應(yīng)速度快、精度高、配置靈活等優(yōu)點(diǎn),可以很好地滿(mǎn)足智能電網(wǎng)繼電保護(hù)測(cè)試儀的功能需求。

猜你喜歡
插值法余弦插值
《計(jì)算方法》關(guān)于插值法的教學(xué)方法研討
基于Sinc插值與相關(guān)譜的縱橫波速度比掃描方法
兩個(gè)含余弦函數(shù)的三角母不等式及其推論
一種改進(jìn)FFT多譜線(xiàn)插值諧波分析方法
基于四項(xiàng)最低旁瓣Nuttall窗的插值FFT諧波分析
分?jǐn)?shù)階余弦變換的卷積定理
圖像壓縮感知在分?jǐn)?shù)階Fourier域、分?jǐn)?shù)階余弦域的性能比較
基于二次插值法的布谷鳥(niǎo)搜索算法研究
Newton插值法在光伏發(fā)電最大功率跟蹤中的應(yīng)用
離散余弦小波包變換及語(yǔ)音信號(hào)壓縮感知
柘荣县| 临武县| 安新县| 山阴县| 昌江| 兴义市| 封开县| 广东省| 江西省| 凤庆县| 霍林郭勒市| 承德县| 宜阳县| 皋兰县| 云梦县| 乌鲁木齐县| 和田市| 环江| 新源县| 永济市| 建昌县| 财经| 宝坻区| 环江| 天津市| 苗栗县| 榆中县| 平舆县| 图片| 泗阳县| 元氏县| 龙里县| 无为县| 日土县| 肇源县| 都匀市| 阜平县| 扶余县| 三河市| 桑日县| 咸阳市|