Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УАПС_MatLAB.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
64.51 Кб
Скачать

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ДОНСКОЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра «Автоматизация производственных процессов»

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам

по курсу

«Универсальные алгоритмические и программные средства решения задач управления в технических системах»

«Решение задач анализа и синтеза автоматических систем

в среде пакета MATLAB»

Ростов-на-Дону

2002

Составители: к.Т.Н., доц. Каф. Апп с.Б. Кудряшев

к.т.н., доц. каф. АПП П.С. Обухов

Методические указания по выполнению лабораторных работ по курсу «Универсальные алгоритмические и программные средства решения задач теории управления». – Ростов н/Д, 2002, 8 с.

Является руководством для выполнения лабораторной работы по дисциплине «Универсальные алгоритмические и программные средства решения задач теории управления». Работа посвящена вопросам представления, преобразования и анализа динамических систем в среде пакета MatLAB.

Методические указания ориентированы на студентов очной формы обучения по специальностям 210100 «Управление и информатика в технических системах» и 210200 «Автоматизация производственных процессов и производств», а также может быть использована и для проведения работ со студентами других специальностей.

Печатается по решению методической комиссии факультета «Автоматизация и информатика».

Рецензент: д-р техн. наук, проф. зав. каф. РГАСХМ Р.А. Нейдорф

 - Издательский центр ДГТУ, 2002

ЛАБОРАТОРНАЯ РАБОТА

«Решение задач анализа и синтеза автоматических систем

в среде пакета MATLAB»

1 Краткая теория вопроса

    1. Представление и преобразование математических моделей (ММ) динамических систем (ДС).

Задание ДС в матрично-векторной (МВ) форме записи

В современной теории управления для описания ММ ДС используется запись, представляющая собой систему уравнений в переменных состояния [1]

(1)

В пакете MatLAB матрицы вводятся следующим образом:

Способ 1: A = [1 2 3; 4 5 6; 7 8 9] B=[4; 5; 6]

(Прим. Ввод элементов матриц и векторов осуществляется через пробел)

Способ 2: А = [ 1 2 (Enter) B = [10 (Enter)

3 4] 20]

Основные матричные операции:

X=[Y Z] — присоединение столбцов матриц Y и Z;

X=[Y; Z] — присоединение матрицы Z к строкам матрицы Y;

X=Y(:) — все элементы матрицы Y интерпретируются как один столбец;

X=Y(:, j) — выделяется j-й столбец матрицы Y;

X=Y(:, j:k) — выделяет с j-го по k-й столбцы матрицы Y (Y(:,j), Y(:,j+1)... Y(:,k));

X=Y(j:k) — выделение элементов Y(j), Y(j+1)...Y(k) вектора из Y или из 1-го столбца матрицы Y;

X=Y(j:k, m:n) — выделение матрицы, ограниченной j-k строкой и m-n столбцом матрицы Y;

X=Y’ — транспонирование;

det(Y) — определитель;

inv(Y) — обратная матрица;

X*Y, X+Y, X-Y,— умножение, сложение и вычитание матриц;

X/Y, X\Y — вычисление и ;

X^n — возведение матрицы X в скалярную целочисленную степень n;

X.*Y, X./Y, X.\Y, X.^Y — поэлементные операции с матрицами одного размера.

Задание ДС во вход-выходной (ВВ) форме записи

В классической теории управления для описания ММ ДС используется понятие передаточных функций (ПФ), которые представляют собой дробно-рациональную функцию [2]

(2)

Для ввода ПФ коэффициенты числителя и знаменателя необходимо задавать в виде вектора (в порядке убывания степени).

NUM=[bm bm-1 ... b1 b0] DEN=[am am-1 ... a1 a0]

    1. Анализ математических моделей динамических систем .

СДУ (ODE)

Форме Коши

Аналоговые

Линейные стационарные ММ Нелинейные ММ

tf2zp zp2ss

zp2tf ss2zp

tf2ss linmod

||

ss2tf

d2c c2d

dtf2ss dlinmod

tf2ss ||

ss2tf

d2d

dtf

z - ПФ

ss

В-м в ПС

ss

Дискретные

Рисунок 1

Преобразование ПФ:

[NUMc,DENc]=tfchk(NUM,DEN) – проверяет на соответствие порядки числителя и знаменателя, возвращает эквивалентную ПФ с равными порядками (отсутствующие коэффициенты заполняются нулями) или выдает сообщение об ошибке;

