chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)據(jù)濾波算法的具體實(shí)現(xiàn)步驟是怎樣的?

jf_30241535 ? 來源:jf_30241535 ? 作者:jf_30241535 ? 2025-10-10 16:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

數(shù)據(jù)濾波算法在電能質(zhì)量在線監(jiān)測裝置中的具體實(shí)現(xiàn),需圍繞 “數(shù)據(jù)采集→預(yù)處理→算法執(zhí)行→參數(shù)適配→效果驗(yàn)證→結(jié)果輸出” 的全流程展開,核心是結(jié)合裝置硬件特性(采樣率、ADC 精度)和干擾類型(高頻電磁、瞬時脈沖等),選擇適配的濾波算法并落地。以下以電能質(zhì)量監(jiān)測中最常用的IIR 低通濾波(抗高頻干擾)、滑動平均濾波(抗瞬時脈沖)、卡爾曼濾波(抗動態(tài)波動) 為例,詳解具體實(shí)現(xiàn)步驟:

一、前置準(zhǔn)備:明確濾波目標(biāo)與硬件基礎(chǔ)(實(shí)現(xiàn)前提)

在編寫或配置濾波算法前,需先確定 “濾除什么干擾”“基于什么硬件實(shí)現(xiàn)”,避免算法與實(shí)際場景脫節(jié):

1. 確定濾波目標(biāo)(針對具體干擾)

干擾類型與濾波算法匹配

高頻電磁干擾(如變頻器 1kHz-10MHz 雜波)→ 選IIR 低通濾波(保留 50Hz 基波 + 2-50 次諧波,濾除高頻噪聲);

瞬時脈沖干擾(如雷電尖峰、靜電放電)→ 選滑動平均濾波(平滑瞬時跳變,避免單組數(shù)據(jù)異常);

動態(tài)波動干擾(如振動導(dǎo)致的電流時斷時續(xù))→ 選卡爾曼濾波(動態(tài)跟蹤真實(shí)值,抑制隨機(jī)波動)。

關(guān)鍵指標(biāo)要求

濾波延遲:≤1 個周波(50Hz 系統(tǒng) 20ms,避免影響暫態(tài)事件捕捉);

幅值衰減:對目標(biāo)頻段(如 50Hz 基波)衰減≤0.1%(保證測量精度),對干擾頻段(如 1kHz 以上)衰減≥20dB(濾除效果)。

2. 確認(rèn)硬件支撐條件

采樣率:濾波算法需與裝置采樣率匹配(如 IIR 低通濾波要求采樣率≥2 倍干擾頻率,即 “奈奎斯特準(zhǔn)則”)。例如:濾除 1kHz 高頻干擾,采樣率需≥2kHz(電能質(zhì)量裝置常規(guī)采樣率為 12.8kHz/51.2kHz,完全滿足);

ADC 精度:24 位 ADC(如 AD7794)支持更高濾波精度,16 位 ADC(如 ADS1115)需簡化濾波階數(shù)(避免計算誤差疊加);

計算資源:復(fù)雜算法(如 8 階 IIR、卡爾曼濾波)需 FPGA / 高性能 MCU(如 STM32H7)支撐,低端 MCU(如 STM32F1)優(yōu)先選滑動平均等輕量級算法。

二、通用核心步驟:以 “IIR 低通濾波(抗高頻電磁干擾)” 為例

IIR(無限脈沖響應(yīng))低通濾波是電能質(zhì)量裝置抗高頻干擾的核心算法,常用 “巴特沃斯濾波器”(通帶平坦、阻帶衰減陡峭),具體實(shí)現(xiàn)分 6 步:

1. 步驟 1:算法參數(shù)設(shè)計(確定濾波 “規(guī)則”)

確定關(guān)鍵參數(shù)

通帶截止頻率(fc):500Hz(保留 50Hz 基波 + 2-50 次諧波,50 次諧波為 2500Hz?此處需修正:50 次諧波為 50×50=2500Hz,若需保留 50 次諧波,fc 應(yīng)設(shè)為≥2500Hz,實(shí)際濾除 10kHz 以上高頻干擾,fc 設(shè)為 10kHz);

阻帶截止頻率(fs):20kHz(對 20kHz 以上干擾衰減≥40dB);

通帶波紋(Rp):≤1dB(保證通帶內(nèi)數(shù)據(jù)平滑);

