ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 23.01.2025

Просмотров: 2510

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

В.Г. Новиков моделирование систем

Коломна 2007

Тема 1. Исследование линейных стационарных систем с помощью пакета прикладных программ MatLab “Control Sistem Toolbox” (“Система управления”)6

Тема 2. Цифровая обработка сигналов при Исследовании систем с помощью пакета MatLab “Signal Processing Toolbox”17

Тема 3. Моделирование динамических процессов с помощью пакета MatLab “Simulink”29

Тема 4. Моделирование процессов в линейных нестационарных динамических системах с использованием подсистемы MatLab “Simulink”40

Тема 5. Имитационное моделирование процессов в динамических системах с использованием подсистемы MatLab “Simulink”53

Введение

Тема 1. Исследование линейных стационарных систем с помощью пакета прикладных программ MatLab “Control Sistem Toolbox” (“Система управления”)

1.1. Введение

1.2. Ввод и преобразование моделей

1.2.1. Основные положения

1.2.2. Пример создания модели

1.3. Анализ системы

1.3.1. Общие положения

1.3.1.1. Примеры анализа во временной области

1.3.1.2. Примеры анализа в частотной области

1.3.1.3. Процедуры, вычисляющие отдельные характеристики и графически показывающие расположение полюсов и нулей системы

1.3.2. Примеры анализа во временной области

1.3.3. Примеры анализа в частотной области

1.3.4. Примеры применения процедур для вычисления полюсов и нулей системы

1.4. Задание на самостоятельную работу

1.4.1. Структурная схема модели

1.4.2. Требования к исследованию модели

1.4.3. Исходные параметры модели

1.4.4. Отчетность по лабораторной работе

Тема 2. Цифровая обработка сигналов при Исследовании систем с помощью пакета MatLab “Signal Processing Toolbox”

2.1. Введение

2.2. Общие средства фильтрации. Формирование случайных процессов

2.2.1. Общие основы линейной фильтрации

2.2.2. Формирование случайных процессов

2.3. Спектральный и статистический анализ

2.3.1. Основные понятия

2.3.2. Примеры спектрального анализа

2.4. Задание на самостоятельную работу

2.4.1 Цифровая обработка сигналов

2.4.2. Формирование случайного процесса из белого шума

2.4.3. Формирование процесса как сумма гармоник

2.4.4. Исходные данные

2.4.5. Отчетность по лабораторной работе

Тема 3. Моделирование динамических процессов с помощью пакета MatLab “Simulink”

3.1. Краткие сведения о подсистеме MatLab simulink

3.1.1. Запуск подсистемы simulink

3.1.2. Создание модели

3.1.3. Некоторые основные приемы подготовки и редактирования модели

3.5.1. Установка параметров моделирования

3.5.2. Выполнение моделирования

3.2.2.2. Результат составления модели

3.2.3. Результаты моделирования

3.3. Задание на самостоятельную работу

3.3.2.3. Отчетность

Тема 4. Моделирование процессов в линейных нестационарных динамических системах с использованием подсистемы MatLab “Simulink”

4.1. Краткие сведения из теории линейных нестационарных и нелинейных систем автоматического управления

4.1.1. Особенности процессов в линейных нестационарных системах

4.1.2. Особенности процессов в нелинейных сау

4.1.3. Метод фазового пространства

4.2. Моделирования процессов в линейных нестационарных и нелинейных динамических системах с использованием подсистемы MatLab simulink

4.2.1. Приведение линейного дифференциального уравнения к канонической форме

4.2.2. Пример исследования нестационарных и нелинейных процессов

4.2.2.1. Постановка задачи

4.2.3. Методика формирования модели в системе MatLab

4.2.2.3. Пример результатов исследования

4.3. Задание на самостоятельную работу

4.3.1. Исходная система

4.3.2. Требования к работе

4.3.3. Отчетность

Тема 5. Имитационное моделирование процессов в динамических системах с использованием подсистемы MatLab “Simulink”

5. 1. Введение

5. 2. Пример имитационного моделирования процессов с использованием подсистемы MatLab simulink

5.2.1. Постановка задачи

5.2.2. Формирование схемы моделирования

5.2.3. Подготовка к имитационному моделированию

5.2.3.1. Настройка блока Random Number - источника случайного сигнала с нормальным распределением.

