Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Моделирование измерительных задач в среде MATLAB + Simulink. Учебное пособие
.pdf
ПРИМЕРЫ РАЗРАБОТКИ ПРИЛОЖЕНИЙ В MATLAB + SIMULINK
break
else
a = x2;
x = bisect(@Ywmax,x1,x2,1);
if ~isnan(x)
nroots = nroots + 1;
root(nroots) = x;
end
end
end
if nroots==2
w1=root(1);
w2=root(2);
QQ=wr1/(w2-w1);
Y1=Yw(w1);
Y2=Yw(w2);
plot([0.8*wr 1.2*wr], [0.7*Ymax 0.7*Ymax],’k’)
plot([wr1 wr1], [Ymax 0],’k--’)
plot([w1 w1], [Y1 0],’k--’)
plot([w2 w2], [Y2 0],’k--’)
else
w1=0;
w2=0;
QQ=0;
end
hold off
set(handles.wr1,’String’, wr1);
set(handles.wa1,’String’, (w2-w1));
set(handles.ke1,’String’, QQ);
Вспомогательная функция Ywmax, являющаяся, по сути,
функцией зависимости модуля проводимости от частоты, толь
ко опущенная на 0,7 от своего максимального значения, обеспечивает возможность найти разность частот на уровне 0,7
функции модуля проводимости как расстояние между корнями
функции Ywmax:
function res = Ywmax(w)
91

МОДУЛЬ 2
global R L C C0 Ymax
G = R./(R^2+(w.*L-1./(w.*C)).^2);
B = w.*C0-(w.*L-1./(w.*C))./(R^2+(w.*L-1./(w.*C)).^2);
res=(G.^2+B.^2).^0.5-0.7*Ymax;
Пример 3. Определение добротности по частотной характе
-
ристике активной составляющей проводимости в области резонанса. Этот пример предполагает самостоятельную работу сту-
дента. Поэтому в этой части учебного пособия даются в основном рекомендации по решению задачи.
Создание компьютерной модели измерений в Simulink
Возможный вариант модели приведен на рис. 36 и состоит из
электрической схемы и группы объединенных приборов для по
-
лучения резонансной кривой. Использованы следующие обозначения: 1 – генератор сигналов с линейно-возрастающей частотой; 2 – электрическая RLC-цепь; 3 – операционный усилитель
с изменяемым коэффициентом усиления; 4 – блок перемноже
-
ния синусоидальных сигналов; 5 – аналоговый фильтр низких
частот Бесселя; 6 – осциллограф; 7 – блок записи данных в
массив переменных.
Рис. 36. Разработанная в Simulink компьютерная модель
измерений
Алгоритм работы модели заключается в следующем. Бло-
ком 1 задаются характеристики генерируемого синусоидаль-
92

ПРИМЕРЫ РАЗРАБОТКИ ПРИЛОЖЕНИЙ В MATLAB + SIMULINK
ного сигнала с линейно возрастающей частотой, которая охватывает резонансную область. Генерированный сигнал подается на цепь 2, состоящую из двух колебательных контуров –
последовательного RLC, в котором возникает резонанс, и параллельного RLCC0, где возникает антирезонанс. После снятия электрического сигнала со вспомогательного резистора R0
необходимо провести его усиление с помощью блока 2 Gain.
Данный блок компенсирует уменьшение амплитуды сигна
ла на выходе умножителя сигналов 3 в два раза. Далее осуществляется перемножение в блоке 4 Product полученного
сигнала с сигналом от генератора Chirp signal. Блоки 3 и 4
совместно представляют собой синхронный детектор, который
формирует на выходе активную составляющую проводимости
RLC-цепи. Сигнал с детектора поступает на фильтр низких ча
стот Бесселя 5. Выбор этого фильтра связан с тем, что он имеет достаточно равномерные АЧХ, их спад более пологий, чем
у других.
Сигнал на выходе фильтра является искомым выходным сиг
налом. Далее при помощи блока 7 записываются данные, поступающие на его вход, в отдельный автоматически создаваемый
файл в виде массива. В рабочей области MATLAB осуществля
ется чтение этого файла. И наконец, блок 6 представляет собой
осциллограф, в рабочем поле которого отображается получен
ный сигнал.
Создание интерфейса в GUIDE
Работа в среде GUIDE достаточно проста и интуитивно по
нятна – все возможные элементы управления, такие как кнопки, текстовые поля и раскрывающиеся списки, находятся в
специальной библиотеке. Они размещаются на рабочем поле
GUIDE путем их перетаскивания из библиотеки мышью. Далее
при помощи автоматически генерируемого кода осуществляет
ся программирование событий, которые возникают при обращении пользователя к данным элементам управления (функции
кнопок и полей).
93

