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

Элементы математического моделирования в программных средах MATLAB 5 и Scilab (Андриевский Фрадков)

.pdf
Скачиваний:
895
Добавлен:
22.03.2015
Размер:
4.51 Mб
Скачать

При объявлении глобальных переменных следует указывать их списки оператором global как в вызывающей программе, так и в подпрограмме, причем по тексту программы это объявление должно предшествовать инициации переменных. Следует внимательно относиться к операторам инициации массивов zeros, ones, rand и т.д. Например, при выполнении операторов а=[2 3 5 7] ; b=zeros(a) в среде MATLAB 3 получим массив b размера 1x4, состоящий из четырех нулевых элементов, а в среде MATLAB 5 - массив с четырьмя измерениями размера 2x3x5x7, содержащий 210 нулевых элементов. Лля получения того же самого результата в версии 5 следует написать b=zeros(size(a)) .

Признак продолжения оператора на следующей строке в

версии

5 имеет вид

в то время как в версии 3 исполь-

зуется

конструкция

.".

Наиболее существенные отличия вызваны совершенно иной концепцией языка MALTAB 5, в основу которой положено объектно-ориентированное программирование [84, 61]. Как следствие, приходится иначе пользоваться тулбоксами пакета. В первую очередь это относится к тулбоксу CONTROL SYSTEMS (разные версии этого тулбокса можно сравнить по [6] и [83]).

Приложение D. Сведения об основных тул боксах системы MATLAB 5

З а м е ч а н и е .

В настоящем Приложении приводятся сведе-

ния о составе системы MATLAB 5 версии MATLAB 5.3.0.10183

(R11) для PCWIN и следующих версий тулбоксов:

-

MATLAB Toolbox 5.3 (Rll) 15-Jan-1999,

-

Control System Toolbox 4.2 (Rll) 15-Jul-1998,

-

System Identification Toolbox 4.0.5 (Rll) 10-Apr-1998,

-

Signal Processing Toolbox 4.2 (Rll)

10-Jul-1998,

-

Communications Toolbox 1.4 (Rll)

10-Jul-1998,

-

Image Processing Toolbox 2.2 (Rll)

05-Aug-1998,

-

Statistics

Toolbox 2.2 (Rll) 24-Jul-1998,

-

Financial

Toolbox 2.0.1 (Rll) 14-Aug-1998,

-

Fuzzy Logic Toolbox 2.0.1 (Rll) 16-Sep-1998,

-

Neural Network Toolbox 3.0.1 (Rll)

Ol-Jul-1998,

D.l Системы управления

В данном параграфе приводятся сведения о тулбоксе CONTROL SYSTEMS системы MATLAB 5, предназначенного в первую очередь для решения задач автоматического управления [61, 84]. Надо заметить, что область применения этого тулбокса гораздо шире и распространяется на самые разнообразные классы динамических систем.

З а м е ч а н и е . Линейную систему с постоянными параметрами ниже называем ЛС-моделью (линейной стационарной моделью), или LTI-моделью (Linear Time Invariant). Модель ЛС-системы в виде нулей, полюсов передаточной функции и коэффициента передачи ниже называем НПК-моделью, или

ZPK-моделыо.

Создание ЛС-моделей

ss

-

создание модели в уравнениях состояния, преоб-

 

 

разование ЛС-модели к уравнениям состояния;

zpk -

определение НПК-моделей, преобразование мо-

 

 

дели к виду НПК;

tf

- определение передаточной функции, преобразов-

 

 

ание ЛС-модели к передаточной функции;

222

dss

 

-

описание модели в дескрипторной форме;

filt

 

- описание дискретных передаточных

функций в

 

 

 

форме цифровых фильтров (11Ф);

 

ltiprops - свойства ЛС-системы.

 

Извлечение данных

 

 

ssdata

 

-

доступ к данным в форме уравнений

состояния;

zpkdata - доступ к НПК-данным;

 

tfdata

 

-

доступ к данным в виде передаточной функции;

dssdata

 

-

доступ к данным в дескрипторной форме.

Характеристики моделей

 

class

 

-

класс объекта;

 

 

size

 

-

размерности вход-выход-состояние ЛС-модели;

isempty

 

-

"истинно" для пустых матриц и/или

ЛС-систем;

isct

 

-

"истинно" для систем непрерывного времени;

isdt

 

-

"истинно" для систем непрерывного времени;

