Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


«м≥ст зв≥ту. 1. ћета лабораторноњ роботи




1. ћета лабораторноњ роботи.

2. ¬х≥дн≥ дан≥.

3. ћашинна схема моделюванн€ системи.

4. «наченн€ коеф≥ц≥Їнт≥в kр, kd, k≥ дн€ ѕ-, ѕƒ- ≥ ѕ≤ƒ-регул€тор≥в.

5. ѕерех≥дн≥ процеси ≥ њх характеристики (перерегулюванн€, статична помилка, тривал≥сть).

6. јнал≥з отриманих результат≥в.

7. ¬исновки.

 


 

¬ведение

ћј“≈ћј“»„≈— »… ѕј ≈“ MATLAB.

¬ыполнение всех заданий курсового практикума св€зано с использованием MatLab - высокоэффективного программного обеспечени€ дл€ научных и инженерных расчетов. ¬ыполн€€ математические расчеты в программной среде MatLab, пользователь имеет весьма комфортные возможности дл€ решени€ различных вычислительных задач в област€х линейной алгебры общей теории систем, теории информации и обработки сигналов, теорий автоматического и автоматизированного управлени€ и р€да иных дисциплин.

¬озможности среды MatLab достаточно гибкие и могут быть значительно расширены за счет использовани€ дополнительного инструментари€, так дл€ MATLABЃ for Windows (верси€ 4.0), кроме базового тулбокса Matlab, предусматриваетс€ возможность применени€ и следующих специализированных тулбоксов:

Ј Signal Processing Toolbox "обработка сигналов",

Ј Optimization Toolbox "оптимизаци€",

Ј Neural Network Yoolbox "нейронные сети",

Ј Control System Yoolbox"системы управлени€";

Ј SplineToolbox "сплайны";

Ј SIMULINK (Dynamic System Simulation Software) "программное обеспечение моделировани€ динамических систем"

ѕривлекательной чертой среды MatLab €вл€етс€ простота и легкость ее адаптации к прикладным задачам конкретного пользовател€, который всегда может ввести в программную среду любую свою команду, оператор, функцию или создать собственный toolbox (€щик инструментов). ¬ частности, дл€ выполнени€ курсовой работы используютс€ как типовые m-файлы, так и оригинальные. ќсновна€ цель введени€ - характеристика программной среды MatLab и ознакомление пользовател€ с возможност€ми стандартного интерфейса MATLABЃ for Windows (версии 4.0), поскольку выполнение курсовой работы осуществл€етс€ с использованием возможностей типовых тулбоксов - Matlab, Signal.

«адачей данной курсовой работы было приобретение начальных навыков работы с системой MatLab и решение поставленных задач.

программный математический matlab интерфейс

ѕрактикум на €зыке Matlab

ѕри работе в Matlab и при практическом решении задач использовались разнообразные функции и операторы. —реди них: ACOT, PLOT, EIG, CEIL, CUMSUM, BALANCE, MAX, SORT, SUM, MIN, RATS.

ѕримеры применени€ этих функций и операторов:

«адание є1: ѕостроить график функции F(x) при следующих значени€х аргумента с шагом.

Ўаг заданный при построении графика был 0,01.

ABS - ‘ункци€ ABS(’) возвращает абсолютную величину ’. если ’-матрица, то ABS(’) создаЄт матрицу того же размера, элементы которой равны абсолютным значени€м соответствующих элементов исходной матрицы.

PLOT - ќператор построени€ графиков по данным вектора или матрицы. PLOT(X,Y) рисует вектор X против вектора ”(’ - аргумент, ”- функци€). ≈сли X и Y матрицы, то также вычерчиваютс€ графики, где вектор отображаетс€ относительно столбца или строки матрицы.

ѕри этом записывалось это так:

x = -10:0.01:10;

y=acot(x)+2*(x-2).^2-abs(4*x-3);

Warning: Divide by zero.

(Type "warning off MATLAB:divideByZero" to suppress this warning.)

> In C:\MATLAB6p5\toolbox\matlab\elfun\acot.m at line 8

plot(x,y);

EIG

‘ункци€ EIG (A, B) формирует вектор, содержащий обобщЄнные собственные значени€ квадратных матриц A и ¬.

¬ыражение [V,D]=E1G(A,B) задает диагональную матрицу D, содержащую обобщенные собственные значени€, и матрицу V, столбцы которой содержат соответствующие собственные векторы, причЄм A*V=B*V*D.

«адание є2: Ќайти собственные значени€ и собственные векторы матриц.

a =

1.0000 1.2000 2.0000

1.2000 1.0000 0.4000

2.0000 0.4000 2.0000

b =

1 -1 2

1 2 1

2 0 3

eig(a,b)

ans =

0.6693

2.0000

2.3307

>>a=[1 1.2 2;1.2 1 0.4;2 0.4 2];

>> [v,d]=eig(a);

>> eig(a)

ans =

-0.8649

0.9128

3.9521

>> [v,d]=eig(a)

v =

-0.7780 -0.1099 0.6186

0.3960 -0.8502 0.3470

0.4878 0.5149 0.7049

d =

-0.8649 0 0

0 0.9128 0

0 0 3.9521

ROUND

‘ункци€ ROUND (ј). ќна возвращает матрицу того же размера, значени€ элементов которой есть значени€ элементов исходной матрицы ј, округлЄнные до ближайшего целого.

CEIL(A)

‘ункци€ ceil(ј). ќна возвращает матрицу того же размера, но при этом округл€ет элементы ј к ближайшему целому числу, но об€зательно в сторон плюс бесконечности.

«адание є3: ќкруглить элементы к ближайшему целому числу.

ƒл€ этого можно использовать функцию round (ј). «апись будет иметь вид:

a=[1 1.2 2;1.2 1 0.4;2 0.4 2];y=round(a)

y =

1 1 2

1 1 0

2 0 2

ƒл€ этого можно также использовать и функцию ceil(ј).

a =

1.0000 1.2000 2.0000

1.2000 1.0000 0.4000

2.0000 0.4000 2.0000

ceil(a)

ans =

1 2 2

2 1 1

2 1 2

RATS

‘ункци€ rats(A) используетс€ дл€ преобразовани€ элементов матрицы ј из вещественной формы записи в форму записи вида рациональной дроби.

«адание є4: ѕреобразовать элементы матрицы ј из вещественной формы записи в форму записи вида рациональной дроби. “.е необходимо преобразовать в форму записи вида рациональной дроби(отношение 2 целых чисел).

ƒана матрица:

a=[1 1.2 2;1.2 1 0.4;2 0.4 2]

a =

1.0000 1.2000 2.0000

1.2000 1.0000 0.4000

2.0000 0.4000 2.0000

>> c=rats(a)

c =

1 6/5 2

6/5 1 2/5

2 2/5 2

«адание є5: ¬ыполнить действи€ с матрицами (сложение, деление, умножение). ƒаны матрицы:

a =

3 1 1

1 2 3

-2 5 -2

b =

1 -1 2

1 2 1

2 0 3

1) —ложение матриц: c=a+b

c =

4 0 3

2 4 4

0 5 1

2) ”множение матриц: c=a*b

c =

6 -1 10

9 3 13

-1 12 -5

3) ƒеление матриц:

3.1) правое c=a/b

c =

-13.0000 -6.0000 11.0000

8.0000 5.0000 -6.0000

9.0000 7.0000 -9.0000

c=b/a

c =

-0.0577 0.4423 -0.3654

0.3462 0.3462 0.1923

0.2115 0.7115 -0.3269

3.2) левое c=a\b

c =

0.1923 -0.6346 0.5385

0.4615 0.0769 0.6923

-0.0385 0.8269 -0.3077

c=b\a

c =

-31 13 -25

6 -2 6

20 -7 16