МОДУЛЬ 2
Созданный при помощи GUIDE интерфейс должен содержать
ряд элементов.
Первая область – Chirp Signal, при помощи которой осущест
вляется управление блоком Controlled voltage source в составе компьютерной модели. В области находятся элементы ввода значений начальной частоты f1, конечной частоты f2, времени T.
Вторая область – Series RLC Branch, при помощи которой
задаются параметры электрической RLC-цепочки в составе схе
мы Simulink. В ней находятся элементы для ввода значений
сопротивления (Resistance), индуктивности (Inductance) и емко
сти (Capacitance).
Должны быть предусмотрены кнопки «Проведение измере
ний» и «Расчет». При нажатии на кнопку «Проведение измерений» запускается модель компьютерного эксперимента, которая разработана в Simulink. Для запуска расчета требуемых
значений предназначена кнопка «Расчет».
Третья область – для отображения в графической форме ре
зультата работы модели, созданной в Simulink.
Четвертая область предназначена для вывода результатов,
которые будут отображаться после нажатия на кнопку «Рас
чет». Обычно она расположена в нижней части интерфейса.
Требования к разработке программного кода
Объединение воедино созданного в GUIDE пользовательского
интерфейса (окна для ввода данных) и созданной в Simulink
модели осуществляется в отдельном, созданном автоматически
файле. При проведении разработки графического интерфейса
пользователя, создании модели, требующих управления конфи
гурацией, параметрами и работой модели, необходимо использовать специальные команды языка MATLAB. Так, при помощи таких команд имеется возможность запускать и завершать
модель, осуществлять запуск процесса расчета, редактировать
блоки, изменять параметры составляющих модель компонентов
и осуществлять иные операции с моделью.
94

ПРИМЕРЫ РАЗРАБОТКИ ПРИЛОЖЕНИЙ В MATLAB + SIMULINK
В области, где осуществляется кодирование, выполняется
самая важная часть работы всей программы. В ней при помо
щи команд языка MATLAB описываются действия с сигналами, полученными из других приложений MATLAB. Так, в этой
области проводятся операции над массивами, которые были
записаны Simulink, описываются действия кнопок в GUIDE и
указывается путь вывода рассчитанных данных. При помощи
кода описываются требуемые для нахождения искомых значе
ний математические действия, иными словами, приведенные
ранее формулы записываются на языке MATLAB.
2.3. Моделирование измерений во временной
области
Воздействие ЛЧМ-импульсом
Воспользуемся воздействием на цепь ЛЧМ-импульсом. Он
отличается тем, что частота синусоидального заполнения вну
три импульса изменяется по линейному закону. При этом для
определения полной комплексной проводимости электрической
схемы (см. рис. 28) начальная частота ЛЧМ-сигнала долж
на быть ниже частоты резонанса, а верхняя – выше частоты
антирезонанса. В момент воздействия этого ЛЧМ-сигнала нужно зарегистрировать сигнал-отклик и применить к нему алгоритм быстрого преобразования Фурье.
Основное отличие такого подхода от непосредственных изме
рений состоит в следующем. При непосредственном измерении
частотной характеристики проводимости возбуждение электри
ческой схемы синусоидальным сигналом происходит последовательно во времени на каждой частоте, и одновременно с этим
на каждой частоте измеряется реакция. В случае воздействия
ЛЧМ-сигналом электрическая схема возбуждается одновре
менно всеми синусоидальными составляющими равномерного
спектра радиоимпульса, а к отклику в момент воздействия при
меняется процедура, реализующая спектральный анализ через
алгоритм БПФ.
95

МОДУЛЬ 2
s
Пусть U0 – напряжение воздействия, U – напряжения сигна-
ла-отклика, R0 – дополнительный резистор.
По значениям U
найти комплексную проводимость Y = Z
где величины U0 и U предполагаются комплексными.
При реализации аналогового способа измерений формирует
ся синусоидальное напряжение заданной частоты, измеряются
(ω)|, |U(ω)| и их разность фаз. ЛЧМ-сигнал позволяет возбу-
|U
0
ждать исследуемую цепь широкополосным сигналом, спектр
которого охватывает заданную область частот. Сигнал с линей
ной частотной модуляцией имеет вид:
где A – амплитуда сигнала; f0 – начальная частота; f1 – конечная частота; T – длительность сигнала.
При этом ширина спектра сигнала Δf = f
то s(t) переходит в обычный радиоимпульс.
(ω) и U(ω), измеренным на частоте ω, можно
0
ω
U
1
ω 1,
Y
sin 2π ,
t A tf t
0
RU
0
0
ω
ff
–1
10
2
T
по формуле:
– f0. Если f1 = f0,
1
-
-
Моделирование измерительного процесса при помощи
Simulink
Перед построением модели необходимо предварительно за
грузить систему MATLAB и запустить Simulink. Запуск выполняется из командного окна MATLAB, для чего необходимо
подвести курсор мыши к кнопке запуска этой программы, на
ходящейся в верхней части окна, и щелкнуть левой клавишей
мыши либо набрать в командном окне команду simulink. В том
и другом случае откроется окно системы просмотра библиотек
Simulink Library Browser (рис. 37). В верхней части этого окна
две крайние левые кнопки служат соответственно для создания
новой и открытия существующей модели.
96
-
-

