Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теория автоматического управления. Методические указания к выполнению расчетно-графической работы по дисциплине «Теория автоматического управления» дл
.pdf
Уничтожение определенных переменных
В памяти компьютера переменные занимают определенное место, назы-
ваемое рабочей областью (workspace). Для очистки рабочей области используется функция clear в разных формах, например:
- clear — уничтожение определений всех переменных;
- clear x — уничтожение определения переменной х;
- clear x, y — уничтожение определений нескольких переменных.
Уничтоженная переменная становится неопределенной и обращение к
ней приведет к появлению сообщений об ошибке.
Операторы
Оператор — это специальное обозначение для определенной операции
над данными — операндами. Простейшими арифметическими операторами яв-
ляются знаки сложения «+», вычитания «–», умножения «*» и деления «/».
Операторы используются совместно с операндами. Например, в выражении
«2+3» знак «+» является оператором сложения, а числа 2 и 3 — операндами.
Следует отметить, что большинство операторов относится к матричным
операциям, что может служить причиной серьезных недоразумений. Например,
операторы умножения «*» и деления «/» вычисляют произведение и частое от
деления двух массивов, векторов или матриц. Есть ряд специальных операто-
ров, например оператор «\» означает деление справа налево, а операторы «.*» и
«./» означают, соответственно, поэлементное умножение и поэлементное деле-
ние массивов.
Очень часто необходимо произвести формирование упорядоченных числовых последовательностей. Такие последовательности нужны, например, для
создания векторов со значениями абсциссы при построении графиков или со-
здании таблиц. Для этого используется оператор « : » (двоеточие) в виде:
Начальное_значение : Шаг : Конечное_значение.
Данная конструкция создает возрастающую последовательность чисел,
которая начинается с начального значения, идет с заданным шагом и завершается конечным значением. Если «Шаг» не задан, то он принимает значение
равное «1». Если конечное значение указано меньшим, чем начальное значе-
ние — выдается сообщение об ошибке.
Матрицы
MATLAB — система, специально предназначенная для проведения слож-
ных вычислений с векторами, матрицами и массивами. При этом она по умол-
чанию предполагает, что каждая заданная переменная — это вектор, матрица
или массив. Если надо задать вектор из трех элементов, то их значения следует
перечислять в квадратных скобках, разделяя пробелами. Например:
31

>> V=[1 2 3]
V =
1 2 3
Задание матрицы требуется указания нескольких строк. Для разграничения строк используется знак « ; » (точка с запятой). Этот же знак в конце ввода
предотвращает вывод любой операции на экран. Таким образом, формирование
матрицы в программе MATLAB имеет вид:
>> D=[1 2 3; 4 5 6; 7 8 9]
D =
1 2 3
4 5 6
7 8 9
Для нахождения определителя матрицы в программе MATLAB используется команда «det». Например:
>> A=[1 2 3; 4 5 6; 7 8 9]
>> det(A)
ans =
6.6613e-16
Построение графика функций
Для построения графика функций в MATLAB можно воспользоваться
командой «plot» с указанием переменных по осям координат. Так построение
графика будет иметь вид:
% задание интервала изменения аргумента по оси Х
>> x=0:0.5:10;
% задание рассматриваемой зависимости, график которой необходимо
построить
>> y=x.^3;
% задание команды на построение графика функции
>> plot(x,y)
Результат построения графика представлен на рис. 19.
32

1s3s
43s
W
2
1s0,7s
s
W
2
10,7ss
0s
W
2
Рис. 19. График функции у=х3
Создание передаточной функции
Команда «tf» создает объект, который представляет собой непрерывную
передаточную функцию. Для ее применения необходимо задать
«Имя_функции», и коэффициенты числителя и знаменателя рассматриваемой
передаточной функции, которые записываются в «[ ]» (квадратных скобках) и
отделяются друг от друга запятой. Например, при построении передаточной
функции
процедура в MATLAB будет иметь вид:
>> W=tf([3 4],[1 3 1])
W =
3 s + 4
------------------
s^2 + 3 s + 1
Следует отметить, что при формировании передаточной функции коэффициенты необходимо располагать в порядке уменьшения степени числителя
или знаменателя передаточной функции. Если какой либо член уравнения отсутствует, то при формировании передаточной функции необходимо использовать коэффициент равный нулю. Например, формирование передаточной функ-
ции
предполагает приведение ее к каноническому виду
. В противном случае MATLAB будет создавать передаточные
функции отличные от требуемой.
33