isproper

 

-

"истинно" для собственных систем;

 

issiso

 

-

"истинно" для SISO-систем;

 

isa

 

-

"истинно", если объект принадлежит к заданному

 

 

 

классу;

 

 

isobject

 

-

"истинно" для

объектов.

 

Преобразования

 

 

c2d

 

-

дискретизация

модели;

 

d2c

 

-

континуализация модели;

 

d2d

 

-

изменение периода дискретности, задание запаз-

 

 

 

дываний по входам;

 

inv

 

- обращение ЛС-системы.

 

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

 

pole

-

 

вычисление полюсов ЛС-систем;

 

eig

-

 

собственные значения и собственные векторы;

tzero

-

 

получение нулей ЛС-систем;

 

pzmap -

 

расположение полюсов и нулей ЛС-систем;

223

dcgain - статический коэффициент передачи JIC-систем;

norm

-

нормы ЛС-систем;

 

 

 

covar

-

матрица ковариаций реакции ЛС-системы на бе-

 

 

лый шум;

 

 

 

 

 

damp

-

собственные частоты и коэффициенты демпфиро-

 

 

вания для полюсов ЛС-систем;

 

esort

-

сортировка

комплексных

собственных

значений

 

 

непрерывных систем;

 

 

 

dsort

-

сортировка

комплексных

собственных

значений

 

 

дискретных

систем;

 

 

 

pade

-

аппроксимация

временного

запаздывания по

 

 

Паде.

 

 

 

 

 

Модели в уравнениях

состояния

 

 

rss

 

-

 

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

 

 

 

 

параметрами;

 

 

 

 

drss

 

-

устойчивая дискретная

система со

случайными

 

 

 

 

параметрами;

 

 

 

 

ss2ss

 

-

 

преобразование базиса уравнений состояния;

canon

 

-

 

канонические формы уравнений состояния;

jordan

 

-

 

каноническая форма Жордана;

 

ctrb

 

-

 

матрица управляемости;

 

 

 

ctrbf

 

-

 

лестничная форма управляемости;

 

obsv

 

-

 

матрица наблюдаемости;

 

 

obsvf

 

-

 

лестничная форма наблюдаемости;

 

gram

 

-

 

грамианы управляемости и наблюдаемости;

ssbal

 

-

 

балансировка уравнений состояния модели мето-

 

 

 

 

дом диагонализации;

 

 

 

balreal

 

-

 

балансировка уравнений состояния модели через

 

 

 

 

грамиан;

 

 

 

 

 

compbal

-

 

балансировка уравнений состояния SIMO-систем

 

 

 

 

в сопровождающей форме;

 

 

modred

 

-

 

понижение порядка модели;

 

minreal

 

-

минимальная

реализация

и сокращение нулей и

 

 

 

 

полюсов;

 

 

 

 

 

augstate -

добавление состояний к выходам модели в про-

 

 

 

 

странстве

состояний.

 

 

 

224

Временные характеристики

step

-

 

переходная функция JIC-системы;

impulse - весовая функция ЛС-системы;

initial

-

 

реакция на начальные условия для моделей в

 

 

 

уравнениях

состояния;

lsim

-

 

моделирование ЛС-системы при произвольном

 

 

 

входном воздействии;

ltiwiew

-

открытие графического пользовательского ин-

 

 

 

терфейса для временных характеристик в ЛС-

 

 

 

тул боксе (LTI Toolbox);

gensig

-

 

генератор периодических сигналов для расчета

 

 

 

временных характеристик по lsim;

stepfun - единичная ступенчатая функция.

Частотные характеристики

bode

-

 

характеристики Боде (ЛАФЧХ) для ЛС-систем;

sigma

-

 

частотная характеристика сингулярных чисел ;

nyquist

-

 

частотная характеристика Найквиста;

nichols

-

 

диаграмма

Никольса;

evalfr

-

 

частотные характеристики на заданной частоте;

freqresp - частотные характеристики ЛС-системы;

margin

-

 

запасы устойчивости по усилению, по фазе и

 

 

 

частоты пересечений.

Соединения систем

 

append

 

-

группировка ЛС-систем присоединением входов

 

 

 

и выходов;

 

parallel

 

-

параллельное соединение двух ЛС-систем;

series

 

-

последовательное соединение двух ЛС-систем;

feedback

-

соединение двух систем с обратной связью;

star

 

