Научная статья на тему 'Анализ управляемости нелинейных аффинных систем управления в системе Matlab'

Анализ управляемости нелинейных аффинных систем управления в системе Matlab Текст научной статьи по специальности «Математика»

CC BY
491
69
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук

Аннотация научной статьи по математике, автор научной работы — Афонин Виктор Васильевич

Рассматриваются вопросы управляемости нелинейных по состоянию и линейных по управлению систем, которые принято называть аффинными системами управления. Анализ локальной управляемости определяется на основе вычисления детерминанта или ранга матрицы управляемости заданной нелинейной аффинной системы. Формирование матрицы управляемости осуществляется с привлечением алгебры Ли. Для решения данной задачи используется система математических вычислений MATLAB, с помощью которой, в частности, выполняется оценка времени заключения об управляемости систем с последовательным соединением нелинейных звеньев.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Анализ управляемости нелинейных аффинных систем управления в системе Matlab»

3. Зубов А. В. Теория устойчивости и теория квазипериодических систем / А. В. Зубов, Н. В. Зубов, С. А. Стрекопытов. СПб. : АООТ Мобильность плюс, 2010. 206 с.

4. Зубов А. В. Анализ систем управления и равновесных движений / А. В. Зубов, И. В. Зубов, М. В. Стрекопытова. СПб. : Мобильность плюс, 2011. 347 с.

5. Зубов А. В. Математические методы исследования устойчивости и надежности технических систем / А. В. Зубов. СПб. : ВВМ, 2011. 362 с.

6. Зубов Н. В. Безопасность функционирования технических систем / Н. В. Зубов, А. Ф. Зубова. СПб. : ВВМ, 2009. 343 с.

7. Зубов С. В. Анализ равновесных движений и расчетная устойчивость / С. В. Зубов, М. В. Стрекопытова. СПб. : СПбГУ, 2010. 446 с.

Поступила 01.11.2011.

УДК 004.658

АНАЛИЗ УПРАВЛЯЕМОСТИ НЕЛИНЕЙНЫХ АФФИННЫХ СИСТЕМ УПРАВЛЕНИЯ В СИСТЕМЕ МА^АВ

В. В. Афонин

Рассматриваются вопросы управляемости нелинейных по состоянию и линейных по управлению систем, которые принято называть аффинными системами управления. Анализ локальной управляемости определяется на основе вычисления детерминанта или ранга матрицы управляемости заданной нелинейной аффинной системы. Формирование матрицы управляемости осуществляется с привлечением алгебры Ли. Для решения данной задачи используется система математических вычислений МА^АВ, с помощью которой, в частности, выполняется оценка времени заключения об управляемости систем с последовательным соединением нелинейных звеньев.

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

Класс нелинейных динамических систем линейных по управлению называется аффинными системами [1—2]. Математическая модель аффинной системы со скалярным управлением представляется в виде

^ = А (X (г)) + В (X (г)) и (г),

где

А (х (*)) = |>1 (х (ь)),

Й2 (X (*)), ..., ап (X (*))]Т, В (X (I)) = |> (X (I)),

ъ2 (х(г)), ..., ьп (х(г))]т,

х ) = [х (I , X )2 , ..., X )п ]Т —

вектор состояния.

В кратком виде можно записать аффинную систему в следующем виде:

— = А (х) + В (х) и.

Одной из важнейших задач управления является задача стабилизации. Для линейных систем она решается полностью, если система полностью управляема (например, управляема по Калману). Для нелинейных систем решение задачи стабилизации значительно осложняется. Одним из методов решения задачи стабилизации для нелинейных динамических систем с аналитической правой частью может быть применен метод преобразования к линейным эквивалентам [1 —

© Афонин В. В., 2012

4]. При этом переход к эквивалентной линейной системе осуществляется с привлечением алгебры Ли и дифференциальной геометрии. В частности, производные и скобки Ли. Приведем некоторые определения [1].

Определение 1. Производной Ли скалярной функции a = a (x) по векторной функции f = f(x) называется скалярная функция (обозначается Lf a), которая определяется соотношением

Lf a = da f = Vaf = £ ^ f.

dx i=i ^x-

Старшие производные Ли рекуррентно определяются следующим образом:

Lf a = Lf (Lf-1a) = V(Lkf a )f, i = 1,2, ..., n.

Нулевая производная Ли функции a = a(x) по f = f(x) есть сама функция a = a(x).

Определение 2. Векторная функция, определяемая соотношением

adjg = [f, g] = Vgf - Vfg = Lf g - Lgf,

называется скобками Ли функций f(x) и g(x). Скобки Ли высокого порядка рекур-рентно определяются следующим образом:

adfg = adf (adk-1g) = [f, adk-1g],

