
- •В.Г. Новиков моделирование систем
- •Коломна 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: []