Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Моделирование линейных непрерывных систем




 

Как было показано в лабораторной работе № 1, для моделирования линейных динамических систем в MATLAB используют две основные формы описания. Первая форма – это описание систем с помощью передаточных функций. Вторая форма, модель в пространстве состояния, использует описание в виде системы обыкновенных дифференциальных уравнений. Данные формы представления линейных систем относятся к LTI-моделям (Linear Time Invariant System Object – объект типа "линейная автономная система"), которые могут быть преобразованы в любую одну из форм.

Для моделирования непрерывных динамических систем используется раздел библиотеки Continuous, в котором блок Transfer Fcn служит для задания звеньев с помощью передаточных функций. Для определения параметров этого звена в диалоговом окне в строке Numerator по правилу задания массивов нужно ввести вектор коэффициентов числителя передаточной функции, а в строке Denumerator – вектор коэффициентов знаменателя.

Для задания, например, передаточной функции

 

необходимо открыть блок Transfer Fcn и ввести соответствующие массивы коэффициентов полиномов числителя и знаменателя передаточной функции (рис. 4).

 

 

Рис. 4

 

Блок Zero-Pole служит для создания передаточной функции с заданными нулями и полюсами в факторной zpk форме. Например, для передаточной функции

                                ,                                 (1)

с нулями ,  и полюсами , ,  и коэффициентом передачи  блок с исходными данными представлен на рис. 5.

 

Рис. 5

 

Обычно передаточные функции представлены в нормализованном виде, когда значения  и  передаточной функции (1) вынесены за скобки и отнесены к коэффициенту :

.

В этом случае с помощью оператора conv(a,b), формирующего вектор коэффициентов полинома, равного произведению полиномов с векторами коэффициентов a и b, составим вектора

m = 3.75*conv([1 1],[1/3 1]);

d = conv(conv ([1 0],[1/2 1]), [1/4 1]);

и выполним эти операции присвоения в основном окне команд системы MATLAB. Затем в блоке Transfer Fcnиспользуем имена векторов m, d в качестве исходных данных (рис. 6).

Аналогично вектора m, d можно ввести с помощью предварительно созданного Script – файла, после выполнения которого в блоке рис. 6 S-модели вектора m, d примут заданные значения.

 

Рис. 6

 

Такие способы ввода данных можно использовать для соответствующих блоков библиотеки Simulink.

Блок State-Space служит для задания линейной модели звена в форме пространства состояний, которая представляется системой дифференциальных уравнений первого порядка:

                                                                       (2)

где  - вектор состояния системы;  - вектор начальных условий;  - вектор входа; - вектор выхода, , , , – постоянные матрицы.

Для задания звена (2), например, с матрицами и начальным условием:

 

, , , , ,

 

необходимо открыть блок State-Space и ввести соответствующие массивы матриц и вектор начальных условий (рис. 7).

Как указывалось выше, вместо массивов можно ввести их имена, которым предварительно присваиваются заданные значения.

 

Рис. 7

 

Другой способ задания LTI объектов связан с использованием блока LTI System, расположенного в разделе Blocksets and Toolboxes.Для задания LTI объекта необходимо открыть блок, указать в первой строке его имя, во второй строке для ss- формы имя вектора начальных условий (рис. 8).

 

 

Рис. 8

В этом случае необходимо предварительно определить LTI- объект с именем W1 и ввести значения вектора x20.

Пример 1.Рассмотрим структурную схему САУ, представленную на рис. 7.

Рис. 7

 

Здесь блоки представлены следующим образом:

блок  (zpk - форма)

;

блок  (ss - форма) вида (2) с матрицами

, , , , ;

блоки  и : коэффициенты усиления  и  соответственно;

блок  (tf - форма)

.

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

Для решения данной задачи составим листинг программы в Script-файле:

%Лабораторная работа №2

%Моделирование САУ в системе MATLAB и Simulink

%Исходные данные:

%Блок 1

W1= zpk([-0.7 -0.8],[-0.5 -1.5],1);%zpk-передаточная функция

%Блок 2

A2=[-1 0;1 0];B2=[2;0];C2=[0 1];D2=0;%матрицы

x20=[1.3;0];%вектор начальных условий

W2= ss(A2,B2,C2,D2);%ss-форма блока

%Блоки 3,4

k3=3.1; k4=2;%коэффициенты усиления

%Блок 5

W5= tf(1,[1 1 0]);%tf-передаточная функция

%Входные значения

u1=1;u5=2;

%Построение модели проведено в S-файле с именем 'Labrab2'

sim('Labrab2')%вызов на выполнение S-файла

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

figure(1);simplot(y)

figure(2);plot(t,yg);grid

 

По структурной схеме рис. 7 составим S-модель, приведенную на рис. 8, где в блоках использованы соответствующие обозначения.

 

 

Рис. 8

 

В результате выполнения программы на печать будут выведены два одинаковых графика, причем график на Figure 1 имеет черный фон и перед выводом на принтер требует редактирования. График на Figure 2 отображается на белом фоне (рис. 9), который также может быть отредактирован средствами графического окна.

 

 

Рис. 9

 

Экспериментальная часть

 

В данной части лабораторной работы для заданного преподавателем варианта задания составить S-модель системы, Script – файл с листингом программы для определения передаточных функций, указанных на структурной схеме, и их связей.

Шифр варианта задания состоит из буквы и семи групп цифр, где буква означает тип структурной схемы, приведенной на рис. 10, рис. 11, а в каждой паре цифр первая цифра означает номер блока, а вторая цифра (1 или 2) вариант его задания в таблице 1. Например, задание А–12–21– 31–42–52–61–71 означает, что задана схема А (рис. 10), где блоки 2, 3, 6, 7 заданы в форме передаточных функций, а блоки 1, 4, 5 в форме пространства состояния.

Входными являются сигналы , , принимающие различные значения:

1) , ;

2) , .

Выходными являются сигналы ,  для схемы А; ,  для схемы Б, для которые требуется построить переходные процессы различными способами.

 

Рис. 10. Структурная схема А

 

Рис. 11. Структурная схема Б

 

Таблица 1

Варианты формы представления блока

Передаточная функция Матрицы дифференциального равнения
1 2
, , ,
, , ,
, , ,
, , ,
, , ,
, , ,
, , ,

 

Контрольные вопросы

 

1. С помощью какого блока можно задать коэффициент усиления в S-файле?

2. Сколько входных сигналов может быть у блока суммирования Sum?

3. Для какого LTI-объекта учитываются начальные условия?

4. Каким образом можно скопировать фрагмент модели в S-файле?

5. В чем особенность использования блока LTI System?

6. Как задать интервалы интегрирования системы S-файла?

7. С помощью какой команды можно выполнить S-файл?

8. С помощью каких команд можно отобразить в одном графическом окне несколько графиков и нанести сетку?

9. В чем недостаток графического блока Scope?

10. С помощью какого блока можно создать массив данных выхода?

 

Список литературы

 

1. Дьяконов В.П. MATLAB 6.5 SPl/7 + Simulink 5/6@. Основы применения. Серия «Библиотека профессионала». М.: СОЛОН - Пресс, 2005.










Последнее изменение этой страницы: 2018-05-10; просмотров: 272.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...