% вариант передаточной функции без необходимых преобразований
1s
3s
W
2
1
1s
1
W
2
>> W=tf([1], [0.7 1 1])
W =
1
-------------------
0.7 s^2 + s + 1
% вариант передаточной функции при изменении расположения значений знаменателя
W=tf([1], [1 0.7 1])
W =
1
-------------------
s^2 + 0.7 s + 1
% правильный вариант задания передаточной функции
>> W=tf([1 0], [1 0.7 1])
W =
s
-------------------
s^2 + 0.7 s + 1
Преобразование последовательно соединенных звеньев
Для преобразования последовательно соединенных звеньев используется
функция «series()», которая осуществляет умножение соответствующих передаточных функций. Передаточные функции, которые необходимо преобразовать
указываются в скобках через запятую. Например: структурная схема системы
управления состоит из двух последовательно соединенных звеньев имеющих
соответственно передаточные функции
и
.
>> W1=tf([3 0], [1 0 1])
W1 =
3 s
----------
s^2 + 1
>> W2=tf([1], [1 1])
W2 =
1
34

-------
s + 1
>>W=series(W1, W2)
W =
3 s
-----------------
s^3 + s^2 + s + 1
Другим вариантом преобразования последовательно расположенных зве-
ньев является применения знака «*» (умножения). В этом случае процедура
преобразования в MATLAB будет иметь вид:
>> W1=tf([3 0], [1 0 1])
W1 =
3 s
----------
s^2 + 1
>> W2=tf([1], [1 1])
W2 =
1
-------
s + 1
>> W=W1*W2
W =
3 s
----------------------
s^3 + s^2 + s + 1
Два рассмотренных примера подтверждают равноправность применения
как одной, так и другой команды при преобразовании последовательно соеди-
ненных звеньев.
Преобразование параллельного соединения звеньев
Преобразование параллельного соединения звеньев также возможно при
применении двух команд.
Команда «parallel()» осуществляет преобразование параллельно расположенных звеньев и ее применение в MATLAB имеет вид:
35

>> W1=tf([3 0], [1 0 1])
W1 =
3 s
----------
s^2 + 1
>> W2=tf([1], [1 1])
W2 =
1
-------
s + 1
>> W=parallel(W1, W2)
W =
4 s^2 + 3 s + 1
----------------------
s^3 + s^2 + s + 1
Преобразуемые передаточные функции, также как и в случае с командой
«series()» указываются в скобках через запятую.
Альтернативой применения команды «parallel()» является применение
знака «+» (сложение). Для данной команды пример будет выглядеть следую-
щим образом:
>> W1=tf([3 0], [1 0 1])
W1 =
3 s
----------
s^2 + 1
>> W2=tf([1], [1 1])
W2 =
1
-------
s + 1
>> W=W1+W2
W =
4 s^2 + 3 s + 1
-----------------
s^3 + s^2 + s + 1
36

Преобразование соединения с обратной связью
Функция feedback() применяется для образования передаточной функции
замкнутой системы по известным передаточным функциям разомкнутой систе-
мы и цепи обратной связи. Она имеет вид:
feedback(A, B, +/–1),
где В — передаточная функция цепи обратной связи;
+/–1 — указывает вид обратной связи (+1 — положительная, –1 — отрицательная).
Пример применения команды feedback в MATLAB:
>> W1=tf([3 0], [1 0 1])
W1 =
3 s
----------
s^2 + 1
>> W2=tf([1], [1 1])
W2 =
1
-------
s + 1
>> W=feedback(W1, W2, -1)
W =
3 s^2 + 3 s
-------------------
s^3 + s^2 + 4 s + 1
Построение АФЧХ
Амплитудно-фазовую частотную характеристику (АФЧХ) в MATLAB
можно построить несколькими способами (например, путем нахождения ВЧХ и
МЧХ с последующим построение кривой). Однако самым простым является
применение команды «nyquist («имя функции»)». В круглых скобках указывается имя передаточной функции АФЧХ которой необходимо построить. Пример применения данной команды будет иметь вид:
37