k = 1, 2, ... . Скобки Ли нулевого порядка функций f(x) и g(x) равны g(x) : ad®g = g.

Скобки Ли могут использоваться, в частности, для определения алгебраического критерия управляемости нелинейных динамических систем. С их помощью формируется матрица управляемости [1 — 2] вида

M(x) = [U0(x),U1(x), ..., Un-1(x)].

Столбцы матрицы М(х) (квадратной при скалярном управлении) могут быть вычислены по следующему рекуррентному соотношению:

Uk(x) = -

U0(x) = B(x), idUk-i(x) A(x) -dAx) uk-l(x)

dx

dx

намических систем и их программирование в системе MATLAB.

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

На основе материала из [1—4] по управляемости нелинейных аффинных динамических систем были разработаны программы в системе MATLAB по вычислению детерминанта и ранга матрицы управляемости нелинейных аффинных динамических систем. В системе MATLAB возможно использовать символьную математику (пакет — тулбокс Symbolic Math) для решения различных задач алгебры и анализа. Решались две задачи. Во-первых, программное формирование матрицы управляемости с последующим определением ее детерминанта и ранга. А во-вторых, с помощью встроенных средств MATLAB делалась временная оценка вычислений. Дело в том, что с увеличением размерности задачи (порядка дифференциальных уравнений) соответственно увеличивается и размерность матрицы управляемости. При этом символьные вычисления детерминанта и ранга матрицы становятся затратными. Проверка вычислительных затрат осуществлялась при увеличении размерности систем дифференциальных уравнений для последовательного соединения нелинейных звеньев, модель которых задается обыкновенными дифференциальными уравнениями. При этом принималось, что на систему действует скалярное управляющее воздействие.

Если, например, в качестве нелинейного звена рассматривать систему дифференциальных уравнений второго порядка со скалярным управлением, то структурно последовательное соединение звеньев второго порядка можно представить так, как показано на рис. 1 (на примере трех звеньев).

Х6

Х2 x4

1 —► 2 —► 3

k = 1, п - 1.

Причем, знак минус может быть опущен. Он не влияет на определение ранга матрицы.

В данной работе рассматриваются алгоритмические аспекты определения локальной управляемости нелинейных аффинных ди-

Рис. 1. Схема последовательного соединения звеньев второго порядка

Входными данными программы являются векторы Ах = А(Х) и Вх = В(Х), которые входят в правые части нелинейных аффинных систем управления. Конкретные примеры модели нелинейных систем управления были взяты из литературных источников

[1-4].

Выходом программы является заключение об управляемости системы с временной оценкой вычисления детерминанта и ранга

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

Рассмотрим саму программу для конкретных моделей нелинейных объектов управления.

Пример 1. Определить по алгебраическому критерию управляемость следующей динамической системы [2, с. 331]:

dxt dx- 2 , in

—L = -x- + x- + u, —2 = -x- - ox-, b > 0. dt dt

Программный код решения примера в MATLAB приведен в листинге 1.

%%% Листинг 1 clear, clc

%%% Символьные переменные syms x1 x2 b %% b > 0

%%% Матрица состояния (вектор-столбец) Ax = [-x1 + x2;

-x1A2 - b*x2 ]

%%% Матрица входа (вектор-столбец) Bx = [1; 0]

n = length(Ax) %% размерность системы

%%% Формирование подстановочного вектора

переменных состояния,

%%% неизменяемая часть программы

v = [ ];

for k = 1 : n

v = [v, sym(sprintf('x%d', k))]; end

%% Неизменяемая часть программы U = Bx;

M = sym(zeros(n)); %% предварительное выделение памяти

%%% Формирование матрицы управляемости M на основе

%%% функции jacobian, с помощью которой рекуррентно

%%% формируется матрица управляемости с помощью скобок Ли. %%% Неизменяемая часть программы for k = 1 : n M(:, k) = U;

U = ( jacobian(U, v)*Ax - jacobian(Ax, v)*U ); end

