Синтез и анализ цифровых фильтров с использованием программного пакета MatLab. - 3 стр.

UptoLike

- 3 -
3. Нули и полюсы аналогового фильтра-прототипа и их
преобразование в коэффициенты передаточной функции
Если вам известны нули и полюсы аналогового фильтра-прототипа, а не
коэффициенты передаточной функции, то прежде нужно ввести нули и
полюсы, а затем преобразовать их в коэффициенты, используя специальную
функцию преобразования, имеющуюся в MatLab. Далее можно построить
графики частотных характеристик. Например, известны полюсы
p
1
=-0.2+0.5i и p
2
=-0.2-0.5i, а также нули z
1
=0.1i и z
2
=-0.1i. Осуществляем
ввод:
>> p=[-0.2+0.5i -0.2-0.5i]’;
>> z=[0.1i -0.1i]’;
>> k=5;
Здесь k - коэффициент, стоящий перед всей дробью передаточной
функции (его можно выбрать произвольно, если нет иных соображений).
Символ (апостроф), поставленный после закрывающей квадратной скобки,
означает транспонирование. При этом вектор-строка преобразуется в вектор-
столбец. (В MatLab принято полюсы и нули задавать вектор-столбцами, а
коэффициенты передаточной функции вектор-строками.)
Далее производим преобразование полюсов и нулей в коэффициенты
передаточной функции:
>> [b,a]= zp2tf (z,p,k);
Здесь bстрока коэффициентов числителя, aстрока коэффициентов
знаменателя передаточной функции фильтра.
Диаграмму нулей и полюсов можно вывести, если задать следующие
команды:
>> plot (p,’x’)
>> hold on
>> plot (z,’o’)
>> hold off
>> axis equal
>> axis ([-1 1 -1 1])
                                   - 3-

3. Нули и полюсы аналогового фильтра-прототипа и их
преобразование в коэффициенты передаточной функции

   Если вам известны нули и полюсы аналогового фильтра-прототипа, а не
коэффициенты передаточной функции, то прежде нужно ввести нули и
полюсы, а затем преобразовать их в коэффициенты, используя специальную
функцию преобразования, имеющуюся в MatLab. Далее можно построить
графики частотных характеристик. Например, известны полюсы
p1=-0.2+0.5i и p2=-0.2-0.5i, а также нули z1=0.1i и z2=-0.1i. Осуществляем
ввод:

>> p=[-0.2+0.5i -0.2-0.5i]’;
>> z=[0.1i -0.1i]’;
>> k=5;

   Здесь k - коэффициент, стоящий перед всей дробью передаточной
функции (его можно выбрать произвольно, если нет иных соображений).
Символ ‘ (апостроф), поставленный после закрывающей квадратной скобки,
означает транспонирование. При этом вектор-строка преобразуется в вектор-
столбец. (В MatLab принято полюсы и нули задавать вектор-столбцами, а
коэффициенты передаточной функции вектор-строками.)
   Далее производим преобразование полюсов и нулей в коэффициенты
передаточной функции:

>> [b,a]= zp2tf (z,p,k);

   Здесь b – строка коэффициентов числителя, a – строка коэффициентов
знаменателя передаточной функции фильтра.
   Диаграмму нулей и полюсов можно вывести, если задать следующие
команды:

>>   plot (p,’x’)
>>   hold on
>>   plot (z,’o’)
>>   hold off
>>   axis equal
>>   axis ([-1 1 -1 1])