阻帶衰減(Rs):≥40dB(確保高頻干擾濾除徹底)。

計算濾波系數(shù):通過 MATLAB “Filter Design Toolbox” 或 Python“scipy.signal” 工具,輸入上述參數(shù)生成 IIR 濾波系數(shù)(分子 b、分母 a)。例如:8 階巴特沃斯低通濾波,生成 b=[b0,b1,...,b8]、a=[a0,a1,...,a8](a0 通常歸一化為 1)。

2. 步驟 2:數(shù)據(jù)采集與緩存(獲取原始采樣數(shù)據(jù))

多通道同步采樣:裝置對電壓 / 電流的 3 個通道(A/B/C 相)同步采樣(時間誤差≤1μs),每個通道連續(xù)采集 N 個采樣點(diǎn)(如 N=1024 點(diǎn) / 周波,50Hz 系統(tǒng)對應(yīng) 20ms),存儲在 “原始數(shù)據(jù)緩存數(shù)組”(如 uint16_t raw_data [3][1024]);

數(shù)據(jù)格式轉(zhuǎn)換:將 ADC 采集的 “無符號整數(shù)”(如 0-65535)轉(zhuǎn)換為 “有符號電壓 / 電流值”(如 - 10V~+10V),公式:real_value = (raw_data - 32768) * 20.0 / 65536(假設(shè) ADC 參考電壓為 10V,16 位精度)。

3. 步驟 3:預(yù)處理(消除原始數(shù)據(jù) “異常點(diǎn)”)

去極值處理:若原始數(shù)據(jù)中存在 “超出合理范圍的尖峰”(如電壓突然跳至 300V,遠(yuǎn)超 220V 系統(tǒng)正常范圍),用 “相鄰 3 點(diǎn)中值替換”(如第 i 點(diǎn)值>1.5× 第 i-1 點(diǎn)且>1.5× 第 i+1 點(diǎn),判定為極值,替換為(第 i-1 點(diǎn) + 第 i+1 點(diǎn))/2),避免極值影響濾波系數(shù)計算;

數(shù)據(jù)對齊:若多通道采樣存在微小延遲(如 A 相比 B 相延遲 1 個采樣點(diǎn)),通過 “插值法” 調(diào)整為完全同步(保證三相數(shù)據(jù)相位一致性)。

4. 步驟 4:濾波算法執(zhí)行(核心計算過程)

按 IIR 濾波遞歸公式對每個通道的采樣數(shù)據(jù)逐點(diǎn)計算,公式為:y(n) = (b0*x(n) + b1*x(n-1) + ... + bN*x(n-N)) - (a1*y(n-1) + ... + aN*y(n-N))

其中:

x (n):當(dāng)前原始采樣值,x (n-1)~x (n-N):歷史原始采樣值(N 為濾波階數(shù),如 8 階取前 8 個值);

y (n):當(dāng)前濾波后值,y (n-1)~y (n-N):歷史濾波后值(需緩存歷史結(jié)果,占用 RAM 資源);

實(shí)現(xiàn)細(xì)節(jié):

在裝置軟件中定義 “歷史數(shù)據(jù)緩存數(shù)組”(如 float x_hist [8]、float y_hist [8]),存儲前 8 個 x 和 y 值;

每采集 1 個新 x (n),先將 x_hist 數(shù)組 “右移”(x_hist [7]=x_hist [6], ..., x_hist [0]=x (n)),y_hist 同理;

代入公式計算 y (n),注意使用 “浮點(diǎn)運(yùn)算”(避免整數(shù)運(yùn)算截斷誤差),高性能 MCU 可啟用硬件 FPU(浮點(diǎn)運(yùn)算單元)加速。

5. 步驟 5:濾波效果驗(yàn)證(判斷是否達(dá)標(biāo))

頻域驗(yàn)證:通過 “快速傅里葉變換(FFT)” 對比濾波前后的頻譜:

濾波前:頻譜中存在 1kHz、5kHz 等高頻干擾峰值;

濾波后:高頻干擾峰值衰減≥40dB(幾乎消失),50Hz 基波、2-50 次諧波峰值無明顯衰減(幅值誤差≤0.1%);

時域驗(yàn)證:查看濾波前后的電壓 / 電流波形:

濾波前:波形存在 “毛刺”(高頻噪聲);

