Московский Государственный
Институт Электронной Техники
(Технический Университет)
Курсовая работа
по курсу
“ Радиоэлектронника”
Вариант 10
Выполнил: Игошин А.В.
Группа: МП-45
Преподаватель: Кичкин Ю.Н.
Москва 2000 г.
Задание.
I. Тема проекта “ Разработка активного фильтра низких частот на операционном усилителе ”
II. Техническое задание
-
Коэффициент передачи на нулевой частоте равен 10
-
Верхняя граничная частота 230 Гц
-
Частота задерживания 460 Гц
-
Допустимая неравномерность АЧХ в полосе пропускания 1 дБ
-
Затухание при частоте, большей частоты задержки 60 дБ
Теоретическая часть
Фильтры Чебышева имеют передаточную характеристику вида:
(1)
где n – порядок фильтра.
Так как корни знаменателя комплексно-сопряженные, то K(P) может быть представлена в виде:
(2)
В выражениях (1) и (2) Ci ,,- пололжительные действительные коэффициенты; N –целая часть выражения (n+1)/2.
При описании фильтра в частотной области
(3)
где - частота, нормированная относительно частоты среза ;
- амплитудно-частотная характеристика (АЧХ);
- фазово-частотная характеристика (ФЧХ).
АЧХ ФНЧ определяется как модуль передаточной характеристики (2):
(4)
Ниже приводится рисунок АЧХ фильтра Чебышева третьего порядка (в курсовой работе 5-ого порядка). Частота среза ( верхняя граничная частота ) для фильтра Чебышева определяется как частота, на которой АЧХ последний раз проходит через минимальное в полосе пропускания значение.
Расчет ФНЧ.
-
Определение порядка фильтра и количества звеньев.
Т. к. допустимая неравномерность АЧХ в полосе пропускания не равна нулю , то тип фильтра – фильтр Чебышева.
Для удобства дальнейших расчетов проведем предварительные вычисления:
Теперь воспользуемся формулой для расчета порядка фильтра Чебышева:
(1)
Подставляя исходные данные в эту формулу, получаем:
После округления получаем n = 6.
Теперь определяем количество звеньев:
(2)
Т. е. дальше мы будем рассматривать каскадную реализацию фильтра 6-ого порядка в виде соединения 3-х взаимонезависимых звеньев второго порядка.
-
Расчет звена второго порядка на ОУ с единичным усилением.
Характеристика звена второго порядка в общем виде имеет вид:
(3)
Передаточная характеристика звена приведенного на рисунке имеет вид:
(4)
Сравнивая (3) и (4), получаем:
(5)
Коэффициенты и получим из формул:
(6)
Здесь:
(7)
Подставляя исходные данные в систему (7) получаем:
Подставим в систему (6), и изменяя i от 1 до 3, получаем коэффициенты:
Посчитаем добротность по формуле .Максимальное достижение добротности равно : Q=8.003691. Значит, дальше будем производить расчет звена второга порядка на ОУ с единичным усилением. Схема такого звена :
Подбираем номиналы элементов для этой схемы:
1)Выбираем номинальное значение емкости С2 близкое к значению
=0.043478 [мкФ]
По таблице номинальных значений выбираем номинал С2 = 0.0442 мкФ
2) Выбираем номинальное значение емкости С1 такое, что б выполнялось условие
(8)
После вычисления по этой формуле получили следующие ограничения для С1:
0.0190870 мкФ ; 0.0022871 мкФ ; 0.0001722 мкФ
Окончательно выбрали по таблице:
С11 = 0.0187 мкФ
С12 = 0.00226 мкФ
С13 = 0.000169 мкФ
3) Считаем номиналы для R1 и R2
(9)
Получаем значения:
Для первого звена R1= 78674.82 Ом R2 = 59057.39 Ом
Для второго звена R1 = 103439.85 Ом R2 = 83105.51 Ом
Для третьего звена R1 = 293601.99 Ом R2 = 220414.42 Ом
Выбираем номинальные значения по таблице номиналов:
Для первого звена R1 = 82 кОм R2 = 62 кОм
Для второго звена R1 = 105 кОм R2 = 82 кОм
Для третьего звена R1 = 287 кОм R2 = 215 кОм
-
Выбор операционного усилителя.
Выбор ОУ по входному сопротивлению.
Для первого звена вбираю ОУ общего применения 140УД6А с входным сопротивленнием в пределах 2 МГОм.
Для второго звена вбираю ОУ общего применения 140УД6А с входным сопротивленнием в пределах 2 МГОм.
Для третьего звена вбираю ОУ общего применения 140УД6А с входным сопротивленнием в пределах 2 МГОм.
Общая таблица результатов.
Номер звена |
С2 , мкФ |
С1 , мкФ |
R1, кОм |
R2, кОм |
ОУ |
1 |
0.0442 |
0.0187 |
82 |
62 |
140УД6А |
2 |
0.0442 |
0.00226 |
105 |
82 |
140УД6А |
3 |
0.0442 |
0.000172 |
287 |
215 |
140УД6А |
Схема
Приложение.
Ниже приводится текст программы, которую я написал для расчета значений ФНЧ.
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
float n; //порядок фильтра (надо потом округлить, см. ниже)
double N; //количество звеньев
double x,y,z; //вспомогательные переменные
double C2,C1[10],R1[10],R2[10]; //элементы
double a[4],b[4]; //коэффициенты
float Q[4],Qmax; //добротность
const int K_o=10;
int W_c=1445;
int W_z=2890;
int B_c=1;
int B_z=60;
void main()
{
clrscr();
//////////СЧИТАЕМ ПОРЯДОК ФИЛЬТРА/////////////////////////////////
//а) считаем знаменатель дроби
z=W_z/W_c;
y=log(z+sqrt(z*z-1));
//б) считаем числитель дроби
z=sqrt((pow(10,6)-1)*(pow(10,0.1)-1));
x=log(z+sqrt(z*z-1));
// считаем порядок
n=x/y;
cout<<"Порядок фильтра до округления = "<<n<<endl;
//Округляем результат до ближайшего _большего_ целого
n=6; //для моего случая
cout<<"Порядок фильтра после округления = "<<n<<endl;
//определяем количество звеньев
x=modf((n+1)/2,&N);
cout<<"Количество звеньев = "<<N<<endl;
////////Подсчет коэффициентов a[i] и b[i]//////////////////////////
//подсчет угла
x=sqrt(pow(10,0.1)-1);
z=1/x;
y=(log(z+sqrt(z*z+1))/n);
cout<<"Угол для подсчета коэффициентов = "<<y<<endl;
//подсчет коэффициентов
cout<<"Коэффициенты :"<<endl;
for(int i=0; i<N; i++)
{
b[i]=1/(cosh(y)*cosh(y)-cos((2*(i+1)-1)*M_PI/(2*n))*cos((2*(i+1)-1)*M_PI/(2*n)));
a[i]=2*b[i]*sinh(y)*cos((2*(i+1)-1)*M_PI/(2*n));
cout<<"a"<<i<<" = "<<a[i]<<" "<<"b"<<i<<" = "<<b[i]<<endl;
}
///////////////Подсчет добротности////////////////////////////////
cout<<"Массив добротностей: ";
for(i=0; i<N; i++)
{
Q[i]=sqrt(b[i]/(a[i]*a[i]));
cout<<Q[i]<<" ";
}
Qmax=Q[2]; //Для моего конкретного случая это максимальное полученное значение
cout<<endl<<"Добротность равна Q = "<<Qmax<<endl;
///////////////ВЫБОР НОМИНАЛЬНЫХ ЗНАЧЕНИЙ/////////////////////////
// для C2
C2=10/float(230);
cout<<"Приблизительное С2 = "<<C2<<" мкФ"<<endl;
C2=0.0442;
cout<<"Выбранное значение С2 = "<<C2<<" мкФ"<<endl;
//для С1
cout<<"Ограничения для C1: ";
for(i=0; i<N; i++)
{
C1[i]=(a[i]*a[i]*C2)/(4*b[i]);
cout<<C1[i]<<i<<" мкФ ";
}
cout<<endl;
//установка выбранных значений для массива С1
C1[0]=0.0187;
C1[1]=0.00226;
C1[2]=0.000169;
cout<<"Выбранные значение для С1: "<<endl;
for(i=0; i<N; i++) cout<<"C1"<<i+1<<" = "<<C1[i]<<" мкФ ";
cout<<endl;
//расчет R1[i] и R2[i]
cout<<"Приблизительные значения R1 и R2: "<<endl;
for(i=0; i<N; i++)
{
R1[i]=((a[i]*C2+sqrt((a[i]*a[i])*(C2*C2)-4*b[i]*C1[i]*C2))/(2*W_c*C1[i]*C2))*pow(10,6);
R2[i]=((a[i]*C2-sqrt((a[i]*a[i])*(C2*C2)-4*b[i]*C1[i]*C2))/(2*W_c*C1[i]*C2))*pow(10,6);
cout<<"R1"<<i+1<<" = "<<R1[i]<<" Ом "<<"R2"<<i+1<<" = "<<R2[i]<<" Ом"<<endl;
}
//установка выбранных значений для массива С1
R1[0]=82; R2[0]=62;
R1[1]=105; R2[1]=82;
R1[2]=287; R2[2]=215;
cout<<"Выбранные значение для R1 и R2: "<<endl;
for(i=0; i<N; i++)
cout<<"R1"<<i+1<<" = "<<R1[i]<<" кОм "<<"R2"<<i+1<<" = "<<R2[i]<<" кОм"<<endl;
getchar();
}
Используемая литераратура.
Белоусов В.Н. “Конспект лекций”
Кустов В.А. “Методические указания к курсовому проектированию по Радиоэлектроннике”, 1987
Кустов В.А. “Методические указания к курсовому проектированию по Радиоэлектроннике”, 1990