Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчет 1

.doc
Скачиваний:
5
Добавлен:
16.04.2021
Размер:
67.58 Кб
Скачать

ГУАП

КАФЕДРА № 14

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

доц., канд. техн. наук

Г.С. Бритов

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1

Описание систем в пространстве состояний

по курсу: ТЕОРИЯ СИСТЕМ И СИСТЕМНЫЙ АНАЛИЗ

РАБОТУ ВЫПОЛНИЛИ

СТУДЕНТЫ ГР. №

4716

Е.А. Шуб

С.А. Янышева

подпись, дата

инициалы, фамилия

Санкт-Петербург 2019

Содержание

Описание систем в пространстве состояний 1

по курсу: ТЕОРИЯ СИСТЕМ И СИСТЕМНЫЙ АНАЛИЗ 1

Постановка задачи 3

Математическая модель 3

Уравнения 3

Матрицы 3

Программы 4

Сценарий 4

Функции 4

Результаты моделирования 4

Диалог 4

Графики 6

Выводы 8

Постановка задачи

Исследовать динамические характеристики системы, математическая модель которой представлена описанием в пространстве состояний.

Для выполнения работы необходимо решить следующие задачи:

  1. Написать программу-сценарий в математическом пакете MatLab, который обеспечивает следующие возможности исследования системы:

    1. Ввод матриц уравнений состояний.

    2. Анализ динамических характеристик.

    3. Расчет реакции на заданные входные воздействия.

    4. Просмотр полученных результатов.

  2. Написать необходимые для сценария функции.

  3. Выполнить моделирование системы для заданного ее зачетного варианта.

Математическая модель

Уравнения

x(t+1) = Ax(t) + Bu(t), x(0) = x0

y(t) = Cx(t) + Du(t),

s=eig(A)

R=max(abs(eig(A)))

H = obsv(A, C)

rank(H) = n

G = ctrb(A, B)

[y,x] = dlsim(A,B,C,D,u,x0)

Матрицы

A =

0.6000 0.4000 0.6000

0.1000 0.4000 0.5000

0.3000 0.2000 -0.1000

Ввести матрицу B =[1 0 0]

B =

1

0

0

Ввести матрицу C =[0 0 1]

C =

0 0 1

Программы

Сценарий

%Сценарий моделирования объектов

while 1

upr = menu ('Режим:', 'Ввод', 'Вычисления', 'Просмотр', 'Выход');

if upr == 1

disp('Начало ввода')

A=input('Ввести матрицу А =')

B=input('Ввести матрицу B =')

C=input('Ввести матрицу C =')

k=input('Ввести число шагов k =')

x0=input('Ввести вектор начальных условий х0 =')

a=input('первый предел a=');

b=input('первый предел b=');

disp(' Конец ввода')

elseif upr == 2

disp('Вычисления ...')

D=zeros(size(C,1),size(B,2));

s=eig(A);

G=ctrb(A,B);

H=obsv(A, C);

g=rank(G);

h=rank(H);

u=a+b*randn(1,k);

[y,x] = dlsim(A,B,C,D,u,x0);

disp('Конец вычислений ')

elseif upr == 3

disp('Просмотр')

t=0:k-1;

plot(s)

figure(2)

plot(t,u)

figure(3)

plot(t,y)

figure(4)

plot(t,x)

disp('Конец просмотра ')

elseif upr == 4

disp ('Выход из программы')

break

end

end

Функции

Не требуются

Результаты моделирования

Диалог

>> lab1

Начало ввода

Ввести матрицу А =[1-0.1-0.3 0.4 0.6;0.1 1-0.4-0.2 0.5; 0.3 0.2 1-0.5-0.6]

A =

0.6000 0.4000 0.6000

0.1000 0.4000 0.5000

0.3000 0.2000 -0.1000

Ввести матрицу B =[1 0 0]

B =

1

0

0

Ввести матрицу C =[0 0 1]

C =

0 0 1

Ввести число шагов k =10

k =

10

Ввести вектор начальных условий х0 =0

x0 = [0;0;0]

0

0

0

первый предел a=0

первый предел b=10

Конец ввода

Вычисления ...

Конец вычислений

Просмотр

Конец просмотра

Выход из программы

>>

Графики

Рисунок 1 – Спектр

Рисунок 2 – Входной сигнал

Рисунок 3 – Выходной сигнал

Рисунок 4

Выводы

Исследованы динамические характеристики системы по заданному варианту, написаны программу-сценарий в математическом пакете MatLab, который обеспечивает следующие возможности исследования системы:

  1. Ввод матриц уравнений состояний.

  2. Анализ динамических характеристик.

  3. Расчет реакции на заданные входные воздействия.

  4. Просмотр полученных результатов.

Написаны необходимые для сценария функции и выполнили моделирование системы для заданного ее зачетного варианта.

Соседние файлы в предмете Теория систем и системный анализ