濾波后:波形平滑,無毛刺,且與標(biāo)準(zhǔn)源輸出波形(如純正弦波)對比,偏差≤0.2%(A 級裝置要求)。

6. 步驟 6:結(jié)果輸出與應(yīng)用(對接后續(xù)模塊)

將濾波后的 y (n) 值(如電壓 220.05V、電流 99.98A)存儲至 “濾波后數(shù)據(jù)緩存”,用于:

實(shí)時顯示:在 LCD 屏展示當(dāng)前電壓 / 電流有效值(需進(jìn)一步計算有效值:RMS = sqrt(1/N * sum(y(n)^2)));

暫態(tài)事件監(jiān)測:若濾波后數(shù)據(jù)滿足 “電壓≤85% Un 且持續(xù)≥100ms”,判定為電壓暫降,觸發(fā)報警;

歷史數(shù)據(jù)存儲:按 1 分鐘 / 1 小時間隔統(tǒng)計有效值、諧波等參數(shù),存入 SD 卡或上傳至后臺。

三、其他常用算法實(shí)現(xiàn)步驟(簡化版)

1. 滑動平均濾波(抗瞬時脈沖干擾)

核心邏輯:取連續(xù) M 個采樣點(diǎn)的平均值,平滑瞬時尖峰,步驟:

確定窗口寬度 M:5-10 個采樣點(diǎn)(如 M=5,50Hz 系統(tǒng)采樣率 12.8kHz,5 個點(diǎn)對應(yīng)≈0.39ms,避免延遲過大);

緩存 M 個原始采樣值(如 x1~x5);

新采樣 x6 接入時,移除 x1,加入 x6,計算平均值:y = (x2+x3+x4+x5+x6)/5;

驗(yàn)證:對 100ms 內(nèi)的瞬時尖峰(如電流從 100A 跳至 120A),M=5 時濾波后值約 104A,無明顯跳變。

2. 卡爾曼濾波(抗動態(tài)波動干擾)

核心邏輯:通過 “預(yù)測 - 更新” 迭代,動態(tài)跟蹤真實(shí)值,適用于振動導(dǎo)致的電流波動,步驟:

建立狀態(tài)方程:x(k) = A*x(k-1) + w(k)(A=1,假設(shè)電流緩慢變化;w (k) 為過程噪聲,方差 Q=0.01);

建立觀測方程:z(k) = H*x(k) + v(k)(H=1,觀測值 = 真實(shí)值 + 觀測噪聲;v (k) 方差 R=0.1,基于 ADC 精度);

預(yù)測階段:x_hat(k|k-1) = A*x_hat(k-1|k-1)(預(yù)測當(dāng)前真實(shí)值),P(k|k-1) = A*P(k-1|k-1)*A^T + Q(預(yù)測誤差協(xié)方差);

更新階段:K(k) = P(k|k-1)*H^T/(H*P(k|k-1)*H^T + R)(卡爾曼增益),x_hat(k|k) = x_hat(k|k-1) + K(k)*(z(k)-H*x_hat(k|k-1))(更新真實(shí)值),P(k|k) = (I-K(k)*H)*P(k|k-1)(更新誤差協(xié)方差);

輸出:x_hat(k|k)即為濾波后值,對振動導(dǎo)致的 ±5A 電流波動,濾波后波動可降至 ±0.5A。

四、關(guān)鍵注意事項(xiàng)(避免實(shí)現(xiàn)誤區(qū))

避免濾波延遲過大:高階 IIR(如 16 階)會導(dǎo)致 2-3 個周波延遲,需在 “濾波階數(shù)” 與 “延遲” 間平衡(A 級裝置常用 8 階 IIR,延遲≤1 個周波);

防止數(shù)值溢出:濾波計算中(尤其是 IIR),多組數(shù)據(jù)累加可能超出 MCU 浮點(diǎn)精度范圍,需定期 “歸一化”(如將 y (n) 限制在 ±10V 范圍內(nèi),超出時截斷并標(biāo)記異常);

適配多參數(shù)監(jiān)測:對諧波、暫降等不同參數(shù),需切換濾波算法(如計算諧波時用 “帶通濾波”,捕捉暫降時用 “卡爾曼濾波”),避免單一算法影響多參數(shù)精度;