5.2.3.2. Настройка блока Uniform Rundom Number - источника случайного сигнала с равномерным распределением

5.2.3.3. Настройка блока To Workspace - блока записи в рабочую область Matlab

5.2.3.4. Установка параметров моделирования и сохранение модели

5.2.3.5. Представление результатов имитационного моделирования

5.2.4. Результаты моделирования

5.3. Задание на самостоятельную работу

5.3.1. Исходная схема

5.3.2. Требования к работе

5.3.3. Отчетность

Использованные источники

2.2.2. Формирование случайных процессов

Сформировать случайный процесс с заданной корреляционной функцией можно, если:

- сначала сформировать случайный процесс, являющийся нормально распределенным белым шумом,

- а затем “пропустить его через некоторое динамическое звено (формирующий фильтр)”.

На выходе такого звена получается нормально распределенный случайный процесс с корреляционной функцией, вид которой определяется типом формирующего фильтра.

Белый гауссовый шум в MatLabобразуется при помощи процедурыrandn.

Для этого достаточно задать дискрет времени Ts, образовать с этим шагом массив (вектор)t моментов времени в нужном диапазоне, а затем сформировать по указанной процедуре вектор-столбец длиной, равной длине вектораt.

Например

>> Ts=0.01;

>> t=0:Ts:20;

>> x1=randn(1,length(t));

>> plot(t,x1),grid;

>> title('Gaus(T=0.01c)');

>> xlabel('t, c');

>> ylabel('X1(t)')

Соответствующий процесс имеет вид:

Для другого дискрета Ts=0.001с имеем

>> Ts=0.001;

>> t=0:Ts:20;

>> x2=randn(1,length(t));

>> plot(t,x2),grid;

>> title('Gaus Ts=0.001 c');

>> xlabel('t, c');

>> ylabel('X2(t)')

Создадим дискретный формирующий фильтр второго порядка с частотой собственных колебаний ω0= 2π рад\с =1 Гц и относительным коэффициентом колебаний затуханияξ=0.05 по выражениям (2) коэффициентов:

>> om0=2*pi;dz=0.05;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*2*dz*oms^2;

Пропустим образованный процесс x1через созданный формирующий фильтр:

>> y1=filter(b,a,x1);

Построим соответствующий график:

Аналогичные операции произведем с процессом x2(t)

>> x2=randn(1,length(t));

>> Ts=0.001;

>> om0=2*pi;dz=0.05;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*2*dz*oms^2;

>> y2=filter(b,a,x2);t=0:Ts:20;

>> plot(t,y2),grid;

>> title('procedure (T0=1;dz=0.05;Ts=0.001)');

>> xlabel('t, c');

>> ylabel('Y1(t)')

Как видим, на выходе формирующего фильтра действительно образуется случайный колебательный процесс с преобладающей частотой 1 Гц.

2.3. Спектральный и статистический анализ

2.3.1. Основные понятия

Основная задача спектрального анализа сигналов – выявление гармонического спектра этих сигналов, т.е. определение частот гармонических составляющих сигнала (выявление частотного спектра), амплитуд этих гармонических составляющих (амплитудного спектра) и их начальных фаз (фазового спектра).

В основе спектрального анализа лежит теория Фурье о возможности разложениялюбого периодического процесса на счетную сумму отдельных гармонических составляющих.

Процедуры fftи ifft осуществляют преобразования заданного вектора, соответствующиедискретному прямому (fftFast Fourier Transformation) и обратному (ifftInvers Fast Fourier Transformation) преобразованиям Фурье.

Обращение к этим функциям

y=fft(x,n); x=ifft(y,n)

приводит к формированию вектора y в первом случае, и вектораx- во втором, по формулам:

(4)

где n– число элементов заданного вектораx; jмнимая единица.

2.3.2. Примеры спектрального анализа

Входной сигнал представим в виде вектора, элементы которого равны значениям функции, являющейся суммой двух синусоид с частотами 5 и 12 Гц. Найти Фурье-изображение этого сигнала и вывести графики входного процесса и модуля его Фурье-изображения:

>> t=0:0.001:2;

>> x=sin(2*pi*5*t)+cos(2*pi*12*t);

>> plot(t,x),grid;

>> title('input');

>> xlabel('t, c');

>> ylabel('X(t)')

>> y=fft(x);

>> a=abs(y);

>> plot(a);grid;

