ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 28.12.2024
Просмотров: 2923
Скачиваний: 5
СОДЕРЖАНИЕ
В.Г. Новиков моделирование систем
Тема 3. Моделирование динамических процессов с помощью пакета MatLab “Simulink”29
1.2. Ввод и преобразование моделей
1.3.1.1. Примеры анализа во временной области
1.3.1.2. Примеры анализа в частотной области
1.3.2. Примеры анализа во временной области
1.3.3. Примеры анализа в частотной области
1.3.4. Примеры применения процедур для вычисления полюсов и нулей системы
1.4. Задание на самостоятельную работу
1.4.1. Структурная схема модели
1.4.2. Требования к исследованию модели
1.4.3. Исходные параметры модели
1.4.4. Отчетность по лабораторной работе
2.2. Общие средства фильтрации. Формирование случайных процессов
2.2.1. Общие основы линейной фильтрации
2.2.2. Формирование случайных процессов
2.3. Спектральный и статистический анализ
2.3.2. Примеры спектрального анализа
2.4. Задание на самостоятельную работу
2.4.1 Цифровая обработка сигналов
2.4.2. Формирование случайного процесса из белого шума
2.4.3. Формирование процесса как сумма гармоник
2.4.5. Отчетность по лабораторной работе
Тема 3. Моделирование динамических процессов с помощью пакета MatLab “Simulink”
3.1. Краткие сведения о подсистеме MatLab simulink
3.1.1. Запуск подсистемы simulink
3.1.3. Некоторые основные приемы подготовки и редактирования модели
3.5.1. Установка параметров моделирования
3.5.2. Выполнение моделирования
3.2.2.2. Результат составления модели
3.2.3. Результаты моделирования
3.3. Задание на самостоятельную работу
4.1.1. Особенности процессов в линейных нестационарных системах
4.1.2. Особенности процессов в нелинейных сау
4.1.3. Метод фазового пространства
4.2.1. Приведение линейного дифференциального уравнения к канонической форме
4.2.2. Пример исследования нестационарных и нелинейных процессов
4.2.3. Методика формирования модели в системе MatLab
4.2.2.3. Пример результатов исследования
4.3. Задание на самостоятельную работу
5. 2. Пример имитационного моделирования процессов с использованием подсистемы MatLab simulink
5.2.2. Формирование схемы моделирования
5.2.3. Подготовка к имитационному моделированию
5.2.3.1. Настройка блока Random Number - источника случайного сигнала с нормальным распределением.
5.2.3.3. Настройка блока To Workspace - блока записи в рабочую область Matlab
5.2.3.4. Установка параметров моделирования и сохранение модели
5.2.3.5. Представление результатов имитационного моделирования
5.2.4. Результаты моделирования
1.4. Задание на самостоятельную работу
1.4.1. Структурная схема модели
Создать модель системы слежения, представленной на рисунке:
Δ
Н
а
рисунке:
;
;
.
1.4.2. Требования к исследованию модели
Провести исследование системы, при этом:
- оценить временные отклики системы;
- определить реакциюсистемы нагармоническиевоздействия;
- определить полюса и нулисистемы.
Представить соответствующие графики.
Критерием при исследовании должны служить устойчивость системы и показатели качества.
В случае неудовлетворительного качества системы при исходных параметрах (см. таблицу вариантов) выбрать требуемые параметры корректирующего фильтраW1(s) T1, T2, Kпр.
1.4.3. Исходные параметры модели
Исходные параметры заданной системы для каждого варианта заданы в таблице:
|
№ варианта |
T1, c |
T2, c |
T3, c |
T4, c |
Kпр |
Kос |
|
1 |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
4 |
|
|
|
|
|
|
|
5 |
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
7 |
|
|
|
|
|
|
|
8 |
|
|
|
|
|
|
|
9 |
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
11 |
|
|
|
|
|
|
|
12 |
|
|
|
|
|
|
|
13 |
|
|
|
|
|
|
|
14 |
|
|
|
|
|
|
|
15 |
|
|
|
|
|
|
|
16 |
|
|
|
|
|
|
|
17 |
|
|
|
|
|
|
|
18 |
|
|
|
|
|
|
|
19 |
|
|
|
|
|
|
|
20 |
|
|
|
|
|
|
1.4.4. Отчетность по лабораторной работе
Результаты исследований для отчета оформить в текстовом процессоре Wordв соответствии с требованиями ГОСТ к оформлению научно-технической документации.
Тема 2. Цифровая обработка сигналов при Исследовании систем с помощью пакета MatLab “Signal Processing Toolbox”
2.1. Введение
Цифровая обработка сигналов включает в себя создание средств численного преобразования массива заданного (измеренного в дискретные моменты времени) процесса изменения некоторой непрерывнойфизической величиныс целью извлечения из него полезной информации о другой физической величине, содержащейся в измеренном сигнале.
Общая схема образования измеряемого сигнала и процесса его преобразования в целях получения информации о величине, которая должна быть измерена, представлена на рисунке.
Фильтрна рисунке служит для преобразования входного дискретного во времени сигнала в выходной с минимизацией искажений, вызванных шумами.
Пакет MatLab Signal Processing Toolbox позволяет:
- рассчитывать конкретные числовые характеристики цифровых и аналоговых фильтров по требуемым АФЧХ;
- формировать последовательности типовых временных сигналов;
- обрабатывать их при помощи спроектированных фильтров.
2.2. Общие средства фильтрации. Формирование случайных процессов
2.2.1. Общие основы линейной фильтрации
Фильтрация – это преобразование заданного сигнала с помощью линейного фильтра.
Рассмотрим основы линейной фильтрации на примере линейного стационарного фильтра второго порядка, передаточная функция которого имеет вид:
,
(1)
где x -заданный процесс;
y– получаемый на выходе фильтра процесс;
ω0– частота собственных колебаний фильтра;
ξ – относительный коэффициент затухания этого фильтра.
Для контроля и графического представления передаточной функции любого динамического звена удобно использовать процедуру freqs.
В общем случае обращение к ней имеет вид:
h= freqs (b,a,w).
При этом процедура создает вектор hкомплексных значений частотной характеристикиW(jω)по передаточной функцииW(s), заданной векторами коэффициентов ее числителя (b) и знаменателя (a), а также по заданному векторуwчастотыω. Если аргументw не задан, то выбирается 200 отсчетов частоты, для которых вычисляется частотная характеристика.
Пример.
A=1;ξ=0.05; T0 = 2π / ω0=1.
Вычислим значения коэффициентов числителя и знаменателя и выведем графики АЧХ и ФЧХ:
>> T0=1;dz=0.05;
>> om0=2*pi/T0;a=1
>> A=1;
>> a1(1)=1;a1(2)=2*dz*om0;a1(3)=om0^2;b1(1)=A;
>> freqs(b1,a1)
Дискретная передаточная функция, соответствующая непрерывному фильтру (1) (которая может быть получена путем Z- преобразования разностного уравнения - дискретного аналога дифференциального уравнения), имеет вид:
,
(2)
где
=1+2
ξ (ω0Ts)+ (ω0Ts)2;
=
-2 (1+ξ (ω0
Ts));
=1.
В общем случае дискретная передаточная функция имеет вид:
(3)
В системе MatLabфильтрация сигнала, описываемого дискретной передаточной функцией вида осуществляется процедуройfilter следующим образом:
y= filter(b, a, x)
где x – заданный вектор значений входного сигнала;
y – вектор значений выходного сигнала фильтра, получаемого вследствие фильтрации;
b – вектор коэффициентов числителя дискретной передаточной функции (1);
a – вектор коэффициентов знаменателя дискретной этой функции.
Пример
Полезный сигнал имеет синусоидальную форму с известным периодом T1=1cи амплитудойA1= 0.75. сформируем этот сигнал как вектор его значений в дискретные моменты времени с дискретомTs=0.001c:
>> Ts=0.001;
>> t=0:Ts:20;
>> A1=0.75; T1=1;
>> Yp=A1*sin(2*pi*t/T1);
>> plot(t,Yp),grid;
>> title('P-signal');
>> xlabel('t, c');
>> ylabel('Yp')
Пусть вследствие прохождения через преобразователь и в результате измерения к полезному сигналу добавились шумы:
- более высокочастотная синусоида с периодом T2 =0.2cи амплитудойA2=10;
- белый гауссовский шум измерителя с интенсивностью Aш =5.
В результате создается такой измеренный сигнал x(t):
>> T2=0.2;A2=10; eps=pi/4;
>> Ash=5;
>> x=A1*sin(2*pi*t/T1)+A2*sin(2*pi*t/T2+eps)+Ash*randn(1,length(t));
>> plot(t,x), grid
>> title('input')
>> xlabel('t, c')
>> ylabel('x(t)')
Требуется так обработать измеренные данные x, чтобы восстановить по ним полезный процесс как можно точнее.
Т.к. частота полезного сигнала заранее известна, восстановление его можно выполнить при помощи резонансного фильтра вида (2). При этом необходимо создать такой фильтр, чтобы период его собственных колебаний Tф был равен периоду колебаний полезного сигнала (Tф= T1).
Чтобы после прохождения через такой фильтр амплитуда восстановленного сигнала совпадала с амплитудой полезного сигнала, нужно входной сигнал фильтра домножить на постоянную величину 2ξω02 (поскольку при резонансе амплитуда выходного сигнала уменьшается именно во столько раз по сравнению с амплитудой входного сигнала).
Сформируем фильтр, описанный выше:
>> T1=1; Tf=T1;dz=0.05;
>> om0=2*pi/Tf;A=1;oms=om0*Ts;
>> a(1)=1+2*dz*oms+oms^2;
>> a(2)= - 2*(1+dz*oms);
>> a(3)=1;
>> b(1)=A*Ts*Ts*(2*dz*om0^2);
Пропустим сформированный процесс через него:
>> y=filter(b,a,x);
>> plot(t(10002:end),y(10002:end),t(10002:end),Yp(10002:end)),grid
>> title('procesOut(Tf=1,dz=0.05)');
>> xlabel('t, c');
>> ylabel('Y(t)')
В результате получим процесс, приведенный на рисунке.
Из рисунка можно заметить два недостатка:
- восстановленный процесс устанавливается на выходе фильтра только спустя некоторое время вследствие нулевых начальных условий самого фильтра как динамического звена;
- в установившемся режиме наблюдается значительный сдвиг фаз (π/2) между восстанавливаемым и восстановленным процессами.
Для избежания фазовых искажений полезного сигнала при его восстановлении можно воспользоваться процедурой двойной фильтрации – filtfilt, которая осуществляет обработку вектора в два приема: сначала в прямом, а затем в обратном направлении.
Результат представлен ниже.
>> y=filtfilt(b,a,x);
>> plot(t,y,t,Yp),grid;
>> title('procedure FILTFILT (Tf=1,dz=0.05)');
>> xlabel('t, c');
>> ylabel('Y(t)')