% disp('========== Матрица управляемости

M ===========')

%% disp(M) %%% сняв комментарий %, будет вывод матрицы M

disp('==================================')

%% tic - отметка времени tic

udet = det(M); %%% объект класса sym

if ((udet)) ~= sym(0) toc

fprintf('\n Проверка по детерминанту: система полностью управляема^') else toc

fprintf('\n Проверка по детерминанту: система не полностью управляема.\п Синтез регулятора не возможен.^') end

disp('===================================')

tic

urank = rank(M)

if double(urank) == n toc

fprintf('\n Проверка по рангу: система полностью управляема^')

else

toc

fprintf('\n Проверка по рангу: система не полностью управляема.^ Синтез регулятора не возможен.^')

end

disp('=======================================')

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

dx-dt

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

dx'3 dt '

dx 5 dt

dx-dt

-x- + X2 + U,

-X3 + X4 + X2,

dx2 2 —2 = - x2 dt 1

bx 2,

= -X5 + Xg + X4,

-Xj + Xg + Xg,

dx, dt

dx g dt

dx § dt

4 = - X3 - bx4,

- x5

- x7

bx6, bx8'

где b > 0.

Здесь приведем только результат выполнения программы из листинга 1, в котором были заменены матрицы Ах и Вх:

Elapsed time is 0.178359 seconds.

Проверка по детерминанту: система полностью управляема

Elapsed time is 0.034784 seconds.

Проверка по рангу: система полностью управляема

Elapsed time is 0.003259 seconds.

Проверка по детерминанту: система полностью управляема

Elapsed time is 0.005361 seconds.

Проверка по рангу: система полностью управляема

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

Рассмотрим следующий пример, который базируется на первом примере, когда осуществляется последовательное соединение звеньев.

Пример 2. Определить по алгебраическому критерию управляемость следующей динамической системы 8 порядка:

Полученные результаты показывают, что при увеличении размерности системы управления проверка по рангу матрицы управляемости является более предпочтительной по сравнению с определением по детерминанту. Приведенная программа может быть использована не только для последовательного соединения звеньев. Условием ее применения является скалярность управления. При этом в рассмотренных примерах матрица Вх не зависела от переменных состояния системы. В общем случае Вх может от них зависеть, и программа остается работоспособной. Если Вх = В(х), то время оценки управляемости нелинейной системы увеличивается. При этом расчет детерминанта матрицы управляемости может быть чрезвычайно затратным, а определение управляемости по рангу имеет приемлемые временные рамки.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Ким Д. П. Теория автоматического управления. Т. 2 : Многомерные, нелинейные, оптимальные и адаптивные системы / Д. П. Ким. М. : Физматлит, 2003. 464 с.

2. Краснощеченко В. И. Нелинейные системы : геометрические методы анализа и синтеза / В. И. Краснощеченко, А. П. Крищенко. М. : Изд-во МГТУ им. Н. Э. Баумана, 2005. 520 с.

3. Методы классической и современной теории автоматического управления : учеб. : в 3 т.

Т. 3 : Методы современной теории автоматического управления / под ред. Н. Д. Егупова. М. : Изд-во МГТУ им. Н. Э. Баумана, 2000. 748 с.

4. Мирошник И. В. Теория автоматического управления. Нелинейные и оптимальные системы / И. В. Мирошник. СПб. : Питер, 2006. 272 с.

Поступила 27.02.2012.

УДК 004.632.5

ПОСТРОЕНИЕ ИНДЕКСНЫХ СТРУКТУР В ТЕМПОРАЛЬНЫХ БАЗАХ ДАННЫХ

М. В. Мелешкин

В статье рассматриваются проблемы, возникающие при построении эффективных индексов по нескольким атрибутам в темпоральных базах данных систем промышленной архивации данных и попытки их решения, используя методы, применяемые в пространственных базах данных.

В настоящее время вопросы повышения энергоэффективности всех отраслей экономики выходят на первый план, особенно это характерно для организаций, осуществляющих распределение электроэнергии между поставщиками и потребителями. Задачу эффективной передачи электроэнергии все возрастающему количеству потребителей невозможно решить без применения различных автоматизированных систем контроля, управления и сбора данных (так называемые SCADA-системы).

К основным задачам, решаемым SCADA-системами, относятся следующие:

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

— сбор данных со специальных датчиков (например, датчиков магнитного поля);

— ведение журналов показателей качества электроэнергии;

— контроль за соблюдением лимита потребления;

— многотарифный учет;

— ведение единого времени;

— мониторинг и квитирование специальных событий (таких как обрыв линии передачи электроэнергии или короткое замыкание).

Рассмотрим задачу по мониторингу и квитированию специальных событий — обнаружению обрывов линии передачи электроэнергии. Для простоты предположим, что значения силы тока и напряжения получаем

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

— считываются оперативные данные о текущих значениях силы тока (I) и напряжения (U) и заносятся в темпоральную базу данных [5, с. 3] с заданием метки времени;

— запрос к темпоральной базе данных (ТБД) и вычисление отношения значения напряжения к значению силы тока. Если значение этого отношения меньше заданного для этого фидера значения — тогда специальное событие (обрыв) не детектируется. В противном случае, когда напряжение соответствует норме, а значение силы тока аномально низкое, детектируется обрыв;

— если обрыв зафиксирован, то система формирует управляющее воздействие (разъединяются контакты пускателя или вакуумного выключателя).

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

— хранят мгновенный снимок (snapshot) состояния модели предметной области;

— развиваются посредством транзакци-

© Мелешкин М. В., 2012

i Надоели баннеры? Вы всегда можете отключить рекламу.