[Z,P,K]=tf2zp(NUM,DEM) – находит нули, полюсы и коэффициент передачи (приведенный);

[NUM,DEN]=zp2tf(Z,P,K) – обратное преобразование;

[A,B,C,D]=tf2ss(NUM,DEN) – преобразуем ПФ с одним входом в модель ПС в канонической форме управления. Для перехода также все матрицы необходимо развернуть на 1800: A=rot90(A,2), B=rot90(B,2) и т.д.;

abcdchk(A,B,C,D) – проверяет согласованность размерности матриц и в случае ошибки возвращает сообщение о ней;

[Wn,ksi]=damp(A) – вычисляет сопрягающие частоты и коэффициенты затухания ДС (А может быть либо системной матрицей, либо векторами NUM или DEN, либо векторами корней Z или P);

Построение частотных характеристик:

[Mod,Fi]=bode(A,B,C,D,ui,w),

[Mod,Fi]=bode(NUM,DEN,w) – возвращает вектор амплитуды и фазы (ui номер входа в МВ ММ). Для построения ЛЧХ вектор w должен в логарифмическом масштабе содержать значения частот в рад/с.

Построение фазовой частотной характеристики для неминимально-фазовых звеньев выше 1-го порядка с использованием данной функции выполняется неправильно.

Для коррекции фазовой характеристики имеются следующие характеристики:

Fik=fixphase(Fi) или Fik=add360(Fi) – устраняет разрыв фазы от –1800 к 1800. Фаза Fi задается в градусах;

Fik=addtwopi(Fi) – то же для фазы, заданной в радианах.

Вычисление переходных процессов:

Y – вектор переходного процесса, t – вектор изменения времени,

X – вектор состояния (необязательный параметр, может быть опущен)

[Y,X]=impulse(A,B,C,D,ui,t),

Y=impulse(NUM,DEN,t) – весовая функция,

[Y,X]=step(A,B,C,D,ui,t),

Y=step(NUM,DEN,t) – реакция на единичное ступенчатое воздействие,

[Y,X]=lsim(A,B,C,D,U,t,X0),

Y=lsim(NUM,DEN,U,t) – реакция на произвольно заданное вектором U внешним воздействием (X0 – начальное условие).

Анализ управляемости:

Q=ctrb(A,B) – вычисляет матрицу управляемости Q,

[Ab,Bb,Cb,T]=ctrbf(A,B,C,TOL) – выделение полностью управляемого подпространства, для частично управляемой системы. (TOL – допуск, необязательный параметр, T – матрица преобразования, Ab=TAT-1, Bb=TB, Cb=CT-1).

,

Индекс nc – неуправляемая часть, с – управляемая.

Выделение неуправляемой части:

nc=length(Ab)-rang(Q); Anc=Ab(1:nc,1:nc).

eig(Anc) - cобственные значения неуправляемой части системы.

Анализ наблюдаемости:

R=obsv(A,C) – вычисляет матрицу наблюдаемости R,

[Ab,Bb,Cb,T]=obsvf(A,B,C,TOL) – выделение полностью наблюдаемого подпространства, для частично наблюдаемой системы. (TOL – допуск, необязательный параметр, T – матрица преобразования, Ab=TAT-1, Bb=TB, Cb=CT-1).

,

Индекс no – ненаблюдаемая часть, о – наблюдаемая.

Выделение ненаблюдаемой части:

nо=length(Ab)-rang(R); Ano=Ab(1:no,1:no).

eig(Ano) - cобственные значения ненаблюдаемой части системы.

Построение графиков:

plot(X,Y,S) – построение графика функции Y(X) c заданием типа линии с помощью S (необязательный параметр);

plot3(X,Y,Z,S) – построение трехмерного графика функции Z(X,Y) c заданием типа линии с помощью S (необязательный параметр);

loglog(X,Y,S) – аналогична предыдущей команде, но для задания логарифмического масштаба по X и Y;

semilogx(X,Y,S) или semilogy(X,Y,S) – строит график в логарифмическом масштабе по оси X или Y соответственно;

subplot(m,n,k) – разбивает окно на m окон по горизонтали и n окон по вертикали, а k – номер окна, в котором будет выводиться текущий график;