一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

常見的ADC濾波算法、優(yōu)缺點(diǎn)及代碼

strongerHuang ? 來源:strongerHuang ? 作者:strongerHuang ? 2022-11-16 09:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如今傳感器的種類越來越多,數(shù)量也越來越多,而這些傳感器很多都會用到模擬量,模擬量就離不開ADC。

然而,我們單片機(jī)ADC采集的模擬量基本都會經(jīng)過“濾波”處理才能使用,下面給大家分享一些常見的ADC濾波算法。

一、限幅濾波

1、方法

根據(jù)經(jīng)驗(yàn)判斷兩次采樣允許的最大偏差值A(chǔ)

每次采新值時判斷:若本次值與上次值之差<=A,則本次有效;若本次值與上次值之差>A,本次無效,用上次值代替本次。

2、優(yōu)缺點(diǎn)

克服脈沖干擾,無法抑制周期性干擾,平滑度差。

3、代碼

/* A值根據(jù)實(shí)際調(diào),Value有效值,new_Value當(dāng)前采樣值,程序返回有效的實(shí)際值*/
#defineA10
charValue;
charfilter()
{
charnew_Value;
new_Value=get_ad();//獲取采樣值
if(abs(new_Value-Value)>A)returnValue;//abs()取絕對值函數(shù)
returnnew_Value;
}

二、中位值濾波

1、方法

連續(xù)采樣N次,按大小排列

取中間值為本次有效值

2、優(yōu)缺點(diǎn)

克服波動干擾,對溫度等變化緩慢的被測參數(shù)有良好的濾波效果,對速度等快速變化的參數(shù)不宜。

3、代碼

#defineN11
charfilter()
{
charvalue_buf[N];
charcount,i,j,temp;
for(count=0;countvalue_buf[i+1])
{
temp=value_buf[i];
value_buf[i]=value_buf[i+1];
value_buf[i+1]=temp;
}
returnvalue_buf[(N-1)/2];
}

三、算數(shù)平均濾波

1、方法

連續(xù)采樣N次,取平均

N較大時平滑度高,靈敏度低

N較小時平滑度低,靈敏度高

一般N=12

2、優(yōu)缺點(diǎn)

適用于存在隨機(jī)干擾的系統(tǒng),占用RAM多,速度慢。

3、代碼