CUMSUM - ‘ункци€ CUMSUM(X) вычисл€ет кумул€тивные суммы компонент X. ≈сли ’- вектор, то функци€ CUMSUM(X) даЄт вектор того же размера, n-ый элемент которого €вл€етс€ суммой первых n элементов исходного вектора X. ƒл€ матрицы X функци€ CUMSUM(X) даЄт матрицу, содержащую кумул€тивные суммы дл€ каждого столбца.

«адание є6: ¬ычислить кумул€тивные суммы дл€ каждого столбца матрицы. ƒана матрица вида:

a =

3 1 1

1 2 3

-2 5 -2

ƒл€ вычислени€ кумул€тивной суммы дл€ каждого столбца матрицы используем функцию cumsum(a), котора€ даЄт матрицу, содержащую кумул€тивные суммы дл€ каждого столбца. «апись будет иметь вид:

a=[3 1 1;1 2 3;-2 5 -2];cumsum(a)

ans =

3 1 1

4 3 4

2 8 2

BALANCE.

ќператор BALANCE уравновешивает строки и столбцы матрицы таким образом, чтобы нормы строк и столбцов оказались бы примерно одинаковыми, т.е. была бы улучшена обусловленность исходной матрицы.

[T,Ab]=BALANCE(A) вычисл€ет линейное преобразование подоби€ T, такое, что Ab= T\A*T. ќператор BALANCE(A) вычисл€ет сбалансированную матрицуAb.

«адание є7: ”равновесить строки и столбцы матриц т.о., чтобы нормы строк и столбцов оказались примерно одинаковыми.

a =

3 1 1

1 2 3

-2 5 -2

>>balance(a)

ans =

3 1 1

1 2 3

-2 5 -2

MAX - ‘ункци€ MAX(X) дл€ векторов возвращает максимальный элемент вектора X ƒл€ матриц ћј’(’) - это вектор-строка, содержащий максимальные элементы каждого из столбцов. [Y,I] = ћј’(ј) содержит в Y максимальные элементы столбцов матрицы ј, а в векторе I содержит индексы этих элементов.

MIN - ‘ункци€ MIN предназначена дл€ выбора минимального элемента вектора или минимальных элементов в столбцах матрицы.

«адание є8: Ќайти максимальный и минимальный элемент матрицы.

a =

3 1 1

1 2 3

-2 5 -2

ƒл€ этого используем функцию max(ј) и min(ј), функци€ возвращает максимальный и минимальный элемент матрицы ј.

[y,i]=max(a)

y =

3 5 3

i =

1 3 2

[y,i]=min(a)

y =

-2 1 -2

i =

3 1 3

SORT

‘ункци€ SORT(X) сортирует каждый столбец X в возрастающем пор€дке элементов. [Y,I] = SORT(X) также дает матрицу I, содержащую индексы элементов в исходной матрице (по ним можно определить, где в) находилс€ соответствующий элемент Y). ≈сли X вектор, то Y=’(I).  огда X комплексна€ матрица, то элементы сортируютс€ по абсолютной величине.

«адание є9:ќтсортироватькаждый столбец матрицы в возрастающем пор€дке элементов. ƒана матрица вида: a=[3 1 1;1 2 3;-2 5 -2];

ƒл€ этого используем функцию sort(ј), котора€ сортирует каждый столбец ј в возрастающем пор€дке элементов.

sort(a)

ans =

-2 1 -2

1 2 1

3 5 3

SUM

‘ункци€ SUM(X) дн€ вектора X вычисл€ет сумму всех его элементов. ƒл€ матрицы X функци€ SUM(X) вычисл€ет вектор-строку с суммами элементов каждого столбца матрицы X. ¬ыражение SUM(D/AG(X)) вычисл€ет след матрицы X.

«адание є10. ¬ычислить вектор - строку с суммами элементов каждого столбца матрицы.

ƒана матрица:

a =

-13 -8 -3 2 7

0 -1 7 -3 -13

-13 -8 3 4 -1

-13 -9 4 -1 -6

-26 -17 7 3 -7

ƒл€ вычислени€ вектора - строки с суммами элементов каждого столбца матрицы используетс€ функци€ sum(ј), котора€ дл€ вектора ј вычисл€ет сумму всех его элементов. ƒл€ матрицы ј функци€ sum(ј) вычисл€ет вектор - строку с суммами элементов каждого столбца матрицы ј. «апись будет иметь следующий вид:

a=[-13 -8 -3 2 7;0 -1 7 -3 -13;-13 -8 3 4 -1;-13 -9 4 -1 -6;-26 -17 7 3 -7];

y=sum(a)

y =

-65 -43 18 5 -20

«адание є11. ¬ывести новую матрицу. ƒаны вектора:

b_1=[-2.8;-26.3;-16.8;-29.1;-45.9]

b_1 =

-2.8000

-26.3000

-16.8000

-29.1000

-45.9000

b_2=[-1.8;-26.1;-15.8;-29.77;-46.9]

b_2 =

-1.8000

-26.1000

-15.8000

-29.7700

-46.9000

ƒана матрица:

a =

-13 -8 -3 2 7

0 -1 7 -3 -13

-13 -8 3 4 -1

-13 -9 4 -1 -6

-26 -17 7 3 -7

ƒл€ добавлени€ вектора b1 к матрице ј как строки используетс€ запись вида: ј1=[A, b1]. ƒл€ этого нам необходимо транспонировать вектор b1, т.к. он задан как вектор-столбец.

