<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機中最小二乘方濾波器的向量測量和功率計算

          單片機中最小二乘方濾波器的向量測量和功率計算

          作者: 時間:2012-02-27 來源:網(wǎng)絡(luò) 收藏

          如果輸入電壓是相電壓,則:

          P=Pa+Pb+Pc=ua×ia+ub×ib+uc×ic

          =ua×ia-ub×(ia+ic)+uc×ic

          =Ua×Ia×cos(θua-θia)-Ub×Ia×cos(θub-θia)

          -Ub×Ic×cos(θub-θic)+Uc×Ic×cos(θuc-θic) (16)

          將上式中的余弦函數(shù)展開后,再鈄(6)和(7)式的對應(yīng)結(jié)果分別代入即可。

          無功的計算只需將(14)、(15)和(16)式中的余弦運算改為相應(yīng)的正弦運算即可。

          4 基于應(yīng)用的優(yōu)化措施

          從目前市場情況來看,雖然性能在不斷提高,如INTEL從8位、16位到32位不斷推陳出新,但真正得以廣泛采用的并不是性能最好的產(chǎn)品。從實際應(yīng)用來看,有時必須面對一個受限制的客觀現(xiàn)實。就本應(yīng)用來說,采用以下措施可大大提高程序的計算速度。

          4.1 變浮點運算為整數(shù)運算

          對于(4)~(10)式來說,采用C或PL/M高級語言進(jìn)行浮點運算既方便,精度又高。但與整數(shù)運算相比,浮點運算速度要慢得多。因此,為提高計算速度,應(yīng)盡量采用整數(shù)運算。從工程實際來看,A/D轉(zhuǎn)換后的結(jié)果一般是雙字節(jié)整數(shù),可與放大10位的最小二乘直接運算,則(4)式變?yōu)椋?P>X[3]=5×U[2]-10×U[3]+5×U[4] (17)

          (5) 式變?yōu)椋?P>X[4]=5×U[1]-10×U[2]+5×U[3] (18)

          (17)、(18)式只有6次4字節(jié)的長整數(shù)乘法和4次加法。即使對12位A/D而言,(17)、(18)式的計算結(jié)果也不會溢出。由于擴大10倍時是整數(shù),沒有四舍五入,因此計算過程無任何附加誤差。

          4.2 快速求平方根法

          從(4)~(10)式來看,耗時最多的是(10)式,即求平方根運算,獲得基波的峰-峰值。

          如果直接采用標(biāo)準(zhǔn)浮點庫提供的開平方函數(shù),16MHz的80196KC需3ms左右。若采用文獻(xiàn)[4]中的整數(shù)查表法,或文獻(xiàn)[5]提供的精度為1%的二分法,相同條件下求根所需時間一般在100~300μs之間,計算速度提高10倍以上。

          本文提出的每周波4個采樣點的可在一般單片機中實現(xiàn)工頻信號的實時相量測量。算法進(jìn)一步優(yōu)化后,可在一個周波的時間窗內(nèi)對多路信號作出實時反映,滿足一般保護的技術(shù)要求。該算法還可以實現(xiàn)其他保護和測量功能。

          濾波器相關(guān)文章:濾波器原理


          濾波器相關(guān)文章:濾波器原理


          電源濾波器相關(guān)文章:電源濾波器原理


          數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理

          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();