- соединение "звездой" ЛС-систем;

connect

 

- приведение

модели в уравнениях состояния к

 

 

 

структурным соединениям.

Классические методы синтеза систем управления

rlocus

-

 

корневой годограф;

rlocfind

-

определение коэффициентов усиления по задан-

 

 

 

ным корням характеристического многочлена;

8 Б. Р. Андриевский и др.

225

 

acker

-

вычисление матрицы обратной связи по формуле

 

 

Аккермана

(Аскегтапп);

place

- вычисление

матрицы обратной связи по задан-

 

 

ным полюсам;

estim

- вычисление

коэффициента передачи наблюдате-

 

 

ля;

 

destim

-

построение дискретного фильтра Калмана;

reg

-

формирование регулятора в виде обратной связи

 

 

по состоянию и наблюдателя.

Методы синтеза линейно-квадратичных оптимальных регуляторов

lqr

-

линейно-квадратичный

регулятор для

непрерыв-

 

 

ных систем;

 

 

 

dlqr

-

линейно-квадратичный

регулятор для

дискрет-

 

 

ных систем;

 

 

 

dreg

-

линейно-квадратичный гауссовский регулятор

 

 

для дискретных систем;

 

 

 

lqry

-

ЛК-регулятор со взвешиванием выходов;

 

dlqry

-

ЛК-регулятор со взвешиванием выходов для дис-

 

 

кретных систем;

 

 

 

lqrd

-

дискретный ЛК-регулятора с непрерывной функ-

 

 

цией потерь;

 

 

 

dlqe

-

синтез фильтра Калмана для дискретных

систем;

dlqew

-

синтез фильтра Калмана для дискретных

систем

 

 

с влиянием возмущения на выход;

 

 

kalman - непрерывный или дискретный фильтр Калмана;

lqe

- синтез фильтра Калмана для непрерывных

 

систем;

lqed

- синтез дискретного фильтра Калмана по непре-

 

рывной функции потерь;

lqew

- синтез фильтра Калмана для непрерывных си-

 

стем с прямой связью по возмущению;

lqgreg

- синтез линейно-квадратичного гауссовского ре-

 

гулятора.

226

Решение матричных уравнений

 

 

 

lyap

-

решение

непрерывного

матричного

уравнения

 

 

Ляпунова;

 

 

 

dlyap

-

решение

дискретного

матричного

уравнения

 

 

Ляпунова;

 

 

 

саге

-

решение

алгебраического

уравнения

Риккати

 

 

для непрерывных систем;

 

 

dare

-

решение

алгебраического

уравнения

Риккати

 

 

для дискретных систем;

 

 

 

condcig -

числа обусловленности для собственных значе-

 

 

ний матрицы.

 

 

 

D.2. Идентификация систем

В данном параграфе перечисляются программы, составляющие тулбокс SYSTEM IDENTIFICATION системы MATLAB 5, предназначенные для решения задач параметрической и непараметрической идентификации линейных динамических систем. Программы тулбокса разработаны шведским ученым Л. Льюнгом [58, 139, 140].

Моделирование и предсказание

idsim

-

моделирование динамической системы;

ре

-

ошибки предсказания;

poly2th

-

формирование "тета-матрицы" по заданным

 

 

многочленам;

predict

-

предсказание на т шагов.

Действия с данными

dtrend

-

устранение трендов из наборов данных;

idfilt

-

фильтрация данных фильтром Баттерворта (But-

 

 

terworth);

idinput

-

генерация входных сигналов для идентификации;

idresamp

-

изменение частоты отсчета данных.

227

Непараметрическое оценивание

 

covf

-

оценка ковариационной функции по матрице

 

 

данных;

 

era

-

корреляционный анализ;

 

etfe

-

оценка эмпирической передаточной функции и

 

 

периодограммы;

 

spa

-

спектральный анализ.

 

Оценка параметров

 

аг

-

оценка авторегрессионной (А11)-модели процес-

 

 

са;

 

агшах

-

оценка ARMAX-модели;

 

агх

-

МНК-оценка ARX-модели;

 

bj

-

оценка модели Бокса-Дженкинса (Вox-Jenkins);

canstart

-

многосвязная тета-модель с оценками

начальных

 

 

параметров;

 

ivar

-

оценка методом инструментальной

переменной

 

 

(ИП) авторегрессионной составляющей послед-

 

 

овательности;

 

iv4

-