ПРИМЕРЫ РАЗРАБОТКИ ПРИЛОЖЕНИЙ В MATLAB + SIMULINK
Рис. 37. Simulink Library Browser
После нажатия левой кнопки на экране появится окно для
построения новой модели. Процесс построения модели Simulink
включает ее компоновку и задание необходимых параметров.
Компоновка заключается в выборе из библиотек Simulink необ
ходимых блоков, их размещении в открывшемся окне и соединении между собой.
Процедура поиска и перемещения блоков из библиотек
Simulink в окно модели во многом напоминает операции ко
пирования и перемещения файлов в среде Windows. В частности, технология работы с Simulink Library Browser аналогична работе с Проводником Windows. Для перемещения курсор
мыши устанавливается на нужный блок. Затем, нажав левую
клавишу мыши, блок перемещают в окно модели. Кроме непо
-
97

МОДУЛЬ 2
средственного просмотра содержимого библиотек, любой блок
может быть найден по имени (если оно известно), введенному в
текстовое поле, расположенное в правой верхней части Simulink
Library Browser.
На рис. 38 приведена структурная схема измерений. Рассмо
-
трим поэтапно процесс ее построения.
Рис. 38. Структурная схема измерений
Для формирования ЛЧМ-сигнала используем блок Chirp
Signal из библиотеки Simulink – Sources, а для формирования
электрического сигнала соединим его с блоком Controlled Voltage
Source из библиотеки SimPowerSystems – Electrical Sources. Да
-
лее построим электрическую схему RLC-цепи и дополнительного резистора R0. Для этого из библиотеки SimPowerSystems –
Elements воспользуемся блоком Series RLC Branch. Данный
блок в общем случае позволяет задать последовательное соеди
-
нение резистора, конденсатора и катушки индуктивности, но
98

ПРИМЕРЫ РАЗРАБОТКИ ПРИЛОЖЕНИЙ В MATLAB + SIMULINK
его можно использовать и для задания любого из этих элементов в отдельности. Для этого необходимо лишь положить величины остальных компонентов равными нулю (для резистора и катушки) либо бесконечности – inf (для конденсатора).
Для снятия результатов моделирования необходимо установить
монитор, задаваемый блоком Floating Scope из библиотеки
Simulink – Sinks, однако между электронной схемой и монито
ром необходимо добавить еще один блок – Voltage Measurement
из библиотеки SimPowerSystems – Measurements, осуществляю
щий преобразование электрического напряжения в сигнал. Дополнительно к блоку Voltage Measurement подключается «земля» – Ground из SimPowerSystems – Connectors.
Для объединения блоков в систему необходимо соединить их
входные и выходные порты, которые на пиктограммах блоков
отмечены значком «>». Чтобы соединить два блока между со
бой, надо подвести курсор мыши к порту одного из соединяемых блоков, нажать левую клавишу мыши и, удерживая ее в
нажатом положении, переместить курсор к порту другого бло
ка, после чего отпустить удерживаемую клавишу.
Следующим шагом после построения модели является зада
ние параметров входящих в нее блоков. Для этого надо дважды щелкнуть левой клавишей мыши по выбранному блоку.
В результате откроется окно, в котором показаны значения параметров, введенные ранее или установленные по умолчанию.
Зададим параметры генератора ЛЧМ-сигналов и электрической
схемы, например:
• Параметры генератора ЛЧМ-сигнала:
– начальная частота ЛЧМ-сигнала – 40 кГц;
– длительность импульса – 0,5 с;
– конечная частота ЛЧМ-сигнала – 70 кГц.
• Параметры электрической схемы:
– 1000 Ом;
– R
0
– 10–8 Ф;
– C
0
–9
– C – 10
Ф;
– L – 0,01 Гн;
– R – 100 Ом.
99

МОДУЛЬ 2
После этого необходимо также задать параметры моделирования в главном меню Simulation – Simulation Parameters.
Эти параметры определяются по умолчанию, однако необходи
мо корректировать некоторые из них для задания необходимой
точности и длительности вычислений. В нашем примере зада
дим: Simulation time: start time – 0.0; stop time – 0.5; max. step
size – 1e-6; min. step size 0.9e-6.
Для запуска процесса моделирования необходимо нажать
кнопку ► либо выбрать из главного меню Simulation – Start.
По окончании расчетов будем наблюдать сигналы, снимае
мые с элементов схемы. В частности, зависимость для Scope2
приведена на рис. 39.
Рис. 39. Зависимость, снимаемая с монитора Scope2
Далее необходимо провести преобразования Фурье от сигна-
лов, снимаемых со Scope1 и Scope2 и обозначаемые в дальнейшем как U0 и U соответственно. Эта задача может быть решена
различными способами. Здесь будет рассмотрен один из них,
использующий перенос данных из Simulink с дальнейшими рас
четами непосредственно с помощью аппарата MATLAB.
Для этого проведем настройки параметров мониторов следу
ющим образом: откроем окно монитора и вызовем настройку
параметров, используя иконку в левой верхней части экрана;
откроем вторую вкладку появившегося меню, отключим ограни
чение на количество записываемых данных (Limit data points) и
100
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