現(xiàn)場調(diào)試優(yōu)化:若濾波后數(shù)據(jù)仍有干擾,需調(diào)整參數(shù)(如 IIR 截止頻率從 10kHz 降至 5kHz),或結(jié)合硬件措施(如屏蔽線纜),軟件濾波無法完全解決強(qiáng)干擾。

總結(jié):實(shí)現(xiàn)流程的核心邏輯

數(shù)據(jù)濾波算法的實(shí)現(xiàn),本質(zhì)是 “先定義規(guī)則(參數(shù)設(shè)計)→ 再處理數(shù)據(jù)(采集 + 計算)→ 最后驗(yàn)證效果(頻域 + 時域)”,需緊扣 3 個核心:

場景適配:高頻干擾用 IIR 低通,瞬時脈沖用滑動平均,動態(tài)波動用卡爾曼,不盲目追求復(fù)雜算法;

硬件匹配:根據(jù)采樣率、MCU 性能選擇算法復(fù)雜度,避免 “算法先進(jìn)但硬件跑不動”;

精度優(yōu)先:濾波后需保證電能質(zhì)量核心參數(shù)(有效值、諧波、暫降)的測量誤差≤裝置精度等級(A 級≤±0.1%,S 級≤±0.5%)。

實(shí)際操作中,多數(shù)裝置會將濾波算法集成在 “數(shù)據(jù)處理模塊” 中,用戶可通過軟件菜單(如 “濾波配置”)調(diào)整參數(shù)(如窗口寬度、截止頻率),無需手動編寫代碼;若需定制算法(如特殊場景抗干擾),則需結(jié)合 MATLAB/Python 工具設(shè)計系數(shù),再移植到裝置 MCU/FPGA 中。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 濾波算法
    +關(guān)注

    關(guān)注

    2

    文章

    96

    瀏覽量

    14387
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    單片機(jī)ADC采樣算法-中位值平均濾波

    中位值平均濾波濾波法就是通過連續(xù)采樣N個數(shù)據(jù),然后對數(shù)據(jù)從小到大排序,然后去掉最大值和最小值,對剩余的N-2個值計算算數(shù)平均值。也就是中位值濾波
    發(fā)表于 01-22 06:17

    請問CW32 UART用于數(shù)據(jù)收發(fā)的具體過程是怎樣的?

    CW32 UART用于數(shù)據(jù)收發(fā)的具體過程是怎樣的?
    發(fā)表于 12-24 07:42

    ADC的采樣濾波算法利用卡爾曼濾波算法

    ; ADC_OLD_Value = ADC_Value; kalman_adc_old = kalman_adc; return kalman_adc;} 4 如何優(yōu)化 用以上的代碼實(shí)現(xiàn)濾波算法,通常要么滯后
    發(fā)表于 12-01 07:44

    單片機(jī)的算法

    平滑濾波算法 設(shè)置一個數(shù)據(jù)緩存區(qū),每新采集一個數(shù)據(jù)便存入暫存區(qū)中,同時去掉一個最老數(shù)據(jù),保存這N個數(shù)據(jù)
    發(fā)表于 11-28 08:19

    用于單片機(jī)幾種C語言算法

    為克服隨機(jī)干擾引起的誤差,硬件上可采用濾波技術(shù),軟件上可采用軟件算法實(shí)現(xiàn)數(shù)字濾波。濾波算法往往是
    發(fā)表于 11-27 06:00

    海綿密度測試儀的數(shù)據(jù)濾波算法:如何從波動曲線中提取有效值

    傳感器捕捉信號時混入的電子干擾。這些波動并非真實(shí)密度變化,需通過濾波算法提取有效值。 二、濾波算法核心原則 濾波旨在保留有用信號、剔除干擾,
    的頭像 發(fā)表于 11-25 09:31 ?269次閱讀
    海綿密度測試儀的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>濾波</b><b class='flag-5'>算法</b>:如何從波動曲線中提取有效值

    SM4算法實(shí)現(xiàn)分享(一)算法原理

    ,Xi、Yi、rki為字,i=0,1,2,…,31。則本算法的加密實(shí)現(xiàn)為: 本算法的解密實(shí)現(xiàn)與加密實(shí)現(xiàn)結(jié)構(gòu)是相同的,不同的只是提供的輪
    發(fā)表于 10-30 08:10

    復(fù)雜的軟件算法硬件IP核的實(shí)現(xiàn)

    具體方法與步驟 通過 C 語言實(shí)現(xiàn)軟件算法,并驗(yàn)證了算法的有效性以后,就可以進(jìn)行算法的 HDL
    發(fā)表于 10-30 07:02

    如何使用恢復(fù)算法實(shí)現(xiàn)開平方運(yùn)算

    本文主要描述如何使用恢復(fù)算法實(shí)現(xiàn)開平方運(yùn)算。 簡介 開平方的恢復(fù)算法其實(shí)與除法的恢復(fù)算法十分相似。首先我們假設(shè)X為輸入的操作數(shù)(它應(yīng)該為正數(shù)),而他的平方根可以表示為Qn=0.q1
    發(fā)表于 10-24 13:33

    25年11月上海FPGA算法實(shí)現(xiàn)與應(yīng)用技術(shù)高級研修分享

    基帶與數(shù)字中頻數(shù)據(jù)流是整個物理層最核心的內(nèi)容。基帶部分包括bit流的編解碼、調(diào)制解調(diào)、組幀的過程,也包括OFDM信號產(chǎn)生涉及的算法、波束成型算法等。數(shù)字中頻則包括常規(guī)的成型濾波、數(shù)字上
    發(fā)表于 10-11 11:55

    如何利用AI算法進(jìn)行裝置數(shù)據(jù)的異常檢測?

    - 異常閉環(huán)” 的全流程設(shè)計,實(shí)現(xiàn)精準(zhǔn)、高效的異常識別。以下是具體實(shí)施框架與關(guān)鍵步驟: 一、第一步:明確裝置數(shù)據(jù)異常類型與檢測目標(biāo) 在選擇 AI
    的頭像 發(fā)表于 09-05 15:27 ?1861次閱讀
    如何利用AI<b class='flag-5'>算法</b>進(jìn)行裝置<b class='flag-5'>數(shù)據(jù)</b>的異常檢測?

    基于Matlab與FPGA的雙邊濾波算法實(shí)現(xiàn)

    前面發(fā)過中值、均值、高斯濾波的文章,這些只考慮了位置,并沒有考慮相似度。那么雙邊濾波來了,既考慮了位置,有考慮了相似度,對邊緣的保持比前幾個好很多,當(dāng)然實(shí)現(xiàn)上也是復(fù)雜很多。本文將從原理入手,采用Matlab與FPGA設(shè)計
    的頭像 發(fā)表于 07-10 11:28 ?4561次閱讀
    基于Matlab與FPGA的雙邊<b class='flag-5'>濾波</b><b class='flag-5'>算法</b><b class='flag-5'>實(shí)現(xiàn)</b>

    STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(上篇)

    通過STM32與機(jī)智云的連接,開發(fā)者可以實(shí)現(xiàn)設(shè)備的遠(yuǎn)程控制和數(shù)據(jù)管理,提升物聯(lián)網(wǎng)應(yīng)用的智能化水平。本文將介紹STM32與機(jī)智云連接的具體步驟,涵蓋硬件連接、通信協(xié)議配置、數(shù)據(jù)傳輸及云平
    的頭像 發(fā)表于 05-23 18:10 ?1164次閱讀
    STM32與機(jī)智云連接<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>步驟</b>與技巧(上篇)

    藍(lán)牙信標(biāo)RSSI濾波算法

    藍(lán)牙信標(biāo)RSSI濾波算法?主要用于處理RSSI值的不穩(wěn)定性和噪聲,以提高距離估計的準(zhǔn)確性。RSSI(接收信號強(qiáng)度指示)是藍(lán)牙信標(biāo)中常用的參數(shù),用于評估設(shè)備之間的距離或信號質(zhì)量。然而,RSSI值的測量
    的頭像 發(fā)表于 05-12 19:45 ?1019次閱讀
    藍(lán)牙信標(biāo)RSSI<b class='flag-5'>濾波</b><b class='flag-5'>算法</b>

    打開FSP配置器界面的具體步驟

    如果目標(biāo)工程項(xiàng)目是新建的項(xiàng)目,可以直接編譯并通過。但是若是新導(dǎo)入的項(xiàng)目,需要先打開FSP配置界面重新生成FSP庫相關(guān)代碼,然后再進(jìn)行編譯,否則會提示編譯錯誤。具體步驟如下。
    的頭像 發(fā)表于 05-06 15:58 ?1962次閱讀
    打開FSP配置器界面的<b class='flag-5'>具體步驟</b>