приближенно оптимальная ИП-оценка для ARX-

 

 

модели ;

 

n4sid

-

идентификация модели в уравнениях

состояния

 

 

методом подпространств;

 

ое

-

оценка ошибки предсказания для модели выход-

 

 

ной ошибки;

 

pern

-

оценка ошибки предсказания для общей линейной

 

 

модели.

 

Создание моделей заданной структуры

 

arx2th

 

- тета-формат для ARX-модели;

 

canform

 

- структуры моделей канонического вида;

mf2th

 

- перевод структур моделей, определенных поль-

 

 

зователем, в тета-формат;

 

modstruc

- структура модели для использования в ms2th;

ms2th

 

- перевод стандартной параметризации в уравне-

 

 

ниях состояния в тета-формат;

 

poly2th

 

- "тета-матрица" по заданным многочленам.

228

Действия со структурами моделей

fixpar

- закрепление значений параметров моделей в

 

уравнениях состояния и ARX-моделях;

sett

- задание интервала квантования в тета-структуре;

thinit

- (случайные) начальные значения параметров;

unfixpar - освобождение значений параметров в моделях

 

состояния и ARX-моделях.

Преобразования моделей

 

 

 

 

idmodred - понижение порядка модели;

 

 

 

th2arx

-

преобразование модели из тета-формата в ARX-

 

 

модель;

 

 

 

 

 

th2ff

-

частотная

характеристика

модели

вместе со

 

 

средним отклонением;

 

 

 

th2par

-

тета-форма

для

параметров

и

ковариационной

 

 

матрицы;

 

 

 

 

 

th2poly

-

полиномы, связанные с данной

моделью;

th2ss

-

преобразование тета-модели в уравнения состоя-

 

 

ния;

 

 

 

 

 

th2tf

-

преобразование тета-модели в передаточную фу-

 

 

нкцию;

 

 

 

 

 

th2zp

-

нули, полюсы, коэффициенты передачи и их сре-

 

 

дние отклонения;

 

 

 

thc2thd

- преобразование

непрерывной модели

в дискрет-

 

 

ную;

 

 

 

 

 

thd2thc

- преобразование

дискретной

модели в

непрерыв-

 

 

ную.

 

 

 

 

 

Представление моделей

bodeplot -

диаграмма Воде для передаточной функции или

 

 

спектра;

ffplot

-

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

idplot

- входо-выходные последовательности;

nyqplot

-

диаграмма Найквиста по передаточной функции;

present

-

представление тета-модели на экране;

zpplot

-

вывод нулей и полюсов.

229

Извлечение информации

 

 

 

 

getmfth

-

получение

имени

m-файла,

определяющего

 

 

структуру модели;

 

 

 

 

getncap

-

получение числа точек данных и параметров;

getff

-

выбор частотной характеристики;

 

 

gett

- получение интервала квантования модели;

 

getzp

-

извлечение

нулей и полюсов из ZEPO-формата,

 

 

созданного th2zp;

 

 

 

 

th2par

-

преобразование тета-формата в параметры и ма-

 

 

трицу ковариаций.

 

 

 

 

Верификация моделей

 

 

 

 

compare

-

сравнение значений выхода, полученных моде-

 

 

лированием/прогнозом, с измеренными;

 

idsim

-

моделирование системы;

 

 

 

ре

-

вычисление ошибок

прогнозирования;

 

predict

- т-шаговый прогноз;

 

 

 

 

resid

-

вычисление

и определение характеристик

невя-

 

 

зок модели.

 

 

 

 

 

Оценивание (Assessing) неопределенности

модели

 

idsimsd

-

отображение неопределенности в реакции моде-

 

 

ли;

 

 

 

 

 

th2ff

-

частотная характеристика модели

и среднеква-

 

 

дратическое

отклонение;

 

 

 

th2zp

-

нули, полюсы, коэффициенты передачи и их сред-

 

 

неквадратические отклонения.

 

 

 

Выбор структуры модели

 

 

 

 

arxstruc

-

функции потерь для семейства ARX-моделей;

ivstruc

-

подбор выходной ошибки (output error fit) для се-

 

 

мейства со скалярным выходом;

 

 

 

selstruc

-

выбор структуры модели по различным

 

 

критериям;

 

 

 

 

 

struc

- генерация

типовых

структурных

матриц

для

 

 

arxstruc и ivstruc.

 

 

 

 

230