#defineN12
charfilter()
{
intsum=0;
for(count=0;count

四、遞推平均濾波

1、方法

取N個采樣值形成隊列,先進(jìn)先出

取均值

一般N=4~12

2、優(yōu)缺點(diǎn)

對周期性干擾抑制性好,平滑度高

適用于高頻振動系統(tǒng)

靈敏度低,RAM占用較大,脈沖干擾嚴(yán)重

3、代碼

/* A值根據(jù)實(shí)際調(diào),Value有效值,new_Value當(dāng)前采樣值,程序返回有效的實(shí)際值*/
#defineA10
charValue;
charfilter()
{
charnew_Value;
new_Value=get_ad();//獲取采樣值
if(abs(new_Value-Value)>A)returnValue;//abs()取絕對值函數(shù)
returnnew_Value;
}

五、中位值平均濾波

1、方法

采樣N個值,去掉最大最小

計算N-2的平均值

N= 3~14

2、優(yōu)缺點(diǎn)

融合了中位值,平均值的優(yōu)點(diǎn)

消除脈沖干擾

計算速度慢,RAM占用大

3、代碼

charfilter()
{
charcount,i,j;
charValue_buf[N];
intsum=0;
for(count=0;countValue_buf[i+1])
{
temp=Value_buf[i];
Value_buf[i]=Value_buf[i+1];
Value_buf[i+1]=temp;
}
for(count=1;count

六、限幅平均濾波

1、方法

每次采樣數(shù)據(jù)先限幅后送入隊列

取平均值

2、優(yōu)缺點(diǎn)

融合限幅、均值、隊列的優(yōu)點(diǎn)

消除脈沖干擾,占RAM較多

3、代碼

#defineA10
#defineN12
charvalue,i=0;
charvalue_buf[N];
charfilter()
{
charnew_value,sum=0;
new_value=get_ad();
if(Abs(new_value-value)

七、一階滯后濾波

1、方法

取a=0~1

本次濾波結(jié)果=(1-a)* 本次采樣 + a * 上次結(jié)果

2、優(yōu)缺點(diǎn)

良好一直周期性干擾,適用波動頻率較高場合

靈敏度低,相位滯后

3、代碼

/*為加快程序處理速度,取a=0~100*/
#definea30
charvalue;
charfilter()
{
charnew_value;
new_value=get_ad();
return((100-a)*value+a*new_value);
}

八、加權(quán)遞推平均濾波

1、方法

對遞推平均濾波的改進(jìn),不同時刻的數(shù)據(jù)加以不同權(quán)重,通常越新的數(shù)據(jù)權(quán)重越大,這樣靈敏度高,但平滑度低。

2、優(yōu)缺點(diǎn)

適用有較大滯后時間常數(shù)和采樣周期短的系統(tǒng),對滯后時間常數(shù)小,采樣周期長、變化慢的信號不能迅速反應(yīng)其所受干擾。

3、代碼


/*coe數(shù)組為加權(quán)系數(shù)表*/
#defineN12
charcodecoe[N]={1,2,3,4,5,6,7,8,9,10,11,12};
charcodesum_coe={1+2+3+4+5+6+7+8+9+10+11+12};
charfilter()
{
charcount;
charvalue_buf[N];
intsum=0;
for(count=0;count

九、消抖濾波

1、方法

設(shè)置一個濾波計數(shù)器

將采樣值與當(dāng)前有效值比較

若采樣值=當(dāng)前有效值,則計數(shù)器清0

若采樣值不等于當(dāng)前有效值,則計數(shù)器+1

若計數(shù)器溢出,則采樣值替換當(dāng)前有效值,計數(shù)器清0

2、優(yōu)缺點(diǎn)

對變化慢的信號濾波效果好,變化快的不好

避免臨界值附近的跳動,計數(shù)器溢出時若采到干擾值則無法濾波

3、代碼

#defineN12
charfilter()
{
charcount=0,new_value;
new_value=get_ad();
while(value!=new_value)
{
count++;
if(count>=N)returnnew_value;
new_value=get_ad();
}
returnvalue;
}

十、限幅消抖濾波

1、方法

先限幅 后消抖

2、優(yōu)缺點(diǎn)

融合了限幅、消抖的優(yōu)點(diǎn)

避免引入干擾值,對快速變化的信號不宜

3、代碼


#defineA10
#defineN12
charvalue;
charfilter()
{
charnew_value,count=0;
new_value=get_ad();
while(value!=new_value)
{
if(Abs(value-new_value))>
;count++)> )> ;count++)>;count++)> ;count++)>
聲明:本文內(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)注

    2565

    文章

    53008

    瀏覽量

    767462
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650499
  • adc
    adc
    +關(guān)注

    關(guān)注

    99

    文章

    6709

    瀏覽量

    549230

原文標(biāo)題:單片機(jī)ADC常見的幾種濾波方法

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    PCBA 表面處理:優(yōu)缺點(diǎn)大揭秘,應(yīng)用場景全解析

    的表面處理工藝,不僅能提升PCBA板的焊接質(zhì)量,還能延長其使用壽命。以下將詳細(xì)介紹幾種常見的PCBA表面處理工藝,分析它們的優(yōu)缺點(diǎn)及應(yīng)用場景,幫助您做出最佳的工藝選擇。 PCBA表面處理優(yōu)缺點(diǎn)與應(yīng)用場景 1. HASL(熱風(fēng)整平
    的頭像 發(fā)表于 05-05 09:39 ?480次閱讀
    PCBA 表面處理:<b class='flag-5'>優(yōu)缺點(diǎn)</b>大揭秘,應(yīng)用場景全解析

    香港主機(jī)托管和國內(nèi)主機(jī)的優(yōu)缺點(diǎn)比較

    香港主機(jī)托管和國內(nèi)主機(jī)(以大陸主機(jī)為例)的優(yōu)缺點(diǎn)比較,主機(jī)推薦小編為您整理發(fā)布香港主機(jī)托管和國內(nèi)主機(jī)的優(yōu)缺點(diǎn)比較,希望對您有幫助。
    的頭像 發(fā)表于 02-05 17:42 ?444次閱讀

    東京站群服務(wù)器有哪些優(yōu)缺點(diǎn)

    東京站群服務(wù)器,作為部署在東京地區(qū)的服務(wù)器集群,專為站群優(yōu)化而建,其優(yōu)缺點(diǎn)如下,主機(jī)推薦小編為您整理發(fā)布東京站群服務(wù)器有哪些優(yōu)缺點(diǎn)。
    的頭像 發(fā)表于 02-05 17:39 ?372次閱讀

    不同類型傳感器的優(yōu)缺點(diǎn) 常見傳感器類型及其應(yīng)用

    傳感器作為現(xiàn)代科技的重要組成部分,廣泛應(yīng)用于各個領(lǐng)域。以下是對不同類型傳感器的優(yōu)缺點(diǎn)及其常見應(yīng)用的歸納: 一、常見傳感器類型及其優(yōu)缺點(diǎn) 人體傳感器 優(yōu)點(diǎn) :反應(yīng)迅速,價格便宜,使用廣泛
    的頭像 發(fā)表于 12-06 10:44 ?5104次閱讀

    【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+內(nèi)容簡介

    的浮點(diǎn)建模、定點(diǎn)建模、RTL以及TestBench仿真文件,并在理論上對ADC、頻率、濾波器以及電路結(jié)構(gòu)拓?fù)溥M(jìn)行深入解讀。電路給出了多種可選設(shè)計,并在面積和時序等方面進(jìn)行了優(yōu)缺點(diǎn)分析。第12章介紹
    發(fā)表于 11-21 17:14

    不同類型adc優(yōu)缺點(diǎn)分析

    ADC(模數(shù)轉(zhuǎn)換器)是將模擬信號轉(zhuǎn)換為數(shù)字信號的電路,根據(jù)轉(zhuǎn)換原理和應(yīng)用需求的不同,ADC可以分為多種類型,每種類型都有其獨(dú)特的優(yōu)缺點(diǎn),以下是對不同類型ADC
    的頭像 發(fā)表于 11-19 16:58 ?2902次閱讀

    幾種常見的控制方法及其優(yōu)缺點(diǎn)

    。 溫度控制系統(tǒng)是變參數(shù)、有時滯和隨機(jī)干擾的動態(tài)系統(tǒng),為達(dá)到滿意的控制效果,具有許多控制方法。故對幾種常見的控制方法及其優(yōu)缺點(diǎn)進(jìn)行了分析與比較。
    的頭像 發(fā)表于 11-09 09:57 ?3139次閱讀
    幾種<b class='flag-5'>常見</b>的控制方法及其<b class='flag-5'>優(yōu)缺點(diǎn)</b>

    開環(huán)和閉環(huán)功放的區(qū)別,優(yōu)缺點(diǎn),應(yīng)用場合有什么不同?

    問下TI的工程師,開環(huán)和閉環(huán)功放的區(qū)別,優(yōu)缺點(diǎn),應(yīng)用場合有什么不同?請解釋下,謝謝!
    發(fā)表于 11-04 06:33

    不同類型adc優(yōu)缺點(diǎn)

    型和Flash型等。每種類型的ADC都有其獨(dú)特的優(yōu)缺點(diǎn),適用于不同的應(yīng)用場景。 1. 逐次逼近型(SAR)ADC 優(yōu)點(diǎn): 精度高: SAR ADC通常提供較高的分辨率,適合需要高精度測
    的頭像 發(fā)表于 10-31 11:06 ?2108次閱讀

    STM32的ADC采樣及各式濾波算法實(shí)現(xiàn)

    本文為手把手教學(xué)ADC采樣及各式濾波算法的教程,本教程的MCU采用STM32F103ZET6。以HAL庫的ADC采樣函數(shù)為基礎(chǔ)進(jìn)行教學(xué),通過各式常見
    的頭像 發(fā)表于 10-28 10:51 ?7961次閱讀
    STM32的<b class='flag-5'>ADC</b>采樣及各式<b class='flag-5'>濾波</b><b class='flag-5'>算法</b>實(shí)現(xiàn)

    不同類型UPS電源的優(yōu)缺點(diǎn)

    不間斷電源(UPS)是為關(guān)鍵設(shè)備提供穩(wěn)定、不間斷電力供應(yīng)的重要設(shè)備。根據(jù)設(shè)計和功能的不同,UPS可以分為幾種類型,每種類型都有其獨(dú)特的優(yōu)缺點(diǎn)。以下是一些常見的UPS類型及其優(yōu)缺點(diǎn)的概述: 在線式
    的頭像 發(fā)表于 10-28 10:45 ?1937次閱讀

    常用的ADC濾波算法有哪些

    ADC(模數(shù)轉(zhuǎn)換器)濾波算法在信號處理中起著至關(guān)重要的作用,它們能夠幫助我們提取出有用的信號,同時濾除噪聲和干擾。以下是常用的ADC濾波
    的頭像 發(fā)表于 10-08 14:35 ?1171次閱讀

    雪崩晶體管有哪些優(yōu)缺點(diǎn)

    雪崩晶體管作為一種特殊的半導(dǎo)體器件,在電子領(lǐng)域具有其獨(dú)特的優(yōu)缺點(diǎn)。
    的頭像 發(fā)表于 09-23 18:05 ?743次閱讀

    運(yùn)放恒流源有哪些優(yōu)缺點(diǎn)

    運(yùn)放恒流源,即利用運(yùn)算放大器(Operational Amplifier,簡稱運(yùn)放)構(gòu)成的恒流源電路,具有一系列獨(dú)特的優(yōu)點(diǎn)和缺點(diǎn)。以下是對其優(yōu)缺點(diǎn)的詳細(xì)分析。
    的頭像 發(fā)表于 08-28 10:18 ?2217次閱讀

    卡爾曼濾波優(yōu)缺點(diǎn)有哪些

    卡爾曼濾波(Kalman Filter)是一種線性動態(tài)系統(tǒng)的狀態(tài)估計算法,廣泛應(yīng)用于信號處理、導(dǎo)航、控制等領(lǐng)域。 卡爾曼濾波的優(yōu)點(diǎn) 1.1 高效性 卡爾曼濾波是一種遞歸
    的頭像 發(fā)表于 08-01 15:24 ?4288次閱讀