КОМПЬЮТЕР РАДИОЛЮБИТЕЛЯ
Далее была создана функция FNGENERATORO( ),
которая была сохранена в файле FNGENERATORO.M
в рабочем каталоге MATLAB.
Листинг файла FNGENERATORO.M приведен на
врезке 4.
В листинге файла FNGENERATORO.M:
- значение L1 определяет величину индуктивности ка-
тушки (индуктивности). Так, при L1=0.1 можно считать,
что величина индуктивности составляет 0,1 Генри;
- значение С1 определяет величину емкости кон-
денсатора. С1=0.1, и можно считать, что величина
емкости составляет 0,1 Фарад;
- значение Е1 определяет ЭДС идеальной батареи
(источника напряжения), имеющейся в схеме. В нача-
ле наших численных экспериментов Е1=0,35, т.е. мож-
но считать, что в схеме имеется идеальная батарея,
всегда обеспечивающая ЭДС, равную 0,35 В.
Поскольку туннельный диод (см. его ВАХ на рис. 2)
можно считать “смещенным” изначально на участок
+0,35 V, это упрощает процесс составления системы
дифференциальных уравнений, так как не рассматри-
вается специально отдельная батарея (см.выше);
F(1)=.
.. описывает правую часть дифференциаль-
ного уравнения (15);
F(2)=.
.. описывает правую часть дифференциаль-
ного уравнения (16);
Х(1) - ток через катушку индуктивности lL;
Х(2) - напряжение на конденсаторе 1)с.
Далее
следует
определение
функции
TUNNELDIODE1(), которая определяет ВАХ туннель-
ного диода (см. листинг, врезка 1). Было решено по-
местить определение ВАХ туннельного диода также в
файле FNGENERATORO.M (читается FNGENERATOR
ноль. М) только с целью удобства, чтобы все опреде-
ления были сосредоточены в небольшом количестве
файлов.
И, наконец, в рабочем каталоге MATLAB был создан
файл GENERATOR0.M (читается GENERATOR ноль. М).
Листинг файла GENERATOR0.M приведен на врезке 5.
<
Данный файл, в свою очередь, обращается к фун-
кциям ODE1 (из файла ODE1.M) и FNGENERATOR0
(из файла FNGENERATORO.M).
Таким образом, в файле GENERATOR0.M находит-
ся определение функции GENERATOR0().
Если в командном окне MATLAB теперь наберем
(команду) GENERATOR0 и нажмем ENTER, то начнет-
ся процесс моделирования работы LC-генератора на
туннельном диоде.
При анализе листинга GENERATOR0.M видно, что
начальный момент времени моделирования принят за
ноль секунд, а конечный момент времени моделиро-
вания составляет 30 секунд.
Также видно, что в начальный момент времени (т.е.
при запуске генератора) ток через катушку индуктив-
ности был задан величиной 0,1 А (Ампер) при нуле-
вом (Вольт) напряжении на конденсаторе. Значения
выбраны произвольно, но тем не менее позволили
получить реальные результаты моделирования (с точки
function F=FNGENERATOR0(Т ,Х );
врезка 4
%
OT50DJ : 9 JULY 2008 .
. .
%
PROGRAMM FOR MATLAB 5 .2 OR MORE .
.
.
L1=0.1;
C1=0.1;
E1=0.35;
E^zeros (2 ,1 );
F(1)=X(2)
./L I;
F(2) = (TUNNELDI0DE1(-X(2)+E1) ~X(1) )
./C l;
function
ID=TUNNELDIODEl(OT>);
A1=0.3;
A2=10.0;
B l= l. OE-8;
B2=20.0;
ID=A1. *Ш . *exp (-A 2. *OT>) +B1. *exp(B2. *O D -l. Q) ;
function GENERATORO;
врезка 5
%
UT50DJ : 9 JULY 20 08 .
..
%
PROGRAMM FOR MATLAB 5.2 OR MORE.
..
[T,X]=ODEl("FNGENERATORO' ,[0 3 0 ],(0 .1 0],750) ;
p lo t(T ,X (: ,1) ,'r');
%
p lo t(T ,X (: ,2) , 'r ') ;
%
%
plot(X(:,l),X(:,2),'r');
%
%
p lo t3 (T ,X (: ,1) ,X(: ,2) ,'r ');
%
g rid on
зрения самого процесса осцилляции). Число разбие-
ний N=750 и время моделирования (интегрирования)
Т=30 сек. сохранялись при всех численных экспери-
ментах.
В данном случае: plot(T,X(:,1),' г ') означает постро-
ение зависимости тока, протекающего через катушку
индуктивности, от времени линией красного цвета, а
строка, начинающаяся со знака % (процента) в MATLAB
представляет собой комментарий, и, таким образом,
другие виды графиков в данный момент не строятся.
Однако остальные графики будут построены в
дальнейшем, поэтому коротко их прокомментируем
(см. листинг).
plot(T,X(:,2),' г ') - это зависимость напряжения на
конденсаторе от времени;
plot(X(:,1),X(:,2),'r') - зависимость между током че-
рез катушку индуктивности и напряжением на конден-
саторе;
plot3(T,X(:,1),Х(:,2 ),'г') - трехмерный график, свя-
зывающий между собой время, ток через катушку ин-
дуктивности и напряжение на конденсаторе.
Теперь, внося соответствующие изменения в файлы
GENERATOR0.
.M и FNGENERATORO.M, можно проводить
различные численные эксперименты с нашей моделью.
Результаты экспериментов удобно сводить к графичес-
ким зависимостям (прежде всего для наглядности).
Файлы ODE1.M; FNGENERATORO.M; GENERATOR0.M
(файл
matlabj5-1 .zip)
вы можете загрузить с сайта нашего
журнала:
www.radioliga.com (раздел “Программы”)
§ Ц
Продолжение в N912/2008
^Радиолюбитель- I 1/2008
46
предыдущая страница 46 Радиолюбитель 2008-11 читать онлайн следующая страница 48 Радиолюбитель 2008-11 читать онлайн Домой Выключить/включить текст