A_1=[a;b_1']

A_1 =

-13.0000 -8.0000 -3.0000 2.0000 7.0000

0 -1.0000 7.0000 -3.0000 -13.0000

-13.0000 -8.0000 3.0000 4.0000 -1.0000

-13.0000 -9.0000 4.0000 -1.0000 -6.0000

-26.0000 -17.0000 7.0000 3.0000 -7.0000

-2.8000 -26.3000 -16.8000 -29.1000 -45.9000

ƒл€ добавлени€ вектора b2 к матрице ј в качестве столбца, используетс€ следующа€ форма записи:

A_2=[a,b_2]

A_2 =

-13.0000 -8.0000 -3.0000 2.0000 7.0000 -1.8000

0 -1.0000 7.0000 -3.0000 -13.0000 -26.1000

-13.0000 -8.0000 3.0000 4.0000 -1.0000 -15.8000

-13.0000 -9.0000 4.0000 -1.0000 -6.0000 -29.7700

-26.0000 -17.0000 7.0000 3.0000 -7.0000 -46.9000

SOLVE

ѕри решении этого задани€ использовалась функци€ solve, котора€ производит решение системы нелинейных алгебраических уравнений.

«адание є 12 –ешить систему нелинейных алгебраических уравнений.

ƒана система уравнений:

¬ MatLab данна€ система записываетс€ следующим образом:

[x,y]=solve('acot(x)+2*(y-2)^2=5','y-abs(4*x-3)=3')

x =

0.64631476499002086240204017407305

y =

3.4147409400399165503918393037078

«аключение

÷елью данной курсовой работы €вл€лось ознакомление с €зыком MatLab. ¬ажной особенностью MatLab €вл€етс€ то, что предлагаетс€ встроенна€ в €зык стандартна€ поддержка комплексных чисел и матриц. MatLab предлагает также реализацию всех основных численных алгоритмов.

ћы познакомились со многими операторами и функци€ми данного €зыка. —реди них ACOT, PLOT, EIG, CEIL, CUMSUM, BALANCE, MAX, SORT, SUM, MIN. Ётот €зык очень доступен дл€ понимани€, он многофункционален и это его преимущество.

ѕривлекательной чертой среды MatLab €вл€етс€ простота и легкость ее адаптации к прикладным задачам конкретного пользовател€, который всегда может ввести в программную среду любую свою команду, оператор, функцию или создать собственный toolbox (€щик инструментов).

ќн примен€етс€ дл€ решени€ практических задач по математическому и имитационному моделированию динамических систем.

Ћитература

1. ≈ремин ≈.Ћ.  омпьютерное моделирование процессов и систем. ”чебное пособие.- Ѕлаговещенск: »здательство Ѕ√ѕ”, 2003г.-128с.

2. ≈ремин ≈.Ћ. Ћабораторно-курсовой практикум по “ќј” с применением MATLAB for Windows.-Ѕлаговещенск: »здательство јм√”, 2001г.-142с.

3. ќсновы математического моделировани€. ѕостроение и анализ моделей с примерами на €зыке MATLAB / ѕод ред. ј.Ћ.‘радкова.- —.-ѕетербург: »здательство Ѕ√“”, 1994г.

–азмещено на Allbest.ru

 


 

ЋјЅќ–ј“ќ–Ќјя –јЅќ“ј є1

http://apeshnik.narod.ru/matlab/part1.htm

ѕЋјЌ

 

I. ќсновные вычислительные процедуры системы MATLAB

 

1. ќперации сложени€, вычитани€ с присвоением и без присвоени€ результата (+, -).

2. ќперации умножени€, делени€ (*, /).

3. ¬озведение в степень (^).

4. »звлечение из квадратного корн€ (sqrt): sqrt(16+9)

5. ѕовторение действий, повторение с измененными параметрами и функци€ми.

6. Ќевыполн€емый комментарий Ч %

7. «адание р€да чисел с заданным шагом и по умолчанию: t=(0:0.5:7)' % ¬ виде столбца

8. «адание матриц (например: a = [1 2 3;4 5 6]):

Ч пр€моугольных;

Ч квадратных;

Ч вектор-строки;

Ч вектор-столбца.

9. ћатричные операции:

Ч сложение, вычитание (+, -);

Ч умножение (*);

Ч обращение (inv), (pinv);

Ч деление (/);

Ч возведение в степень (^);

Ч транспонирование (').

Ч cоздание нижней треугольной матрицы ј: tril(ј).

Ч cоздание верхней треугольной матрицы ј: triu(ј).

¾ вращение матрицы ј относительно вертикальной оси: fliplr(A).

¾ вращение матрицы ј относительно горизонтальной оси: flipud(A).

¾ поворот матрицы ј на 900 против часовой стрелки: rot90(A).

¾ поворот матрицы ј на 900 по часовой стрелке: rot90(A,-1).

¾ поворот матрицы ј на кратное 900 значение: rot90(A,k), где k = ±1, ±2,... Ч множитель, на который умножаетс€ угол 900.

¾ п.п. вращени€ и поворота выполнить дл€ квадратных и пр€моугольных матриц.

¾ формирование единичной матрицы заданного размера n: eye(n).

¾ формирование единичной матрицы по размеру данной квадратной матрицы ј: eye(size(A)).

¾ матрица единиц данного размера n´m: ones(n,m). ƒл€ создани€ квадратной матрицы: ones(n).

¾ матрица единиц по размеру заданной матрицы ј: ones(size(A)).

¾ матрица нулей данного размера n´m: zeros(n,m). ƒл€ создани€ квадратной матрицы: zeros(n).

¾ матрица нулей по размеру заданной матрицы ј: zeros(size(A)).

¾ матрица ѕаскал€ данного размера n: pascal(n). ћатрица ѕаскал€ €вл€етс€ положительно-определенной.

¾ извлечение диагонали заданной матрицы ј: diag(A).

¾ вычисление следа матрицы ј: trace(A).

¾ вычисление следа матрицы ј через функции sum и diag: sum(diag(A)).

¾ магический квадрат размера n (n>2): magic(n).

¾ проанализировать магический квадрат с помощью функций MATLAB: просуммировать элементы каких-либо строк или столбцов, найти след магического квадрата.

¾ создание диагональной матрицы по заданной матрице ј: diag(diag(A)).

¾ создание диагональной матрицы по заданному вектору-столбцу –: diag(P).

¾ создание диагональной матрицы по заданному вектору-строке N: diag(N).

¾ создание диагональной матрицы по заданному вектору или матрице, набираемым в поле аргумента функции diag.

¾ собственные числа действительной или комплексной матрицы ј: eig(A).

¾ выделение строк или столбцов матрицы: A = [1 2 3;4 5 6]; A(:,2:3) Ч 2-й и 3-й столбцы

¾ «адание матриц по случайному равномерному закону Ч rand (например, rand(3,4))

¾ «адание матриц по случайному нормальному закону Ч randn (например, randn(2,5))

¾ ѕолучение помощи дл€ заданной встроенной функции: help-пробел-функци€.

¾ ќперации с массивами (перед знаком арифметического действи€ ставитс€ точка):

(например: [1 2 3;4 5 6].^2) Ч возведение каждого элемента матрицы в квадрат.

¬ыполнить матричные операции п.9 в виде операций с массивами.

8. ‘ормирование коэффициентов характеристического полинома заданной числовой матрицы ј: poly(A).

9. ‘ормирование характеристического полинома заданной числовой матрицы ј: poly(sym(A)). ѕо умолчанию независимой переменной полинома €вл€етс€ х.

10. ‘ормирование характеристического полинома заданной числовой матрицы ј с назначаемой независимой переменной полинома (например s): poly(sym(A),sym('s')).

11. —равнить результаты выполнени€ п.п. 1.26, 1.27, 1.28.

12. ‘ормирование коэффициентов характеристического полинома матрицы ј по ее заданным собственным числам: poly(eig(A)).

13. ‘ормирование характеристического полинома по заданным корн€м, €вл€ющимис€ элементами вектора –: poly(P).

14. ‘ормирование полинома с коэффициентами, €вл€ющимис€ элементами заданного вектора –: poly2sym(P). —тепень полинома на единицу меньше размерности заданного вектора –.

 

II. »нформативные сведени€ о матрицах, векторах, числах.

 

1. –азмерность матрицы ј: size(A).

2. ƒлина вектора –: length(P).

3. ѕрименить функцию size к вектору –, примениить функцию length к матрице ј (к пр€моугольной и квадратной).

4. ”плотненный вывод на экран массивов и чисел: disp(A), disp(P), disp(a), где а Ч какое-либо число (действительное или комплексное, например, а=2+3i).

5. ќпределение простого числа: если а - простое число, то функци€ isprime(a) возвращает 1 (единицу), в противном случае будет 0 (ноль). ¬еличина задаваемого числа а имеет определенные ограничени€ (пор€дка дес€тков миллионов).

6. ќпределение простых чисел из диапазона 2... а: primes(a). ¬еличина числа а также ограничена. ‘ункци€ primes(a) возвращает вектор, элементы которого €вл€ютс€ простые числа из диапазона 2... а.

7. ќпределение знак заданного числа а: sign(a). јргументом функции sign могут быть числа, выражени€, математические функции.

8. ќкругление числа а до ближайшего целого: round(a).

9. јбсолютное значение заданного числа или выражени€ Ч abs: abs((3-5)/2), abs(-2^3)

 

III. —пециальные функции.

 

1. –азложение числа N на простые множители: factor(N).

2. —уммирование элементов вектора –: sum(P). –езультат Ч число.

3. —уммирование элементов столбцов матрицы ј: sum(A). –езультат Ч строка, состо€ща€ из суммы элементов каждого столбца матрицы ј.

4. ‘ормирование произведени€ элементов вектора –: prod(P).

5. ‘ормирование произведени€ элементов столбцов матрицы ј: prod(A).

6. ‘ормирование матрицы с элементами из возможных перестановок элементов заданного числового вектора –: perms(P).

 

—оздание ћ-файлов в виде ћ-сценариев.

 

2-D графика в MATLAB.

 

ћ-сценарии представл€ют собой последовательность действий или запись вычислительных алгоритмов, которые затем оформл€ютс€ системой MATLAB в виде m-файлов (с расширением m). “ехт ћ-сценари€ может быть написан в любом текстовом редакторе (текстовый документ) и затем перенесен в систему MATLAB, где дл€ дальнейшего использовани€ должен быть сохранен в окне редактора как m-файл.

 

1. —оздание простейших сценариев.

 

ѕример 1.

 

10. —оздать в командном окне MATLAB матрицу: а = [1 2 3;4 5 6] или а = [1,2,3;4,5,6];

11. “ранспонировать матрицу а: а1 = а';

12. —оздать матрицу b = [10 20 30;40 50 60];

13. ѕеремножить матрицы а1 и b: с = а1*b;

14. Ќа экране создать надпись 'ѕеремножение матриц а1 и b:' с помощью disp('ѕеремножение матриц а1 и b: ');

15. ¬ывести результат перемножени€, набрав в командной строке обозначение с и нажав клавишу Enter;

16. „тобы не было вывода промежуточных результатов, то в конце каждой строки (команды) следует ставить точку с зап€той;.

17. ѕроделать предыдущие пункты команд с точкой с зап€той и без.

18. ѕункты 1-6 записать в ћ-файле. ƒл€ этого в командной строке набрать edit.  ак только откроетс€ окно текстового редактора, повторить набор команд пп. 1-6 и сохранить под каким-либо именем (например, Lab1). “ем самым создали ћ - сценарий.

19. ¬ыйти из редактора в командное окно MATLAB.

20. «апустить на выполнение созданный ћ - сценарий. ƒл€ этого в активной командной строке набрать им€ ћ - сценари€ и нажать клавишу Enter;

21. ƒл€ возвращени€ в редактор с целью редактировани€ созданного ћ - файла в командной строке набрать edit и через пробел им€ желаемого файла (например, Lab1).

22. ¬ ћ - файле можно записывать комментарии. ќни создаютс€ с помощью знака %. “.е. после знака % можно писать как на русском, так и на английском и т.д. ¬се, что находитс€ за знаком %, €вл€етс€ невыполн€емыми действи€ми, даже если там будут записаны стандартные команды MATLAB.

23. —оздать ћ - сценарий с набором матриц и их инвертированием. »нвертирование матрицы с: inv(c).

 

ѕример 2.

 

‘ормирование выборки случайных чисел, распределенных по экспоненциальному закону.

‘ункци€ распределени€ экспоненциального распределени€ веро€тностей:

 

(1)

 

где Ч интенсивность распределени€, равна€ обратной величине математического ожидани€ (среднего) распределени€, т.е. где Ч математическое ожидание.

 

¬ыборка случайных чисел определ€етс€ через инверсную функцию от F(t):

 

(2)

 

где Ч случайное число из интервала [0, 1],

 

1. —ценарий формировани€ выборки случайных чисел, распределенных по экспоненциальному закону.

1.1. ¬ыборка из 18 случайных чисел с экспоненциальным распределением и с заданным параметром интенсивности, равным 2:

% начало цикла, шаг индексации равен 1

% Ч случайное число из [0, 1]

% окончание цикла

% получение вектора-столбца случайных чисел

% сортировка случайных чисел по возрастанию значений

1.2. ‘ормирование выборки 18 случайных чисел с экспоненциальным распределением с помощью встроенной функции expinv:

p2=rand(18,1);

T=expinv(p2,0.5)

t2=sort(T)

1.3. ‘ормирование выборки 18 случайных чисел с экспоненциальным распределением с помощью встроенной функции exprnd:

for k=1:18

y(k)=exprnd(0.5);

end

R=sort(y) % R Ч вектор случайных отсортировнных чисел по возрастанию

—ценарии 1.1, 1.2, 1.3 должны быть сохранены под какими-либо именами, которым система MATLAB присваивает расширение m. ¬ыполнение m-файла (сценари€) может быть осуществлено из рабочей строки командного окна MATLAB.

 

ѕримеры статистичесих интерактивных графических окон функций распределени€ веро€тностей.

 

ƒиалоговое (интерактивное) окно графических типовых распределений веро€тностей в системе MATLAB Ч функци€ DISTTOOL (disttool).

 

DISTTOOL позвол€ет нагл€дно в виде графиков представл€ть различные функции распределени€ веро€тностей с задаваемыми параметрами. ¬ DISTTOOL привод€тс€ две функции: cdf Ч функци€ распределени€ (интегральна€ функци€ распредлени€ веро€тностей), pdf Ч функци€ плотности распределени€ (дифференциальна€ функци€ распределени€ веро€тностей).

 

ƒиалоговое (интерактивное) окно графических типовых гистограмм распределени€ веро€тностей в системе MATLAB Ч функци€ RANDTOOL(randtool).

 

RANDTOOL позвол€ет представл€ть гистограммы функций плотности распределени€ веро€тностей с возможным изменением параметров распределени€ и с изменением количества интервалов рассматриваемой гистограммы.

 

√рафические построени€. 2-D графика MATLAB.

 

2.1. √рафик в пол€рной системе координат:

 

t=0:0.01:2*pi; y=3*(1+sin(t)); polar(t,y)

 

2.2. —овмещение графиков в одной системе координат с помощью функции hold on: t=0:0.01:2*pi;y1=3*(1+sin(t));y2=3*(1-sin(t));

 

polar(t,y1),hold on,polar(t,y2,'r')

 

2.3. —овмещение трех и более графиков с помощью функции hold on:

 

t=0:0.01:2*pi;y1=3*(1+sin(t));y2=3*(1-sin(t));

 

y3=3*(1+cos(t)); y4=3*(1-cos(t));

 

polar(t,y1),hold on,polar(t,y2,'r'),polar(t,y3,'g'),polar(t,y4,'k')

 

2.4. √рафик в декартовой системе координат:

 

t=0:0.01:2*pi; y=sin(t);

 

plot(t,y),grid

 

2.5. ‘ормирование по€снений к графику с помощью функции gtext:

 

t=0:0.01:2*pi;y=sin(t);plot(t,y),grid,gtext('t'),gtext('y')

 

% требуемые символы (t и y) устанавливаютс€ в позиции курсора мыши.

 

2.6. ѕостроение графиков заданных функций Ч fplot.

 

% √рафик функции sin(t) или sin(x) и т.д. в пределах по аргументу от до:

 

ї fplot('sin(t)',[-3*pi 3*pi]),grid % Ќабор в рабочей строке MATLAB

 

% √рафик функции sin(t) в пределах по t от до с ограничением от -0.7 до 0.7

 

ї fplot('sin(t)',[-3*pi,3*pi,-0.7,0.7]),grid

 

% —овмещение нескольких графиков: sin(t), exp(-0.5t), 3cos(t)

 

ї fplot('[sin(t),exp(-0.5*t),3*cos(t)]',[-1,10,-4 5]),grid

 

«адание: ѕостроить с помощью fplot графики следующих функций и их комбинаций:

 

с соответствующими област€ми определени€.

 

2.7. ‘ормирование по€снений к графику с помощью функций title, xlabel, ylabel:

 

t=0:0.01:2*pi;y=sin(t);

 

plot(t,y),grid,title('—инусоида'),xlabel('радианы'),

 

ylabel('функци€'),gtext('t'),gtext('y')

 

ї fplot('[sin(t),3*cos(t)]',[-1,10,-4,5]),grid,title('y_1-sin(t), y_2-3cos(t)'),gtext('y_1'),gtext('y_2')

 

% требуемые символы на графике устанавливаютс€ в позиции курсора мыши.

 

2.8. ‘ормирование по€снений к начертанию нескольких графиков с помощью функции legend:

 

t=0:0.01:2*pi;y1=sin(t);y2=cos(t);

 

plot(t,y1,'r'),grid,hold on,plot(t,y2), legend('s1','c2')

 

2.9. ”становка €рлыка legend в различных част€х графика:

 

в левом верхнем углу: legend('s1','c2', 2);

 

в левом нижнем углу: legend('s1','c2', 3);

 

в правом нижнем углу: legend('s1','c2', 4);

 

в правом верхнем углу: legend('s1','c2', 1)

 

или по умолчанию: legend('s1','c2');

 

вне рабочей области графика: legend('s1','c2', -1);

 

2.10. »нтерактивный графический калькул€тор Ч funtool.

 

¬ командной строке MATLAB набрать функцию funtool и запустить на выполнение (Enter). —амосто€тельно проделать возможные построени€ и вычислени€: графики стандартных функций, дифференцирование и интегрирование функциональных выражений, обращение функций, сложение двух функций и т.д.

 

% ”становка дл€ графиков цветов осуществл€етс€ в соответствии со следующими ключевыми обозначени€ми, приведенными в табл.1.:

 

“аблица 1.

 

ќбозначение цвета ÷вет (по-английски) ÷вет (по-русски)

 

y yellow желтый

 

m magenta светло-фиолетовый

c cyan светло-зелЄный r red красный

g green зелЄный

b blue голубой (синий)

w white белый k black черный

 

—м. п.2.8, где начертание графика осуществл€етс€ красным цветом.

 

«адание: п.2.8 выполнить в соответствии с цветами, приведенными в таблице 1. ¬ыполнить построени€ графиков с помощью fplot, например:

 

ї fplot('sin(t)',[-5,5],'r'),grid, hold on,fplot('3*cos(t)',[-5 5],'g') % — красным и зеленым цветами

 

% Ќачертание графиков различными символами может быть выполнено в соответствии с ключевыми символами, приведенными в табл.2.

“аблица 2.

 

ќбозначение символа

јнглийское название

–усское название

 

 

Ј (обычна€ точка)

point

точка

 

o

circle

окружность

 

x

x-mark

крестик

 

*

star

звездочка

 

s

suare

квадратики

 

d

diamond

алмаз

 

v

triangle (down)

треугольник (вниз)

 

^

triangle (up)

треугольник (вверх)

 

<

triangle (left)

треугольник (левый)

 

>

triangle (right)

треугольник (правый)

 

p

pentagram

п€тиконечна€ звездочка

 

h

hexagram

шестиконечна€ звездочка

 

-

solid

непрерывна€ лини€

 

:

dotted

пункрирна€ лини€ (:)

 

-.

dashdot

штрих-пунктирна€ лини€

 

--

dashed

разрывна€ лини€

 

 

«адание: п.2.7 выполнить в соответствии с символами, приведенными в таблице 2., п.2.8 выполнить в соответствии с цветами и символами, приведенными в таблицах 1, 2.

 

ѕример 3. ѕостроение графиков функции экспоненциального распределени€

 

¬ соответствии со сценари€ми 1.1 и 1.2 построить функции распределени€ веро€тностей и функции плотности распределени€ веро€тностей.

 

1-й способ построени€ интегральной функции распределени€ F1:

 

t1=sort(x);

 

F1=1-exp(-2*t1);

 

plot(t1,F1),grid

 

2-й способ построени€ интегральной функции распределени€ F2:

 

p2=rand(48,1);

 

T=expinv(p2,0.5); % параметр 0.5 Ч математическое ожидание

 

t2=sort(T);

 

F2=1-exp(-2*t2);

 

plot(t2,F2),grid

 

3-й способ построени€ интегральной функции распределени€ F3:

 

p3=rand(48,1);

 

T3=expinv(p2,0.5); % параметр 0.5 Ч математическое ожидание

 

t3=sort(T3);

 

F3=expcdf(t3,0.5); % построение по функции expcdf

 

plot(t3,F3),grid

 

ѕример 4. ѕостроение графиков функции плотности экспоненциального распределени€.

 

‘ункци€ плотности экспоненциального распределени€ веро€тностей имеет вид:

 

(3)

 

где m Ч интенсивность распределени€, t Ч случайна€ величина.

 

√рафик функции плотности можно построить трем€ способами. ѕервый и второй способы аналогичны построению интегральной функции распределени€. ѕрименить самосто€тельно.

 

3-й способ построени€ функции плотности экспоненциального распределени€ f3:

 

p3=rand(48,1);

 

T3=expinv(p2,0.5); % параметр 0.5 Ч математическое ожидание

 

t3=sort(T3);

 

f3=exppdf(t3,0.5); % построение по функции exppdf

 

plot(t3,f3),grid

 

«адание.

 

1. —овместить графики функций распределени€ F1, F2, F3 в одной системе координат.

 

2. —овместить графики функций распределени€ f1, f


 

ЋјЅќ–ј“ќ–Ќјя –јЅќ“ј є6

http://apeshnik.narod.ru/matlab/part6.htm

јнализ динамических систем в пространстве состо€ний.

 

‘ункции ss, initial, dss, lsim, системы MATLAB.

 

÷ель работы: изучение возможностей системы MATLAB дл€ анализа динамических свойств линейных непрерывных систем управлени€ в пространстве состо€ний. ѕостроение переходных и импульсных характеристик, анализ динамики с произвольными управл€ющими воздействи€ми и с произвольными начальными услови€ми.

 

ћатематическое описание непрерывной стационарной системы управлени€ в пространстве состо€ний имеет вид

 

(1)

 

где ’ Ч n-мерный вектор состо€ни€, U Ч r-мерный вектор управлени€, Y Ч m-мерный вектор выхода, A Ч n´n матрица, ¬ Ч n´r матрица, — Ч m´n матрица, D Ч m´r матрица (A, B, C, D Ч посто€нные вещественные матрицы).

 

¬екторное дифференциальное уравнение в (1) определ€ет собой €вную форму  оши, т.е. такую форму записи, когда дифференциальное уравнение разрешено относительно производной от неизвестной (и искомой) функции.

 

ќписание в не€вной форме  оши имеет вид

 

(2)

 

где ≈ Ч квадратна€ матрица размера n´n, котора€ задает числовые коэффициенты при производных. ћатрица ≈ по умолчанию равна пустой матрице [].

 

1. ‘ормирование модели непрерывной системы управлени€ в €вной форме  оши Ч ss.

 

ƒл€ формировани€ системы (1) необходимо задать четверку матриц A, B, C, D соответствующих размерностей.

 

ѕример. ћодель трех последовательно соединенных инерционных звеньев, с выходом по 3-й координате.

 

% Ќабираем четверку матриц

 

ї A=[-1.23 0 0;2.5 -0.56 0;0 3 -2.3];

 

ї B=[4;0;0];

 

ї C=[0 0 3.3];

 

ї D=0; % ќбычнее всего матрица D бывает нулевой

 

% —оздаем модель системы под именем s1

 

ї s1=ss(A,B,C,D)

 

% –езультат возвращаетс€ в виде

 

a =

 

x1 x2 x3

 

x1 -1.23 0 0

 

x2 2.5 -0.56 0

 

x3 0 3 -2.3

 

b =

 

u1

 

x1 4

 

x2 0

 

x3 0

 

c =

 

x1 x2 x3

 

y1 0 0 3.3

 

d =

 

u1

 

y1 0

 

Continuous-time system.

 

%  орни характеристического уравнени€ системы s1

 

ї eig(s1) % ћожно использовать и функцию pole

 

ans =

 

-2.3000

 

-0.5600

 

-1.2300

 

%  орни характеристического уравнени€ в тоже врем€ €вл€ютс€ собственными числами матрицы ј

 

ƒл€ сформированной системы можно посмотреть переходные и импульсные характеристики относительно выхода Y.

 

їstep(s1,15),grid % ѕереходна€ характеристика от 0 до 15 ед. времени

 

їimpulse(s1,12),grid % »мпульсна€ характеристика от 0 до 12 ед. времени

 

«адание. ѕостроить характеристики системы при различных значени€х матрицы —:

 

[0 0 1], [0 0 5], [1 0 0], [0 1 0], [1 1 1].

 

% ќпределение размерности модели и результирующего статического коэффициента передачи Ч size, dcgain

 

ї s1=ss(A,B,C,D); % ‘ормирование модели по заданным матрицам

 

ї size(s1)

 

State-space model with 1 input(s), 1 output(s),and 3 state(s).

 

% –езультат действи€ size(s1): 1 вход, 1 выход, три переменных состо€ни€

 

ї dcgain(s1) % ќпределение коэффициента передачи системы s1

 

ans =

 

62.4905

 

% ¬ычислить коэффициент передачи системы при различных матрицах —:

 

[0 0 1], [0 0 0.3], [0 0 5], [1 0 0], [0 1 0], [1 1 1].

 

2. ‘ормирование передаточной функции непрерывной системы управлени€ по заданной модели в пространстве состо€ний.

 

2.1. –ациональна€ передаточна€ функци€ Ч tf.

 

ї tf(s1)

 

Transfer function:

 

 

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

 

s^3 + 4.09 s^2 + 4.806 s + 1.584

 

% —татический коэффициент передачи равен: 99/1.584=62.5

 

2.2. ѕередаточна€ функци€ с выделенными нул€ми и полюсами Ч zpk.

 

ї zpk(s1)

 

Zero/pole/gain:

 

 

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

 

(s+2.3) (s+1.23) (s+0.56)

 

% —татический коэффициент передачи равен:

 

ї 99/(2.3*1.23*0.56)

 

ans =

 

62.4905

 

% ѕовторные преобразовани€ от систем к передаточным функци€м и обратно ведут к накоплению ошибок

 

3. ѕостроение переходного процесса по отработке заданных начальных условий Ч initial.

 

≈сли начальные услови€ не нулевые дл€ системы (1), то ее динамика будет вполне определ€тьс€ собственными движени€ми, т.е. решением системы

 

(3)

 

ƒл€ анализа решени€ системы (3) по выходу Y можно использовать сформированную модель в виде (1) по функции ss (модель s1).

 

% –ассмотрим реакцию системы s1 на следующие начальные услови€ по вектору состо€ни€ ’(0): т.е. вектор начальных условий определ€етс€ вектором-столбцом [10; 10; 10].

 

% —формируем переходный процесс по отработке начальных условий [10; 10; 10]

 

ї initial(s1,[10;10;10],15),grid % Ќа отрезке времени от 0 до 15

 

ї initial(s1,[10;10;10],[0:0.1:7]),grid % ќт 0 до 7 с шагом 0.1

 

% ѕостроим два (можно больше) переходных процесса в одной системе координат.

 

% —начала сформируем две модели s1 и s2

 

ї A1=[-1.23 0 0;2.5 -0.56 0;0 3 -2.3];

 

ї B1=[4;0;0];

 

ї C1=[0 0 3.3];

 

ї D1=0;

 

ї A2=[-3 0 0;5 -2.56 0;0 3.3 -1.3];

 

ї B2=[3;0;0];

 

ї C2=[0 0 3.3];

 

ї D2=0;

 

s1=ss(A1,B1,C1,D1);

 

s2=ss(A2,B2,C2,D2);

 

% «адаем формат записи функции initial дл€ двух систем

 

ї initial(s1,s2,[10;10;10],9),grid,legend('s1','s2')

 

% ¬ектор начальных условий и длительность задаваемого времени должны быть одними и теми же дл€ обеих систем (многих систем)

 

«адание.

 

¾ ѕостроить и сравнить переходные процессы дл€ систем типа (1) и (3) с помощью функции initial.

 

¾ ѕостроить переходные процессы с помощью функции initial дл€ следующих векторов начальных условий: [-10,-10,10], [1,1, 10], [10, 10, 1], [1, 1, -1], [0,0,10].

 

¾ —овместить несколько графиков переходных процессов дл€ одной системы с различными начальными услови€ми

 

¾ ѕостроить переходные процессы двух систем s1 и s2 дл€ различных значений матрицы —2: [0,0,-3.3], [0 0 1], [12 13 -10], [5 0 0], [0 5 0]

 

«амечание. ‘ункци€ initial примен€етс€ только дл€ моделей систем, сформированных в пространстве состо€ний.

 

4. ‘ормирование модели непрерывной системы управлени€ в не€вной форме  оши Ч dss.

 

 огда дифференциальные уравнени€ первого пор€дка не полностью разрешены относительно производных, когда присутствуют множители при производных, отличные от единицы, то така€ форма представлени€ дифференциальных уравнений называетс€ не€вной формой  оши. ќписание таких систем в MATLAB производитс€ с помощью функции dss, котора€ отличаетс€ от ss наличием так называемой весовой матрицей ≈ при производных.

 

ѕример. –ассмотрим систему дифференциальных уравнений следующего вида

 

(4)

 

ѕредставим систему (4) в векторном виде:

 

(5)

 

где Ч скал€рное управление,.

 

ќпределим переходный процесс системы (4) при единичном входном воздействии и нулевых начальных услови€х. ƒл€ этого воспользуемс€ функцией step.

 

% ќпредел€ем матрицы модели

 

ї A=[-0.2 0 0;3 -0.5 0;0 6 -1.8];

 

ї B=[5;0;0]; C=[0 0 1]; D=0;

 

ї E=[2.5 0 0;0 1.07 0;0 0 1.3];

 

% ‘ормируем модель системы в пространстве состо€ний с помощью dss.

 

ї ds1=dss(A,B,C,D,E);

 

% —троим переходный процесс на отрезке времени от 0 до 12.

 

ї step(ds1,12),grid,title('ds1')

 

% — функцией ss переходный процесс будет другим дл€ тех же матриц A,B,C,D

 

s1=ss(A,B,C,D);

 

step(s1,12),grid,title('s1')

 

% ѕроцессы от dss и ss будут совпадать, если дл€ dss выбрана ≈ в виде единичной матрицы.

 

«адание.

 

¾ –ассмотреть переходные процессы дл€ системы 4 с различными коэффициентами при производных, т.е. задать различные матрицы ≈ в dss: ≈12=[2.5 0 0;0 1.07 0;1 0 1.3]; E13=[2.5 0 0.7;0 1.07 0;1 0 1.3]; E14=[1.5 0 0.7;0 1.07 0;1 0 1.3]; E16=[0.989 0 0;0 0.989 0;0 0 0.989] и с различными интервалами интегрировани€: от 7 до 100.

 

¾ ƒл€ систем, сформированных с помощью dss, построить переходные процессы по отработке начальных условий с помощью initial и impulse.

 

5. ѕереходные процессы с произвольными входными воздействи€ми и начальными услови€ми на заданном интервале времени Ч lsim.

 

 оманда lsim примен€етс€ только дл€ моделей систем, сформированных с помощью функции ss.

 

ѕример 1. –ассмотрим переходный процесс системы (4) при на отрезке времени [0 21] с нулевыми начальными услови€ми.

 

% ‘ормирование модели системы в пространстве состо€ний остаетс€ прежним

 

ї A=[-0.2 0 0;3 -0.5 0;0 6 -1.8];

 

ї B=[5;0;0]; C=[0 0 1]; D=0;

 

ї s22=ss(A,B,C,D); % ‘ормирование ss-модели

 

ї t=0:0.1:21;

 

ї u=2*ones(length(t),1); % ¬ектор-столбец, элементы которого равны 2

 

% ќбъединим два переходных процесса

 

ї step(s22,22,'k'),grid,hold on,lsim(s22,u,t,[0;0;0],'m.')

 

% step Ч это реакци€ на единичное воздействие, lsim Ч реакци€ на "удвоенное" воздействие.

 

—формируем воздействие вида

 

ї u=10*exp(-0.1*t).*cos(t); %ѕрименено массивное умножение

 

% —равниваем два переходных процесса

 

ї step(s22,22,'k'),grid,hold on,lsim(s22,u,t,[0;0;0],'m.')

 

ѕример 2. –ассмотрим переходный процесс дл€ системы с двум€ управл€ющими воздействи€ми при нулевых начальных услови€х.

 

(6)

 

ћатрица ј системы (6) така€ же, что и дл€ системы (4), а только изменилась матрица ¬, котора€ теперь имеет вид

 

или как в MATLAB B=[5 0;0 20;0 0].

 

ї A=[-0.2 0 0;3 -0.5 0;0 6 -1.8];

 

ї B=[5 0;0 20;0 0];

 

ї C=[0 0 1]; D=0;

 

ї s33=ss(A,B,C,D);

 

ї dcgain(s33) %  оэффициенты передачи системы по каждому из управлений

 

ans =

 

500.0000 133.3333

 

% ѕереходный процесс формируетс€ по каждому из управлений

 

ї step(s33,21),title('ƒва управлени€ U_1, U_2')

 

% ѕрименим функцию lsim со ступенчатыми управлени€ми на входе системы

 

ї t=0:0.1:41;

 

ї u1=ones([length(t),1]);

 

ї u2=ones([length(t),1]);

 

ї u=[u1, u2]; % ”правление можно определить в виде: u=ones(length(t),2)

 

% —троим переходный процесс

 

їlsim(s33,u,t,[0;0;0]),grid,title('ƒействие 2-х управлений')

 

% —тационарный процесс начинаетс€ на уровне 500+133.3333=633.3333

 

«адание.

 

¾ ѕодобрать элементы матрицы ¬ так, чтобы коэффициент передачи по второму управлению отличалс€ от первого (500) на 200 единиц. ѕостроить переходные процессы с помощью step и lsim.

 

¾ ѕостроить переходные процессы с помощью step и lsim дл€ различных матриц —: [0,1,0], [1,0,0],[1,1,1].

 

¾ —равнить результаты моделировани€ переходных процессов по функции lsim и численного интегрировани€ системы (6) с помощью ode45.

 

„исленное представление переходных процессов с помощью функции step.

 

‘ункцию step можно использовать в числовом формате дл€ расчетов переходных процессов как по выходной переменной Y, так и по всему вектору состо€ни€ ’. –езультаты расчетов затем могут быть аргументами графического постоител€ plot.

 

јнализ переходных процессов системы (6) с двум€ управлени€ми:

 

ї A=[-0.2 0 0;3 -0.5 0;0 6 -1.8];

 

ї B=[5 0;0 20;0 0];

 

ї C=[0 0 1]; D=0;

 

ї s44=ss(A,B,C,D);

 

% —формирована модель s44 по заданным матрицам A, B, C, D

 

% ѕрименим числовой формат функции step

 

ї [y,t,x]=step(s1,21); % –асчет на отрезке времени от 0 до 21

 

% ќпределим размерности y,t,x

 

ї size(y),size(t),size(x)

 

ans =

 

101 1 2 % –азмерность вектора выхода Y

 

ans =

 

101 1 % –азмерность интервала интегрировани€ t

 

ans =

 

101 3 2 % –азмерность вектора состо€ни€ ’

 

¬ектор выход Y единственный, но рассчитан по каждому из управлений (которых два). ¬ектор состо€ни€ ’ третьего пор€дка (как и заданна€ система) и также он рассчитан по двум управлени€м. »нтервал интегрировани€ разбит на 101 точку.

 

–азмерности Y, X необходимо учитывать при построении графиков с помощью функции plot.

 

% ѕостроим график выхода по каждому из управлений в одной системе координат

 

ї plot(t,y(:,1,1),'r'), grid, hold on, plot(t,y(:,1,2)), legend('Y_1','Y_2')

 

% ѕостроим график вектора состо€ни€ ’ по первому управлению

 

ї plot(t,x(:,:,1)),grid,legend('X_1','X_2','X_3'),title('— 1-м управлением')

 

% ѕостроим график вектора состо€ни€ ’ по второму управлению

 

ї plot(t,x(:,:,2)),grid,legend('X_1','X_2','X_3'),title('— 2-м управлением')

 

% ѕерва€ координата равна нулю, так как 2-е управление начинает действовать только после второго звена (система 6 описывает последовательное соединение 3-х инерционных звеньев).

 

«адание.

 

¾ ѕрименить step в числовом формате дл€ анализа системы (6) с одним управл€ющим воздействием.

 

¾ ѕрименить step в числовом формате дл€ анализа системы (6) с трем€ управл€ющими воздействи€ми. ѕрин€ть коэффициент при управлении в третьем уравнении: 2, 10, 20, 0.2.

 

„исленное представление переходных процессов с помощью функции lsim.

 

јнализ переходных процессов системы (6) с двум€ управлени€ми:

 

% ‘ормирование ss-модели остаетс€ прежним. ѕрименим числовой формат lsim.

 

ї[y1,t1,x1]=lsim(s1,u,T,[0;0;0]);%— нулевым начальным вектором ’

 

ї size(y1),size(t1),size(x1)

 

ans =

 

211 1 % –азмерность вектора выхода

 

ans =

 

211 1 % –азмерность (количество точек) интервала интегрировани€

 

ans =

 

211 3 % –азмерность вектора состо€ни€

 

% „исловой формат lsim представл€ет результирующее решение системы от действи€ обоих (всех) управлений

 

% ѕостроим графики решений

 

ї plot(t1,y1), grid, title('¬ектор выхода')

 

ї plot(t1,x1), grid, title('¬ектор состо€ни€'),legend('x_1','x_2','x_3')

 

«адание.

 

¾ ѕрименить числовой формат lsim дл€ управлений вида:,,,. –екомендуетс€ проверить размерность каждого из управлений, прежде чем формировать векторное управление, которое войдет в lsim.

 

¾ –ешение и графики рассмотреть на отрезке времени [0, 50] и при различных матрицах —: [1, 0, 0], [0, 1, 0], [1, 1, 1].

 

„исленное представление импульсных переходных процессов

 

с помощью функции impulse.

 

% –ассчитаем и построим имульсную переходную функцию системы (6)

 

ї [Y0,T0,X0]=impulse(s1,25); % Ќа отрезке от 0 до 25

 

ї size(Y0),size(T0),size(X0)

 

ans =

 

101 1 2 % –азмерность вектора выхода

 

ans =

 

101 1 % –азмерность интервала интегрировани€

 

ans =

 

101 3 2 % –азмерность вектора состо€ни€

 

% ¬ыходна€ импульсна€ характеристика

 

ї plot(T0,Y0(:,:,1),'r'), grid, hold on, plot(T0,Y0(:,:,2),'m'), legend('от u_1','от u_2')

 

% »мпульсна€ характеристика от первого управлени€


 

ЋјЅќ–ј“ќ–Ќјя –јЅќ“ј є5

http://apeshnik.narod.ru/matlab/part5.htm

ѕрименение функций операционного исчислени€

 

дл€ исследовани€ линейных динамических систем

 

в системе MATLAB.

 

ѕреобразование Ћапласа в MATLAB Ч функци€ laplace.

 

1.1. syms x y t; % задание символьных переменных

 

f1 = t; % зададим функцию-оригинал;

 

L1 = laplace(f1) % определение изображени€ по Ћапласу от линейной функции;

 

f2 = sym('10'); % функцию f2 = 10 выражаем в символьном виде;

 

L2 = laplace(f2) % определение изображени€ от посто€нной;

 

f3 = sym('3')*t + sym('7'); % оригинал линейной функции;

 

L3 = laplace(f3) % изображение линейной функции;

 

f4 = exp(-t); % оригинал экспоненциальной функции (со знаком минус);

 

L4 = laplace(f4) % изображение экспоненциальной функции;

 

f5 = exp(t); % оригинал экспоненциальной функции (со знаком плюс);

 

L5 = laplace(f5) % изображение экспоненциальной функции;

 

L6 = laplace(exp(t))

 

f6 = sin(x);

 

L6 = laplace(f6) % изображение тригонометрической функции sin(x);

 

L7 = laplace(cos(x)) % изображение тригонометрической функции cos(x);

 

ѕередаточные функции.

 

ќпределение. ѕередаточной функцией линейной динамической системы называетс€ отношение изображени€ по Ћапласу выходного сигнала к изображению по Ћапласу входного сигнала при нулевых начальных услови€х.

 

ѕередаточна€ функци€ в общем случае €вл€етс€ дробно рациональной функцией относительно оператора преобразовани€ Ћапласа:

 

(1)

 

”словие m £ n отвечает условию реализуемости систем.

 

—оздание передаточных функций Ч tf. % —м. help tf;

 

2.1. —формируем следующую передаточную функцию W1:

 

. (2)

 

2.2. ¬ командной строке MATLAB набираем (или создаем ћ-сценарий):

 

W1=tf(12,[1 2 3 1])

 

% –езультат возвращаетс€ в виде:

 

Transfer function:

 

 

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

 

s^3 + 2 s^2 + 3 s + 1

 

2.3.. —формируем следующую передаточную функцию W2:

 

. (3)

 

¬ командной строке MATLAB набираем:

 

W2=tf([3 5 4],[1 2 3 1])

 

% –езультат возвращаетс€ в виде:

 

Transfer function:

 

3 s^2 + 5 s + 4

 

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

 

s^3 + 2 s^2 + 3 s + 1

 

‘ормирование передаточных функций с разложением на множители числител€ и знаменател€ с заданным коэффициентом передачи Ч zpk (zero-pole-gain), символ k отображает gain.

 

Ќули передаточной функции Ч это корни числител€, полюса Ч корни знаменател€.

 

2.4. —формируем передаточную функцию со статическим коэффициентом, равным 7.7, и с полюсами. Ќазовем ее передаточной функцией с выделенными нул€ми и полюсами.

 

¬ командной строке MATLAB набираем:

 

W3=zpk([],[-3.3,-0.25,-12.7],7.7)

 

% –езультат возвращаетс€ в виде:

 

Zero/pole/gain:

 

7.7

 

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

 

(s+3.3) (s+12.7) (s+0.25)

 

% —имвол []означает, что в числителе передаточной функции характеристический полином

 

%нулевой

 

2.5. —формируем передаточную функцию со статическим коэффициентом, равным 7.7, с полюсами и с нул€ми.

 

¬ командной строке MATLAB набираем:

 

W4=zpk([4,-5],[-3.3,-0.25,-12.7],7.7)

 

% –езультат возвращаетс€ в виде:

 

Zero/pole/gain:

 

7.7 (s-4) (s+5)

 

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

 

(s+3.3) (s+12.7) (s+0.25)

 

2.6. ¬заимное преобразование форм передаточных функций.

 

2.6.1. ѕреобразуем полученную передаточную функцию W4 в рациональную форму:

 

% ¬ командной строке MATLAB набираем:

 

ї w44=tf(W4)

 

% –езультат возвращаетс€ в виде:

 

Transfer function:

 

7.7 s^2 + 7.7 s - 154

 

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

 

s^3 + 16.25 s^2 + 45.91 s + 10.48

 

2.6.2. ѕреобразуем рациональную передаточную функцию в форму с выделенными нул€ми и полюсами:

 

% ¬ командной строке MATLAB сформируем простую передаточную функцию вида:

 

.

 

W5=tf(10,[1,3,2])

 

% –езультат возвращаетс€ в виде:

 

Transfer function:

 

 

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

 

s^2 + 3 s + 2

 

% ѕолученна€ передаточна€ функци€ соответствует описанию объекта, состо€щего из двух последовательно соединенных инерционных звеньев с результирующим коэффициентом передачи, равным 10, и посто€нными времени.

 

% ѕередаточна€ функци€ с выделенными нул€ми и полюсами w55:

 

w55=zpk(W5) % ‘ормат преобразовани€

 

% –езультат преобразовани€

 

Zero/pole/gain:

 

 

---------

 

(s+2)(s+1)

 

% ѕреобразуем рациональную передаточную функцию W2 в форму с выделенными нул€ми и полюсами:

 

w22=zpk(W2) % ‘ормат преобразовани€

 

% –езультат преобразовани€

 

Zero/pole/gain:

 

3 (s^2 + 1.667s + 1.333)

 

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

 

(s+0.4302) (s^2 + 1.57s + 2.325)

 

% –ассмотренные передаточные функции типа (1) описывают объекты управлени€ с одним входом и одним выходом Ч системы SISO (single input single output).

 

2.7. ќценка динамики объекта управлени€ по заданной передаточной функции.

 

ƒинамика объекта управлени€ определ€етс€ знаменателем передаточной функции, точнее корн€ми характеристического уравнени€, составленного из знаменател€. ≈сли корни характеристического уравнени€ "левые", то соответствующий переходный процесс будет установившимс€, если же корни "правые", то переходный процесс будет неустановившимс€, т.е. стремитьс€ к бесконечности (по выходной координате объекта или по всем возможным координатам).

 

ƒл€ расчета корней характеристического уравнени€ можно использовать функцию eig.

 

2.7.1. ќпределим корни характеристического уравнени€ дл€ объекта с передаточной функцией W5 и w55.

 

ї eig(W5) % W5 Ч рациональна€ передаточна€ функци€

 

ans =

 

-2

 

-1

 

ї eig(w55) % w55 Ч передаточна€ функци€ с выделенными нул€ми и полюсами

 

ans =

 

-2

 

-1

 

% –езультат получен один и тот же. ‘орма w55 позвол€ет сразу определить корни, если

 

% они простые

 

2.7.2. ќпределим корни характеристического уравнени€ дл€ объекта с передаточной функцией W2 и w22.

 

їeig(W2) % W2 Ч рациональна€ передаточна€ функци€

 

ans =

 

-0.7849 + 1.3071i

 

-0.7849 - 1.3071i

 

-0.4302

 

їeig(w22) %w22 Ч передаточна€ функци€ с выделенными нул€ми и полюсами, получена из W2

 

ans =

 

-0.7849 + 1.3071i

 

-0.7849 - 1.3071i

 

-0.4302

 

% ѕолучены два комплексных корн€ и один простой. ѕростой корень легко может быть определен из передаточной функции w22.

 

2.7.3. ѕередаточные функции с кратными корн€ми.

 

«ададим простой корень, равный 6.78 тройной кратности и с помощью zpk сформируем следующую передаточную функцию w66:

 

ї w66=zpk([],[-6.78,-6.78,-6.78],7)

 

% –ассчитаем корни соответствующего характеристического уравнени€

 

ї eig(w66)

 

ans =

 

-6.7800

 

-6.7800

 

-6.7800

 

% ѕолучены три простых одинаковых корн€

 

2.7.4. ѕередаточные функции с комплекными корн€ми.

 

 омплексные корни вход€т сопр€женными парами.

 

«ададим один простой корень и два комплесно-сопр€женных с помощью zpk.

 

ї w77=zpk([],[-5+2.3*i,-5-2.3*i,-5.7],6)

 

Zero/pole/gain:

 

 

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

 

(s+5.7) (s^2 + 10s + 30.29)

 

% »меем один простой корень, равный -5.7, и два комплесно-сопр€женных: -5+2.3i; -5-2.3i, где

 

% i Ч символ мнимой единицы (можно использовать и j одновременно или совместно).

 

–ациональна€ передаточна€ функци€, соответствующа€ w77, будет иметь вид:

 

ї W77=tf(w77)

 

Transfer function:

 

 

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

 

s^3 + 15.7 s^2 + 87.29 s + 172.7

 

ѕередаточные функ





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-05-05; ћы поможем в написании ваших работ!; просмотров: 438 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

—воим успехом € об€зана тому, что никогда не оправдывалась и не принимала оправданий от других. © ‘лоренс Ќайтингейл
==> читать все изречени€...

575 - | 516 -


© 2015-2023 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 1.257 с.