>> W2=tf([1], [1 1])
W2 =
1
-------
s + 1
>> nyquist(W2)
Следует помнить, что в данном случае происходит построение АФЧХ
рассматриваемого элемента системы при изменении частоты ω от –∞ до +∞.
Построение ЛАЧХ и ЛФЧХ
Одними из основных характеристик системы автоматического управления являются логарифмическая амплитудная частотная характеристика и логарифмическая фазовая частотная характеристика. На основании данных характеристик можно не только говорить об устойчивости системы (Критерий Найквиста), но и определить запас устойчивости по амплитуде и по фазе. В
MATLAB данные характеристики можно построить при помощи команд
«bode()» и «margin()». Отличие между командами заключается в вычислении
командой «margin()» запаса устойчивости по амплитуде и по фазе.
Определение нулей и полюсов системы
В системе MATLAB нули и полюса системы можно определить с помощью следующих команд:
- pole — определение полюсов системы;
- eig — определение полюсов системы;
- tzero — определение нулей системы;
- pzmap — составление карты нулей-полюсов.
Пример применения одной из команд будет иметь вид:
>> w1=tf([1], [0.5 0.32 1])
w1 =
1
--------------------------
0.5 s^2 + 0.32 s + 1
>> pole(w1)
ans =
-0.3200 + 1.3775i
-0.3200 — 1.3775i
38

1pT
k
)p(W
1
1
1
1pTp
k
)p(W
2
2
2
1pT
k
)p(W
3
3
3
Структурная схема системы автоматического управления представлена
на рис. 20.
3. ПРИМЕР ВЫПОЛНЕНИЯ
РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЫ
Задание
Рис. 20. Структурная схема САУ
Передаточные функции отдельных звеньев:
;
.
Параметры передаточных функций отдельных звеньев: k1=5; k2=3; k3=1;
Т1=0,068 с; Т
=0,14 с; Т3=0,05 с.
2
Требуется:
1) найти передаточную функцию системы в разомкнутом состоянии
Wp(p);
2) оценить устойчивость разомкнутой системы по корням характеристи-
ческого уравнения;
3) построить АФЧХ разомкнутой системы;
4) используя критерий Найквиста, определить устойчивость замкнутой
САУ;
5) в случае неустойчивости определить значение коэффициента усиления
корректирующего устройства kку, при котором замкнутая система устойчива;
6) определить запасы устойчивости по АФЧХ скорректированной разо-
;
мкнутой САУ. Если они не достаточны, скорректировать систему для обеспе-
чения приемлемых запасов устойчивости;
7) произвести проверку устойчивости скорректированной системы с по-
мощью критерия Гурвица или Михайлова.
39

Решение без применения программы MATLAB
1sT1sTs1sT
kkk
1sT
k
1sTs
k
1sT
k
)p(W
321
321
3
3
2
2
1
1
p
01s05,0
1s14,0s1s068,01sT1sTs1sTpH
321
71,14
068,0
1
T
1
p
1
1
0p2
14,7
14,0
1
T
1
p
2
3
.20
05,0
1
T
1
p
4
4
.
ss258,0s01992,0s000476,0
15
ssTTTsTTTTTTsTTT
kkk
)s(W
234
2
321
3
323121
4
321
321
1. Найдем передаточную функцию системы в разомкнутом состоянии.
Система является одноконтурной, значит, разомкнутая цепь состоит из
трех последовательных соединенных устройств, и ее передаточная функция
имеет вид:
.
2. Исследуем разомкнутую систему на устойчивость. Характеристическое
уравнение имеет вид:
Найдем корни характеристического уравнения разомкнутой системы:
;
;
;
Таким образом, при решении характеристического уравнения имеется три
отрицательных корня и один нулевой корень. Это означает, что разомкнутая
система находится на границе устойчивости.
3. Для определения устойчивости замкнутой САУ и запасов устойчивости
построим амплитудно-фазовую частотную характеристику разомкнутой систе-
мы. Для этого раскроем скобки в знаменателе передаточной функции разо-
мкнутой системы и приведем ее к нормальному виду:
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
