一、什么是真有效值
對于用電設備、其用電量是最為關注的電氣參數,因為它與電費直接相關。
我們測量電信號的電流、電壓大小時,需要能快速從測試結果中計算得到消耗的電量。
根據焦耳定律,阻值為R的電器在一個周期T內所消耗的電壓,也即一個周期的平均功率:
如果直流測量出電壓的均方根值U,以及電流的均方根值I,
所謂均方根值即將瞬間數值平方之后、計算一個周期的平均,再開方,
也被稱為真有效值,表示有效產生電量的數值,從而:
得到真有效值U和I,我們只需要通過簡單的乘法運算得到功率:
因此,在我看來,真有效值是為了便于計算電量而定義的數值。
二、怎么測量真有效值
為什么是真有效值,而不是有效值,難道還有假的有效值?
還真是如此。
從真有效值的定義,為了計算出交流電流、電壓的真有效值,
我們需要在一個周期內,等間隔采樣,
計算采樣得到的數值u(i)平方值,再進行累加,
累加到N個數據之后,再除以總采樣次數,得到結果做開方運算,
再進行標定,公式如下:
其中,k、b是標定系數;
因為,真有效值需要對信號在一個周期內進行等間隔采樣,
為了保證精度,需要在20ms周期內采樣128個數值。
即每隔156.26us做一次A/D采樣,再做平方和加法運算。
計算周期結束之后,還需要計算除法和開方。
在8位單片機的時代,需要非常昂貴的處理器才能做這樣復雜的運算。
因而,真有效值的計算只是一些高端儀表才有的功能。
更多的是將信號做絕對值處理并濾成直流之后,計算平均值,
由平均值換算得到假的有效值。
不含高次諧波的交流市電及其取絕對值之后的波形
十四年前,在一款馬達保護器上使用的精密絕對值電路,用于測平均電流
對于峰值為A的正弦信號u(t),可以表示為:
,
其真有效值為:
由二倍角公式,得到:
而取絕對值之后,得到的平均值為:
進一步計算,得到:
所以,對于標準正弦信號,真有效值和平均值滿足以下關系:
計算得到電流、電壓的平均值之后,再乘以1.11即可以得到有效值。
1.11又被稱為波形系數。
對于真有效值為220V的交流市電,其峰值為311V,平均值為198V;
當含有高次諧波成份成,通過平均值換算出有效值不再準確。
當處理器在一個周期內對交流信號進行等間隔采樣,比如以156.25us的時間間隔進行采樣。
每一次采樣得到的數據表示為Ui,一個周期內采樣N個點;
因為處理器不能輸入負信號,因為我們需要采用下圖的電路在交流信號上疊加直流信號,
采用真有效值算法的信號處理電路
這樣,采樣得到的信號既有直流分量,也有交流分量,
表示為Ui=U1i+U2i,其中U1i為直流分量,U2i為交流分量;
直流分量在一個周期內的平均值即為瞬間值,交流分量在一個周期內的平均值為0,表示為:
交流信號的真有效值表示為:
最終得到:
可見,對每一次采樣的數據,我們只需要計算其和以及平方和即可,
代碼如下:
真有效值計算算法
四、處理器資源情況
采用定時器作為A/D采樣的觸發源,每隔156.25us觸發A/D啟動采樣。
采用處理器的regular group的采樣功能,將三相電流和電壓作為一個組,讓A/D模塊被觸發之后,自動完成一組輸入的采樣。
采用DMA自動將采樣得到的結果搬移到緩存。
程序在主循環中判斷緩存是否有數據,有數據由調用真有效值處理函數進行處理。
調用math庫的開方函數sqrt,大概耗時為幾個us,忽略不計。
原文標題:真有效值的定義及其C語言算法推導
文章出處:【微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
審核編輯:湯梓紅
-
處理器
+關注
關注
68文章
19293瀏覽量
229935 -
C語言
+關注
關注
180文章
7605瀏覽量
136904 -
真有效值
+關注
關注
0文章
15瀏覽量
9234
原文標題:真有效值的定義及其C語言算法推導
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論