На рисунке показаны LC-фильтр нижних частот и его цифровой аналог: Здесь Т – элемент задержки на один период дискретизации, a0, a1, a2, b1, b2 – коэффициенты фильтра, k1 – нормирующий коэффициент (например, для того чтобы установить общее единичное усиление на нулевой частоте). В отличие от аналогового фильтра амплитудно-частотная характеристика (АЧХ) цифрового всегда является периодической с периодом равным частоте дискретизации fd = 1/T. Поэтому частоту дискретизации перед аналого-цифровым преобразованием выбирают как минимум вдвое больше верхней частоты аналогового сигнала. Выбором fd и расчётами можно добиться, чтобы АЧХ цифрового фильтра практически полностью соответствовала частоте аналогового фильтра до определённой частоты fc. РасчётПорядок расчёта параметров фильтра:1. Задаём частоту дискретизации fd 2. Задаём частоту среза цифрового фильтра на уровне 0.707 (-3 дБ) - fc 3. Копируем расчётный текст из Расчётного блока в буфер 4. Запускаем калькулятор 5. Копируем из буфера расчётный текст в окно калькулятора 6. Нажимаем кнопку вычислить и получаем результат: Расчётный блок:
fd = 1000 ; частота дискретизации
fc_dig = 100 ;частота среза цифрового фильтр fc_an = (fd/pi)*tg(pi*fc_dig/fd) ; частота среза аналогового фильтра прототипа fc_an = sqr(2)*fc_an wc_an = 2*pi*fc_an ;расчёт коэффициентов аналогового фильтра-прототипа c0 = 1 c1 = 0 c2 = 0 d0 = 1 d1 = 2/wc_an d2 = 2/wc_an^2 ; расчёт коэффициентов цифрового фильтра q = 2*fd c1 = q*c1 c2 = q^2*c2 d1 = q*d1 d2 = q^2*d2 ;собственно коэффициенты a0 = c0 + c1 + c2 a1 = 2*(c0 - c2) a2 = c0 - c1 + c2 k1 = 1/(d0 + d1 + d2) b1 = - 2*(d0 - d2)*k1 b2 = - (d0 - d1 + d2)*k1 val(a0,a1,a2,k1,b1,b2): a0 = 1, a1 = 2, a2 = 1, k1 = 0.06746, b1 = 1.14298, b2 = -0.4128 ;расчёт амплитудно-частотной характеристики фильтра ; основной цикл f = 0 [ w = 2*pi*f/fd ch = a0^2 + a1^2 + a2^2 + 2*(a1*a2 + a1*a0)*cos(w) + 2*a0*a2*cos(2*w) zn = 1 + b1^2 + b2^2 + 2*(b1*b2 - b1)*cos(w) - 2*b2*cos(2*w) k = k1*sqr(ch/zn) val(f,k) f = f + 10 {f>400 exit} ] Подставляя новые задаваемые параметры fd и fc_dig, получаем новые результаты. Помимо параметров фильтра будет выведена таблица значений АЧХ фильтра f k 0 1 10 1 20 0.999 30 0.996 40 0.989 50 0.973 60 0.945 70 0.904 80 0.848 90 0.781 100 0.707 110 0.632 120 0.559 130 0.491 140 0.43 150 0.377 160 0.33 170 0.289 180 0.254 190 0.223 200 0.196 210 0.173 220 0.152 230 0.135 240 0.119 250 0.105 260 0.093 270 0.082 280 0.072 290 0.063 300 0.056 310 0.049 320 0.042 330 0.037 340 0.032 350 0.027 360 0.023 370 0.02 380 0.017 390 0.014 400 0.011В графическом окне калькулятора будет показан график данной АЧХ.
|