Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Моделирование инженерных систем и технологических процессов. Учебное пособие.pdf
X
- •ОГЛАВЛЕНИЕ
- •ВВЕДЕНИЕ В MATLAB
- •ПОСТРОЕНИЕ ГРАФИКОВ
- •СИМВОЛЬНЫЕ ВЫЧИСЛЕНИЯ
- •СИСТЕМНЫЙ АНАЛИЗ В MATLAB
- •ПРАКТИЧЕСКАЯ РАБОТА № 1
- •ПРАКТИЧЕСКАЯ РАБОТА № 2
- •ПРАКТИЧЕСКАЯ РАБОТА № 3
- •ПРАКТИЧЕСКАЯ РАБОТА № 4
- •ПРАКТИЧЕСКАЯ РАБОТА № 5
- •ПРАКТИЧЕСКАЯ РАБОТА № 6
- •ПРАКТИЧЕСКАЯ РАБОТА № 7
- •ПРАКТИЧЕСКАЯ РАБОТА № 8
- •ПРАКТИЧЕСКАЯ РАБОТА № 9
- •ПРАКТИЧЕСКАЯ РАБОТА № 10
- •ПРАКТИЧЕСКАЯ РАБОТА № 11
- •ПРАКТИЧЕСКАЯ РАБОТА № 12

Рис. 23.2. Результаты работы программы
-20 -15 -10 -5
0 5 10 15 20
0
2
4
t
x(t)
-20 -15 -10 -5 0 5 10
15 20
0
5
10
t
y(t)
-20 -15 -10 -5
0 5 10 15 20
0
50
100
t
cr(t)
51

ОСНОВЫ МОДЕЛИРОВАНИЯ СИСТЕМ
АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ В SIMULINK
Simulink представляет собой графическую (блок-схема) среду
программирования для моделирования, имитации и анализа динамических систем.
Его можно открыть, нажав кнопку на панели инструментов
Simulink окна Matlab или путем ввода Simulink в командном окне.
На следующем рисунке показаны Simulink Library Browser и вид
окна.
Рис. 24. Окно Simulink
Все блоки можно найти в Simulink Library Browser, которые
вставляются в модельное окно путем перетаскивания. Параметры
блока можно изменить с помощью двойного щелчка. Блоки соединяются линиями. Блок можно скопировать, щелкнув правой кнопкой
мыши на нем и перетащив его.
Моделирование можно запустить, нажав на кнопку Run на панели
инструментов. По умолчанию время моделирования 10s. Это, наряду
с другими параметрами моделирования могут быть сконфигурировано в Simulation → Configuration Parameters...
52

Моделирование систем автоматического управления в MatLab
Simulink
Пример 1:
Этот пример показывает некоторые из общих блоков из библио-
теки Simulink, используемые в Matlab для автоматизации.
В классе Sources содержатся различные типы источников: шаг,
наклон, пульс, синусоиду, земля, константа и т.д. Step используется
в этом примере. Его параметры (шаг по времени, начальное значение, конечное значение) могут быть изменены с помощью двойного
щелчка. В этом примере шаг по времени 1s, Начальное значение
равно 0 и конечное значение равно 10.
Рис. 25. Блок Step и его параметры
В классе Continuous находятся блоки, используемые для обработ-
ки непрерывных сигналов. Два вида блоков этого класса используются в этом примере: tra nsfer functio n и zero-pole. Параметры блоков
могут быть изменены двойным нажатием на их изображении. Какой
блок следует выбрать, зависит от системы, которая исследуется.
53

Рис. 26. Блок Transfer function и его параметры
Рис. 27. Блок Zero-pole и его параметры
54

В классе Sinks различные типы выходных дисплеев. Display и
Scope используются в данном примере. Scope — тип дисплея, анало-
гичный осциллографу. На панели инструментов есть кнопка автомасштаба, которая применяет шкалу осей в соответствии с максимальным и минимальным значениями сигнала. Один осциллограф
может иметь несколько графиков. Их количество можно изменить в
опции Number of axes в Parameters/General.
В классе Signal routing находятся блоки, используемые для обра-
ботки сигналов. Mux (мультиплексор) и demux (демультиплексор)
используются в данном примере.
Рис. 28. Схема модели
В этом примере первое, что было сделано — передаточная функ-
ция шага сигнала. Denumenator cofficients — [1 2]. Результат отображается на Scope.
55

Рис. 29. Окно Scope
Как можно видеть, запаздывание — 1s и со временем значение
приближается к 5.
Блоки могут быть помещены в последовательном соединении.
Результат последовательного соединения двух блоков, отображается
на Scope 1. Система становится медленнее с повышением порядка.
Рис. 30. Окно Scope1
Несколько блоков может быть сгруппировано внутри одной под-
системы. Это можно сделать, выбрав все нужный блок, щелкнув
правой кнопкой мыши и выбрав Create Subsystem.
56

Другой способ представления этой функции в один блок transfer
function. Результат этого способа показан на Scope 2, со значением
коэффициента усиления 10. Gain является одним из многих блоков в
математическом классе операций, которые используются в системах
автоматизации. Zero-pole блок имеет ту же функцию передачи. Усиление устанавливается 10 и полюса [–2 –2]. Для того чтобы наложить больше сигналов на одном графике можно использовать
multiplexer (мультиплексор). Все ранее показанные сигналы на
Scope3.
Рис. 31. Окно Scope3
Demultiplexer (демультиплексор) используется для разделения
пучка сигналов. Это делается в этом примере и сигналы передаются
на дисплей, рабочее пространство и файл.
>> plot(simout.time,simout.signals.values)
Simulink имеет связь с рабочей областью Matlab, поэтому все пе-
ременные, объявленные в нем могут быть использованы в Simulink.
Команда sim (‘название модели’, значение переменных) имити-
рует модель Simulink.
57

Пример № 2
Рис. 32. Схема системы и окна Scope
Синусоида может быть представлена различными способами.
Один из них – по средствам блока Sin Wave. Выходные данные
можно увидеть на Scope. Амплитуду и частоту можно изменять в
параметрах. В этом примере частота равна 2*пи.
a b
Рис. 33. Схема системы (а) и окно Scope (b)
Другой способ заключается в использовании блока Clock и
Function или MATLAB function блок. Название нужной функции
Matlab следует включить в параметры функции MATLAB. Если
функция создана пользователем, то она должна быть внутри теку-
58

щей папки. Вывод созданного пользователем синусоидальной функции показан на Scope1 и он такой же, как и в Scope:
function [x] = Untitled(t)
x=sin(2*pi*t)
end
a b
Рис. 34. Схема системы (а) и окно Scope (b)
Рис. 35. Схема системы
В function блоке необходимо прописать выражение функции.
Сложение и вычитание сигналов отображаются посредством блока
Add. Результаты для схемы выше показаны на Scope 2, Scope3 и
Scope4.
Рис. 36. Окна Scope
59

Рис. 37. Схема системы
Работа блока zero-hold из Discrete class. У первого блока пара-
метр sample time 1s, у второго 0.2s и третьего 0.0001s. Результаты
показаны вместе на Scope5:
Рис. 38. Окно Scope
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
