IIR濾波器與FIR濾波器的特點分析
發布時間:2018-11-30 責任編輯:xueqi
【導讀】IIR濾波器又叫IIR數字濾波器,“遞歸濾波器”。遞歸濾波器,也就是IIR數字濾波器,顧名思義,具有反饋。FIR濾波器:有限長單位衝激響應濾波器,又稱為非遞歸型濾波器,是數字信號處理係統中最基本的元件。
IR濾波器,FIR濾波器和窗口滑動濾波
通常,信號的頻譜處於有限的頻率範圍內,而噪聲的頻譜則散布在很廣的頻率範圍內,為了消除噪聲,可以把FIR濾波器或者IIR濾波器設計成合適的頻帶濾波器,進行頻域濾波。
一般濾波器可以分為經典濾波器和數字濾波器。
經典濾波器:假定輸入信號中的有用成分和希望去除的成分各自占有不同的頻帶。如果信號和噪聲的頻譜相互重迭,經典濾波器無能為力。比如 FIR 和 IIR 濾波器等。
現代濾波器:從含有噪聲的時間序列中估計出信號的某些特征或信號本身。現代濾波器將信號和噪聲都視為隨機信號。包括 Wiener Filter、Kalman Filter、線性預測器、自適應濾波器等
一、IIR濾波器
IIR濾波器又叫IIR數字濾波器,“遞歸濾波器”。遞歸濾波器,也就是IIR數字濾波器,顧名思義,具有反饋。IIR數字濾波器是一類遞歸型的線性時不變因果係統。
特點:
lIR數字濾波器的係統函數可以寫成封閉函數的形式,具有反饋回路;
IIR數字濾波器的相位非線性,相位特性不好控製,隨截止頻率變化而變化,對相位要求較高時,需加相位校準網絡;
IIR濾波器有曆史的輸出參與反饋,同FIR相比在相同階數時取得更好的濾波效果;
IIR數字濾波器采用遞歸型結構,由於運算中的舍入處理,使誤差不斷累積,有時會產生微弱的寄生振蕩。

IIR濾波原理圖
#define Pi 3.1415927f
/**************************************************************************
函數原型:void Calculate_FilteringCoefficient(float Time, float Cut_Off)
功 能:iir低通濾波參數計算
**************************************************************************/
void Calculate_FilteringCoefficient(float Time, float Cut_Off)
{
ACC_IIR_FACTOR = Time /( Time + 1/(2.0f*Pi*Cut_Off) );
// ACC_IIR_FACTOR為IIR濾波器因數
}
/**************************************************************************
函數原型: void ACC_IIR_Filter(struct _acc *Acc_in,struct _acc *Acc_out)
功 能: iir低通濾波
**************************************************************************/
void ACC_IIR_Filter(struct _acc *Acc_in,struct _acc *Acc_out)
{
Acc_out->x = Acc_out->x + ACC_IIR_FACTOR*(Acc_in->x - Acc_out->x);
Acc_out->y = Acc_out->y + ACC_IIR_FACTOR*(Acc_in->y - Acc_out->y);
Acc_out->z = Acc_out->z + ACC_IIR_FACTOR*(Acc_in->z - Acc_out->z);
}
二、FIR濾波器
FIR(Finite Impulse Response)濾波器:有you限xian長chang單dan位wei衝chong激ji響xiang應ying濾lv波bo器qi,又you稱cheng為wei非fei遞di歸gui型xing濾lv波bo器qi,是shi數shu字zi信xin號hao處chu理li係xi統tong中zhong最zui基ji本ben的de元yuan件jian,它ta可ke以yi在zai保bao證zheng任ren意yi幅fu頻pin特te性xing的de同tong時shi具ju有you嚴yan格ge的de線xian性xing相xiang頻pin特te性xing,同tong時shi其qi單dan位wei抽chou樣yang響xiang應ying是shi有you限xian長chang的de,因yin而er濾lv波bo器qi是shi穩wen定ding的de係xi統tong。因yin此ci,FIR濾波器在通信、圖像處理、模式識別等領域都有著廣泛的應用。
特點:
FIR濾波器的最主要的特點是沒有反饋回路,穩定性強,故不存在不穩定的問題;
FIR具有嚴格的線性相位,幅度特性隨意設置的同時,保證精確的線性相位;
FIR設計方式是線性的,硬件容易實現;
FIR相對IIR濾波器而言,相同性能指標時,階次較高,對CPU的性能要去較高。

FIR濾波原理圖
三、滑動窗口濾波
滑動平均濾波算法隻采樣一次,將一次采樣值和過去的若幹次采樣值一起求平均,得到的有效采樣值即可投入使用。如果取N個采樣值求平均,存儲區中必須開辟N個數據的暫存區。每新采集一個數據便存入暫存區中,同時去掉一個最老數據,保存這N個數據始終是最新更新的數據。采用環型隊列結構可以方便地實現這種數據存放方式。
#define Filter_Num 2
/**************************************************************************
函數原型: void Gyro_Filter(struct _gyro *Gyro_in,struct _gyro *Gyro_out)
功 能: gyro窗口滑動濾波
**************************************************************************/
void Gyro_Filter(struct _gyro *Gyro_in,struct _gyro *Gyro_out)
{
static int16_t Filter_x[Filter_Num],Filter_y[Filter_Num],Filter_z[Filter_Num];
static uint8_t Filter_count;
int32_t Filter_sum_x=0,Filter_sum_y=0,Filter_sum_z=0;
uint8_t i=0;
Filter_x[Filter_count] = Gyro_in->x;
Filter_y[Filter_count] = Gyro_in->y;
Filter_z[Filter_count] = Gyro_in->z;
for(i=0;i<Filter_Num;i++)
{
Filter_sum_x += Filter_x[i];
Filter_sum_y += Filter_y[i];
Filter_sum_z += Filter_z[i];
}
Gyro_out->x = Filter_sum_x / Filter_Num;
Gyro_out->y = Filter_sum_y / Filter_Num;
Gyro_out->z = Filter_sum_z / Filter_Num;
Filter_count++;
if(Filter_count == Filter_Num)
Filter_count=0;
}
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
- 從技術研發到規模量產:恩智浦第三代成像雷達平台,賦能下一代自動駕駛!
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智
貝能科技
背板連接器
背光器件
編碼器型號
便攜產品
便攜醫療
變容二極管
變壓器
檳城電子
並網
撥動開關
玻璃釉電容
剝線機
薄膜電容
薄膜電阻
薄膜開關
捕魚器
步進電機
測力傳感器
測試測量
測試設備
拆解
場效應管
超霸科技


