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

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

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

Добавлен: 28.12.2024

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

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

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

СОДЕРЖАНИЕ

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

Коломна 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. Отчетность

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

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

Создать модель движения системы (торпеды) в горизонтальном канале, состоящую из подмодели углового движениявокруг вертикальной оси и из подмодели цепиуправления.

При этом подмодель углового движенияможет быть представлена в виде двух последовательно соединенных звеньев:

- апериодического

и

- интегрирующего

.

В свою очередь подмодель цепи управленияможет быть представлена в виде двух параллельно соединенных частей:

– части, управляемой гироскопом направления и представляющей собой обычное усилительное звено K;

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

Соответствующая структурная схема имеет вид, представленный на рисунке,

где M– момент внешних сил относительно вертикали;

ω - угловая скорость торпеды;

ψ– угол поворота торпеды вокруг вертикали (угол рыскания).

Mу– момент управляющих сил, создаваемый при помощи рулей управления.

Решение.

Подмодель углового движения:

>> W1=tf(25,[100 50])

Transfer function:

25

---------------

100 s + 50

>> W2=tf(1, [1 0])

Transfer function:

1

---.

s

Последовательное соединение этих звеньев можно осуществить двумя способами:

– применением процедуры series:

>> W0=series(W1, W2)

Transfer function:

25

---------------------;

100 s^2 + 50 s

- либо просто операцией “перемножения” моделей:

>> W01=W1*W2

Transfer function:

25

----------------------.

100 s^2 + 50 s

Теперь сформируем цепь управления, входом которой является угол рыскания торпеды ψ, а выходом – моментMу, накладываемый на торпеду со стороны ее рулей направления.


Усилительное звено:

>> K=tf(2,1)

Transfer function:

2

Дифференцирующе-колебательное звено W3:

>> W3=tf([100 0], [1 10 100])

Transfer function:

100 s

-----------------------.

s^2 + 10 s + 100

Параллельноесоединение этих двух звеньев управления можно осуществить тоже двумя способами:

- либо используя процедуру parallel

>> U1=parallel(K,W3)

Transfer function:

2 s^2 + 120 s + 200

-------------------

s^2 + 10 s + 100

- либо применяя операцию “сложения” моделей

>> U=K+W3

Transfer function:

2 s^2 + 120 s + 200

------------------------.

s^2 + 10 s + 100

Теперь найдем модель всей САУ угловым движением торпеды, рассматривая цепь управления как цепь отрицательной обратной связи для торпеды, пользуясь для объединения прямой и обратной цепи процедурой feedback:

>> sys=feedback(W01,U)

Transfer function:

25 s^2 + 250 s + 2500

-------------------------------------------------------------------.

100 s^4 + 1050 s^3 + 10550 s^2 + 8000 s + 5000

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

>> set(sys,'InputName','Момент сил', 'OutputName','Угол рыскания')

>> set(sys,'Notes','Угловое движение торпеды')

>> get(sys)

num: {[0 0 25 250 2.5e+003]}

den: {[100 1.05e+003 1.06e+004 8e+003 5e+003]}

Variable: 's'

Ts: 0

ioDelay: 0

InputDelay: 0

OutputDelay: 0

InputName: {'Момент сил'}

OutputName: {'Угол рыскания'}

InputGroup: [1x1 struct]

OutputGroup: [1x1 struct]

Notes: {'Угловое движение торпеды'}

UserData: []


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

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

Пакет CONTROLпредоставляет пакет процедур для осуществления анализа САУ, прежде всего, для определения отклика системы на внешние воздействия как во временной, так и в частотной областях.

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

Для нахождения временныхоткликов системы на внешние воздействия некоторых видов предусмотрены функции:

impulse Нахождение отклика на импульсное входное воздействие.

step Нахождение реакции системы на единичный скачок входного воздействия.

initial Определение собственного движения системы при произвольных начальных условиях.

lsim Определение реакции системы на входное воздействие произвольной формы, задаваемое в виде вектора его значений во времени.

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

Группа процедур для представления реакции системы на гармонические воздействия в частотной области:

bode Строит график АЧХ и ФЧХ (диаграмму Боде) указанной системы.

nyquist Строит в комплексной плоскости график АФХ разомкнутой системы в полярных декартовых координатах.

nichols Строит карту Николса системы, т.е. график АФХ разомкнутой системы в декартовых координатах.

sigma Строит график зависимости от частоты сингулярных значений системы; обычно совпадает с АЧХ системы.

margin Строит диаграмму Боде с указанием запасов по амплитуде и по фазе.

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

pole Расчет полюсов системы.

zpkdata Расчет полюсов, нулей и коэффициента передачи системы.

pzmap Построение на комплексной плоскости карты расположения нулей и полюсов системы.

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

Применяя процедуру stepк созданной в п. 2.2модели,

>> step(sys)

можно получить график

Аналогично, использование процедуры impulse

>> impulse(sys)

приведет к появлению в графическом окне графика, приведенного ниже:


При применении процедуры initial необходимо в число входных параметров включить, во-первых, полный вектор всех начальных условий по переменным состояния, а, во-вторых, момент времени окончания процесса интегрирования.

>> sssys=ss(sys)

>> initial(sssys,[0 0 0 1],20)

Получим

Для применения процедуры lsim необходимо предварительно задать векторtзначений времени, в которых будут заданы значения входного воздействия, а затем задать векторuзначений входной величины в указанные моменты времени

>> t=0:0.01:40; u=sin(t); lsim(sssys,u,t);grid

Результат представлен на следующей фигуре:

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

>> bode(sys)

>> nyquist(sys)

>> nichols(sys)

>> sigma(sys)

>> margin(sys);grid

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

>> pole(sys)

ans =

-4.8653 + 8.5924i

-4.8653 - 8.5924i

-0.3847 + 0.6040i

-0.3847 - 0.6040i

>> sysz=zpk(sys)

Zero/pole/gain from input "Момент сил" to output "Угол рыскания":

0.25 (s^2 + 10s + 100)

------------------------------------------------

(s^2 + 0.7693s + 0.5128) (s^2 + 9.731s + 97.5)

>> [z,p,k]=zpkdata(sysz,'v')

z =

-5.0000 + 8.6603i

-5.0000 - 8.6603i

p =

-4.8653 + 8.5924i

-4.8653 - 8.5924i

-0.3847 + 0.6040i

-0.3847 - 0.6040i

k =

0.2500

>> pzmap(sys); grid

Результат представлен на рисунке ниже