>> title('fourier');


>> xlabel('number');

>> ylabel('absF(X(t))')

Теперь осуществим обратное преобразование с помощью функции ifft:

>> z=ifft(y);

>> plot(t,z), grid;

>> title('inverse');xlabel('number');

>> xlabel('t, c');

>> ylabel('Z(t))')

Как следует из последнего рисунка, воспроизведенный процесс в точности совпадает с исходным.

Из выражений (4) можно заметить:

- номер mсоответствует моменту времениtm , в который измерен входной сигналx(m);

- номер k – это индекс значения частотыfk, которому соответствует найденный элементy(k)дискретного преобразования Фурье;

- для перехода от индексов к временной и частотной областям, необходимо знать значение шага h дискрета времени, через который измерен входной сигналx(t), и промежутокTвремени, на протяжении которого он измерен; тогда дискрет по частоте в изображении Фурье определяется выражением

Df=1/T,

а диапазон изменения частоты – выражением

F=1/h.

Так в нашем примере Df=0.5, F= 1000.

- Фурье - изображение определяется функцией fftтолько для положительных частот в диапазоне от0доF, что неудобно для построения графиков Фурье – изображения от частоты; более удобным является переход к вектору Фурье – изображения, определенному в диапазоне частот[-F/2 - F/2].

Сформируем для данного примера массив частот и выведем график с аргументом частотой

>> f=0:0.5:1000;

>> plot(f,a)'grid;

>> plot(f,a);grid;

>> title('F(x)');xlabel('friquency, Hz');

>> ylabel('abs(F(X))')

На рисунке трудно различить частоты (5 и 12 Гц), с которыми колеблется входной сигнал.

Для установления истинного спектра входного сигнала необходимо вначале преобразовать полученный вектор y Фурье – изображения с помощью процедурыfftshift. Она предназначена для формирования нового вектораz из заданногоу путем перестановки второй половины векторау в первую половину вектораz


>> f1=-500:0.5:500;

>> v=fftshift(y);

>> a=abs(v);

>> plot(f1(970:1030),a(970:1030));grid;

>> title('F/N');

>> xlabel('friquency, Hz');

>> ylabel('abs(F(X))/N')

Из графика видно, что в спектре входного сигнала есть две гармоники- 5 и 12 Гц.

Неудобным является то, что по графику невозможно определить амплитуду этих гармоник. Чтобы сделать это, необходимо весь вектор yразделить на число его элементовN:

>> N=length(y);

>> a=abs(v)/N;

>> plot(f1(970:1030),a(970:1030));grid;

>> title('F/N');

>> xlabel('friquency, Hz');

>> ylabel('abs(F(X))/N')


2.4. Задание на самостоятельную работу

2.4.1 Цифровая обработка сигналов

Провести цифровую обработку сигналов системы.

На выходе системы измеряемый сигнал x(t)представляет собой сумму трех сигналов:

x(t) = x0(t) + x1(t) + xш(t),

где x0(t)=A0 sin[(2π/T0) t] - измеряемый (полезный) сигнал;

x1(t) = A1 sin[(2π/T1) t] – регулярный шум преобразователя;

xш(t) – шум измерений, с интенсивностьюAш.

Подобрать дискретный фильтр второго порядка вида (2) с параметрами Aф, ξфпри условии, что период его собственных колебаний равен периоду колебаний полезного сигнала, а выделяемый сигнал максимально воспроизводит полезный сигнал.

Представить все соответствующие графики.

2.4.2. Формирование случайного процесса из белого шума

Сформировать случайный процесс из белого шума, используя формирующий фильтр второго порядка вида (2) с частотой собственных колебаний fфф и относительным коэффициентом колебаний затуханияξфф.

Представить все соответствующие графики.

2.4.3. Формирование процесса как сумма гармоник

Сформировать процесс на выходе системы следующего вида:

x(t) = x2(t) + x3(t) + x4(t),

где x2(t)=A2 sin[(2π*f2* t];

x3(t)=A3 sin[(2π*f3* t];

x4(t)=A4 sin[(2π*f4* t];

Выполнить спектральный анализ сигнала на выходе системы.

2.4.4. Исходные данные

Исходные параметры для исследований для каждого варианта заданы в таблице.

2.4.5. Отчетность по лабораторной работе

Результаты исследований для отчета оформить в текстовом процессоре Word.