УДК 681.326
ЛОГИКО-ДИНАМИЧЕСКИЙ подход К ДИАГНОСТИРОВАНИИ БИЛИНЕЙНЫХ СИСТЕМ1
А. Н. Жирабок, А. А. Летенко
Для решения задачи диагностирования динамических систем, описываемых билинейными моделями, предложено применять логико-динамический подход, предполагающий следующую последовательность действий: преобразование билинейной составляющей к соответствующему виду; удаление преобразованной билинейной составляющей; построение наблюдателя для полученной линейной модели с некоторым дополнительным ограничением; преобразование полученного линейного наблюдателя в билинейного.
ВВЕДЕНИЕ
Одним из действенных средств повышения эффективности эксплуатации сложных технических систем является применение методов диагностирования, позволяющих проверять правильность функционирования системы в процессе выполнения ею своих функций на рабочих управляющих сигналах. Разработано значительное число различных методов решения диагностических задач, объединенных концепцией аналитической избыточности [1], согласно которой диагностирование осуществляется на основе проверки аналитических зависимостей, которые существуют между измеряемыми на определенном интервале времени управляющими и выходными сигналами диагностируемой системы.
В настоящей работе решается задача диагностирования систем, описываемых билинейной моделью вида
X ( Р) = "0х( Р) + #и( Р) + £ и.(Р)"1х( Р) +
+ (/( Р) + Ер(1)! (1)
у( Р) = $х( Р).
Здесь х е X с Яп, у е 5 с Я1, и е 5 с Ят — векторы состояния, измеряемого выхода и управления, соответственно; иЕ — /-я компонента вектора и; "0, #,
"г, / = 1, 2, ..., т, Н, ( и Е — известные постоянные матрицы соответствующих размеров. Слагаемое (/( Р) описывает влияние дефектов на диагностируемую систему; предполагается, что если дефекты отсутствуют, то /( Р) = 0, при появлении дефекта /( Р)
1 Работа поддержана грантом РФФИ.
становится неизвестной функцией времени. Слагаемое Ер( Р) описывает вклад дестабилизирующих факторов, под которыми будем понимать погрешности моделирования и неконтролируемые внешние воздействия на диагностируемую систему. Векторная функция р( ) считается неизвестной, матрица Е указывает на то, каким образом дестабилизирующие факторы действуют на систему.
Билинейные модели занимают промежуточное положение между линейными и нелинейными. Достоинство их состоит в том, что они используют матричное описание и, следовательно, задачи анализа и синтеза таких систем, в частности, задачи диагностирования, могут быть решены на основе хорошо разработанных методов линейной алгебры. В то же время, билинейными моделями описывается множество разнообразных технических систем и процессов, например, системы управления ядерными реакторами, гидравлические управляющие системы, системы сжигания газа в промышленных печах, процессы нагрева и др.
Требуется построить диагностический наблюдатель, чувствительный к дефектам и нечувствительный к дестабилизирующим факторам. Эта задача рассматривалась в работах [2, 3], где был развит подход на основе так называемых наблюдателей с неизвестным входом, первоначально разработанный для линейных систем [4]. Его особенность состоит в том, что при построении наблюдателя за-0
дается матрица " , описывающая его динамику, остальные матрицы зависят от нее и должны заново рассчитываться при изменении этой матрицы, когда, например, требуется изменить показатели устойчивости системы.
В настоящей работе предлагается другой подход, не требующий таких перерасчетов. Он основан на так называемом логико-динамическом под-
ходе, предложенном в работах [5, 6]. Объясним его на примере системы, представленной моделью вида
T ( P) = " °t( P) + G,Q( P)sign(Ax( P)) + Gq( P), (2)
y( P) = $t( P)
где G — матрица, А — матрица-строка. Суть этого подхода состоит в том, что исходная нелинейная система преобразуется в некоторую логико-динамическую систему, которая представляет собой совокупность линейных подсистем и логических условий. На рисунке представлена структура логико-динамической системы для модели (2), где подсистема 6 имеет линейное описание с матрицами
"°, $ и G — G, подсистема 62 — с матрицами "°,
$ и G, подсистема 63 — с матрицами "°, $ и G + G'.
Важно, что матрицы "° и $ у этих подсистем одинаковы, поскольку именно они используются при синтезе наблюдателя. После такого преобразования решается задача диагностирования для линейной системы с матрицами "° и $ и дополнительным (по отношению к традиционной задаче диагностирования линейных систем) ограничением линейного характера и строится линейный логико-динамический наблюдатель, который затем преобразуется в нелинейный. Более детально этот подход будет описан далее.
В работе [5] показано, что логико-динамический подход может быть применен к другим типам нелинейности, когда в модели (2) вместо функции sign используются функции sin, cos, In и др. Для этого соответствующая нелинейность вносится в наблюдатель вместо функции sign. В этом случае дополнительное ограничение при построении наблюдателя отражает уже не совокупность логических условий объекта диагностирования и наблюдателя, а соответствие их нелинейных частей. Кроме того, таких нелинейностей может быть несколько, и тогда матрица А будет содержать несколько строк.
В рассматриваемом билинейном случае нелинейная составляющая отсутствует, матрица А со-
Логико-динамическая структура нелинейной истемы (2)
ставляется из строк всех матриц матрица С" выделяет нужную компоненту вектора управления и. Фактически в процедуре решении задачи диагностирования билинейных систем последняя матрица не участвует, поскольку необходимые компоненты вектора и определяются индексами используемых матриц "Е.
1. ОСНОВНЫЕ СООТНОШЕНИЯ
Предлагаемый метод решения задачи диагностирования для системы, описываемой моделью (1), включает в себя следующие шаги.
1. Преобразование билинейной составляющей к виду, допускающему возможность применения логико-динамического подхода.
2. Удаление преобразованной билинейной составляющей.
3. Построение наблюдателя для полученной линейной модели с некоторым дополнительным ограничением, имеющим также линейный характер.
4. Преобразование полученного линейного наблюдателя в билинейный.
На первом шаге динамическая часть модели (1) преобразуется к виду
т т
х ( Р) = "0х(Р) + #и( Р) + £ иЕ( Р) £ С-/"//х( Р) +
+ (/( Р) + Ер( Р),
где "г:/ — у'-я строка матрицы С1 = [1 0 ... 0]0,
#2 = [0 1 ... О]0, = [0 0 ... 1]0.
После удаления билинейной составляющей получается линейная модель:
X ( Р) = "0х( Р) + #и( Р) + (/( Р) + Ер( Р), у( Р) = $х( Р).
Третий шаг в соответствии с логико-динамическим подходом заключается в синтезе линейного наблюдателя. Из линейной теории диагностирования известно [4—6], что в этой процедуре главную роль играет матрица Ф, которая в случае отсутствия дефектов связывает состояния исходной линейной системы и наблюдателя:
х*( Р) = Фх( Р).
Здесь х* — вектор состояния наблюдателя, описываемого уравнениями
х*( Р) = "*0 х*( Р) + С*и( Р) + &у( Р), (3)
у*( Р) = $*х*( Р),
у* — выходной сигнал наблюдателя, "*0, С*, & и $* — подлежащие определению матрицы. Наблюдатель генерирует невязку г ( Р) = Су( Р) — у*( Р), где С — некоторая матрица-строка, также подлежа-
щая определению. При отсутствии дефектов невязка должна быть равна нулю, т. е. быть нечувствительной к дестабилизирующим факторам. При появлении дефекта равенство г (Р) = 0 нарушается.
Матрицы диагностируемой системы и наблюдателя связаны известными соотношениями [4—6]:
С$ = $*Ф, Ф"0 = "*0 Ф + &$, ФС = С*. (4)
Условия чувствительности невязки к дефектам и нечувствительности к дестабилизирующим факторам имеют вид
Ф( * 0, ФЕ = 0. (5)
Предполагается, что структура модели билинейного наблюдателя аналогична модели (1), поэтому в соответствии с логико-динамическим подходом [5] введем семейство матриц-строк {"*у} такое, что выполняется условие
"//х(Р) = "ух*(Р) / = 1, 2, ..., т, ] = 1, 2, ..., и.
Так как х*(Р) = Фх(Р), то "у = "у Ф, т. е. каждая
строка матрицы "Е линейно выражаются через строки матрицы Ф, откуда следует, что равенство
"у = "У Ф эквивалентно равенству
гапк(Ф) = rank
, і = 1, 2, і,
(6)
являющимся дополнительным ограничением на матрицу Ф, о чем было сказано во Введении.
2. УСЛОВИЯ СУЩЕСТВОВАНИЯ НАБЛЮДАТЕЛЯ
Для возможности построения наблюдателя, нечувствительного к дестабилизирующим факторам, должны выполняться определенные условия; получим их, введя несколько необходимых для дальнейшего элементов.
Известно [5—7], что линейный наблюдатель может быть реализован в каноническом виде с матрицами
"0 =
$* = [1 0 0 Л 0] (7)
0 10 Л ... 0 0 0 1 Л ... 0 ... Л ...
0 0 0 Л ... 0_
без увеличения его размерности. Пусть Е* — матрица максимального ранга, удовлетворяющая равенству Е*Е = 0. Из ее определения следует, что условие ФЕ = 0 можно записать в виде Ф = *Е* для некоторой матрицы *.
Анализ начнем с первого из соотношений (4), которое с учетом вида матрицы $* из канонической формы (7) и условия Ф = *Е* можно записать в виде С$ = *1Е* или С$ — *1Е* = 0, где *1 — пер-
вая строка матрицы *. Перепишем последнее равенство в блочной форме:
$
= 0.
(8)
Отсюда следует, что между строками матриц $ и Е* имеется линейная зависимость, откуда нетрудно заключить, что это равенство эквивалентно ранговому неравенству
rank
$
< rank($) + rank(!„).
(9)
Если оно выполняется (это можно проверить с помощью математических пакетов, например, МАТЬАВ), то решая однородное алгебраическое
уравнение (8), можно определить матрицы С0 и *°, строки которых представляют собой все линейно независимые решения этого уравнения; число та-
ких решений равно п — rank
$
. Сами матрицы С
и *1 будут являться линейной комбинацией строк
этих матриц, т. е. С = ЯС0 и *1 = Я*° для некоторой матрицы Я. Невыполнение условия (9) означает, что наблюдатель, нечувствительный к дестабилизирующим факторам, построить невозможно.
Перейдем к анализу второго из соотношений (4). Умножая обе его части на матрицу Е справа и учитывая условия Ф = *Е* и ФЕ = 0, получим в
итоге соотношение *Е*"0Е = &$Е или в блочной форме
[*1 — &]
= 0.
(10)
Е*" 0Е $Е
Как и ранее, можно показать, что это равенство
эквивалентно ранговому неравенству
rank
0! $!
< rank(!*"0!) + rank($!). (11)
Пусть выполняется условие (11), т. е. для некоторых матриц * и & справедливо соотношение (10); представим тогда его в виде (*Е*"0 — &$) Е = 0, откуда согласно определению матрицы Е* следует, что для некоторой матрицы К выполняется равенство
(12)
*!"0 — &$ = .
Поскольку матрица К может быть выбрана произвольным образом, примем ее в виде К = "*0 * для
некоторой матрицы "*0 , не обязательно совпадающей с приведенной в выражении (7). Тогда если положить *Е* = Ф, то получим КЕ* = "*0 *Е* = "*0 Ф,
и равенство (12) совпадет со вторым из соотношений (4). Последнее означает следующее. Из уравнения (10) могут быть определены матрицы *0 и
&0, строки которых представляют собой все линейно независимые решения этого уравнения. Эти матрицы можно использовать в качестве основы для построения наблюдателя; при этом, однако, возникают задачи определения минимально возможной размерности наблюдателя и построения матриц * и & при реализации наблюдателя минимальной размерности. Мы выберем для построения наблюдателя другой путь, воспользовавшись канонической формой матрицы "*0, что даст определенные преимущества при решении этой задачи.
Невыполнение условия (11) означает, что наблюдатель, нечувствительный к дестабилизирующим факторам, построить невозможно.
Получим еще одно условие возможности построения наблюдателя, непосредственно не связанное с дестабилизирующими факторами. В качестве решения уравнений (8) и (10) (при условии их разрешимости) выше были определены матрицы *° и *0. Поскольку эти уравнения независимы друг от друга, их решения также будут линейно независимыми. Напомним, что линейная комбинация строк матрицы *10 должна быть первой строкой матрицы * в соответствии с приведенным выше соотношением *1 = Я*”0. Поскольку строки матрицы * формируются как линейные комбинации строк матрицы *0, то для некоторой матрицы
О должно выполняться равенство *1 = Я*° = О*0. Как и выше, можно показать, что это равенство эквивалентно ранговому неравенству
3. СИНТЕЗ НАБЛЮДАТЕЛЯ
rank
< rank( *°) + rank(*0),
(13)
которое можно назвать условием согласования уравнений (8) и (10).
Последнее условие возможности построения наблюдателя связано с его нелинейным характером, оно может быть получено следующим образом. Как
было показано выше, для матриц "у, "*у и Ф выполняется соотношение "у = "у Ф, ] = 1, 2, ..., и, или = "* Ф; поскольку Ф = *Е*, то "Е = "**Е*, / = 1, 2, ..., т. Полученное равенство можно рассматривать как условие возможности построения билинейного наблюдателя, нечувствительного к дестабилизирующим факторам; в ранговой форме оно выглядит следующим образом:
rank(!„) = rank
і = 1, 2,
т.
(14)
Перед началом процедуры синтеза наблюдателя, который должен быть нечувствителен к дестабилизирующим факторам, необходимо проверить условия (9), (11), (13) и (14). Если хотя бы одно из них не выполняется, то такой наблюдатель построить невозможно; в этом случае необходимо обратиться к робастным методам, обеспечивающим минимальную чувствительность к этим факторам; они изложены, в частности, в работе [8].
Пусть указанные выше условия выполняются; известно [5, 6], что используя каноническую форму (7) матриц "*0 и $*, первое и второе из соотношений (4) можно привести к виду
Ф1 = С$, Ф."0 = Ф. + 1 + &$,
/ = 1, 2, ..., к — 1, &к$ = Фк"и, (15)
где Ф. и & — /-е строки матриц Ф и &, соответственно, к — размерность наблюдателя. Как было отмечено ранее, в случае, когда уравнение (8) имеет несколько линейно независимых решений, матрицу-строку С первого из равенств (15) можно определить в виде С = ЯС0. С учетом последнего выражения соотношения (15) можно свернуть в одно уравнение:
ЯС 0$("0)к = &1$("0)к — 1 + &2$("0)к — 2 + ...
... + &к$. (16)
Для определения минимальной размерности наблюдателя и описывающих его матриц, предлагается следующий алгоритм, являющийся модификацией алгоритма, предложенного в работах [5, 6].
Жяг 7. Положим к = 1.
Жяг 2 Если уравнение (16) разрешимо для некоторых матриц-строк Я, &1, &2, ..., &к (это можно проверить с помощью пакета МАТЬАВ), переходим к шагу 4.
Жяг .?. Положим к = к + 1 и перейдем к шагу 2.
[яг 4 Рассчитаем строки матрицы Ф: Ф1 = ЯС0$, Ф.. + 1 = Ф." — &$, / = 1, 2, ..., к — 1. Если матрица Ф не удовлетворяет условиям (5) и (6), находим другое решение уравнения (16), в противном случае переходим к шагу 3.
Жяг 5. Положим С* = Ф в и найдем матрицы "у из линейного алгебраического уравнения Ф0".'0 =
= "у0, # = Ф#, і = 1, 2,
т, j = 1, 2, ..., п.
На третьем шаге решения задачи полученный линейный наблюдатель преобразуется в билинейный. Для этого в модель (3) добавляется нелинейная составляющая
т и
£ М,.(Р) X С* "*Ут*(Р);
І = 1
і = 1
в результате получается модель диагностического наблюдателя для билинейной системы:
Т *(Р) = "*0 Т*(Р) + С*м(Р) + &и(Р) +
ти
+ X «/(Р) X С* "*/,'т*(Р), и*(Р) = $*Т*(Р). (17)
/ = 1 ) = 1
4. УСТОЙЧИВОСТЬ НАБЛЮДАТЕЛЯ
Наблюдатель (17) с матрицей "*0 из соотношения (7) будет неустойчивым. Чтобы обеспечить его устойчивость, необходимо сделать устойчивой эту матрицу, для чего в наблюдатель вводится обратная связь и соответствующим образом корректируется матрица &. А именно, если р1, р2, ..., рк — коэффициенты обратной связи, обеспечивающие
необходимую устойчивость матрицы "*0, то /-я строка & матрицы & заменяется строкой & — р.С, / = 1, 2, ..., к. Очень важно, что матрица Ф не изменяется в этом случае, следовательно, основные свойства наблюдателя (нечувствительность к дестабилизирующим факторам и чувствительность к дефектам) также не изменяются. Действительно, рассмотрим /-ю (/ < к) строку второго из матричных уравнений (4) с матрицей "*0 в форме
т* ( P) = "* Фт ( P)
У (P). $т( P)
р1 1 0 Л ... 0 р2 0 1 Л ... 0
рк 0 0 Л ... о
и строки матрицы & заменим на & — Р.С:
Р/Фі + Ф/ + і + (& — Р.С )$ = Ф/"0.
Так как С$ = Ф^ то отсюда следует второе из равенств (15); аналогичный результат будет и при / = к. Следовательно, матрица Ф, найденная по алгоритму, остается неизменной при описанных изменениях в матрице "0. Таким образом, проблемы нечувствительности наблюдателя к дестабилизирующим факторам и устойчивости матрицы "0 могут быть решены независимо, матрицы # и " при изменении показателей устойчивости не меняются. Эти обстоятельства и составляют преимущества предлагаемого метода перед известными [2, 3], о чем было сказано во Введении.
5. МОДИФИКАЦИИ МЕТОДА
1. Дополнительное ограничение (6) на матрицу Ф может быть ослаблено расширением вектора х*(Р) за счет вектора у(Р) путем замены уравнения
"т(Р) = ", х*(?) на "т(Р) = "
В результате условие (6) принимает вид
/ = 1, 2, ..., I,
r Ф
rank Ф = rank $
$
что позволяет получить наблюдатель меньшей размерности. Кроме того, ослабляется условие (14), которое теперь принимает вид
rank
!*
!* = rank $
$
і = 1, 2, ..., т.
Оно, однако, становится только необходимым, поскольку из того, что строки матрицы "Е выражаются через строки матриц и $, не следует, что они будут выражаться и через строки матриц Ф = и $.
2. Известно [1, 5], что для дискретной и непрерывной линейных систем все основные соотношения, связанные с построением наблюдателей, одинаковы. Поскольку процедура построения билинейного наблюдателя основана на линейной процедуре, то все изложенное ранее будет справедливым и для дискретной билинейной модели вида
т( Р + 1) = "0т( Р) + #м( Р) + £ иг.(Р)"!л;(7) +
+ (/( Р) + !р( Р), и( р) = $т( Р).
ЗЖотя изложенное выше относилось к задаче обнаружения дефектов, нетрудно распространить это на задачу поиска дефектов, когда система описывается моделью
Т ( Р) = "0т( Р) + #м( Р) + £ м.( Р)"гх^Р) +
/ = 1
+ £ Р) + !р( Р), и( Р) = $Т( Р),
і = 1
где слагаемое ( р) описывает влияние у-го дефек-
та на систему. Диагностирование в этом случае осуществляется банком наблюдателей, каждый из которых должен быть чувствителен к одной группе дефектов и нечувствителен к другой, а также к дестабилизирующим факторам. В отличие от более простой задачи обнаружения дефектов здесь возникает ряд новых задач, в частности, установление отношения частичного порядка на множестве дефектов; выбор групп дефектов, к которым отдельные наблюдатели должны быть чувствительны и, напротив, нечувствительны; вопросы построения специальной матрицы, устанавливающей систему соотношений между дефектами и невязками, на
основе которой принимается решение о том, какой именно дефект возник в диагностируемой системе. Поскольку эти вопросы детально рассмотрены в работе [9], мы не будем на них останавливаться. Отметим только, что если у'-й наблюдатель должен быть чувствителен к дефектам с номерами у'р у2, ...,7М, то вместо матрицы ( в описанном выше подходе необходимо использовать блочную матрицу (. = [(,• I(,• I ... |(,- ], вместо матрицы Е — блоч-
} ¿1 ->2 ¿д
ную матрицу [Е | ( ], где (•. — столбец матрицы ( с
номером( — матрица, содержащая все столбцы матрицы ( с номерами, отличными от д, у2, ...,уд.
4. Если дефекты проявляются через входящие в описание диагностируемой системы параметры, описанный в работе подход полностью сохраняется; покажем это в случае одного параметра. Пусть динамика диагностируемой системы описывается моделью
слагаемое вида [Вд
T (P) = " (у)т(Р) + #(у)и(Р) +
+ £ Q.(í)"x(í) + !p(i),
E = 1
(18)
где у — параметр. Предполагается, что при появлении дефекта параметр отклоняется от своего номинального значения у0 и становится неизвестной функцией времени. Для приведения этой задачи к рассмотренному выше случаю разложим матричные функции " 0(у) и С (у) в ряд Тейлора в окрестности номинального значения параметра у0, ограничившись только его линейной частью:
"°(у) = "°(у°) + (у - Yo) = "° + - Yo),
#(у) = #(у°) + @@1# (у - у°) = # + Г(у - у°)
и подставим полученные выражения в уравнение (18) вместо матриц " °(у) и # (у):
х (P) = " t(P) + #и(Р) + £ «¿(í)"et(í) +
E = 1
+ №]
(у - У0) + !p(P)-
(19)
Сравнивая полученное уравнение с моделью (1), нетрудно заключить, что роль матрицы ( в настоящем случае играет блочная матрица ["|Г ], роль
функции /(P) — векторная функция
(У - Уо)-
где матрицы " и * представляют собой частные
производные от матричных функций "°(у) и # (у) по /-й компоненте у. вектора у, соответственно, у. ° — номинальное значение /-го параметра.
ЗАКЛЮЧЕНИЕ
Основное преимущество предложенного в работе логико-динамического подхода к диагностированию билинейных систем состоит в том, что проблемы нечувствительности наблюдателя к дестабилизирующим факторам (вместе с чувствительностью к дефектам) и устойчивости матрицы могут быть решены независимо друг от друга. При этом остальные матрицы, описывающие наблюдатель, не меняются при изменении его показателей устойчивости. Полученные условия возможности построения наблюдателя, нечувствительного к дестабилизирующим факторам, могут быть применены к линейным системам, а также системам с нелинейностями вида sign, sin, cos, In и другим, для которых может быть использован логико-динамический подход.
ЛИТЕРАТУРА
1. Ми—оновский X. А. Функциональное диагностирование динамических систем. — М.; СПб.: Изд-во МГУ-ГРИФ, 1998. — 256 с.
2. /А/е/йО Д. *. Fault diagnosis in bilinear systems — A survey // Proc. European Control Conference ECC’95. — Rome, 1995. — P. 360—366.
3. /А/е/йО Л. *. Qualitative approaches for fault diagnosis based on bilinear system // Proc. 13-th World Congress IFAC. — San Francisco, — 1996. — Vol. N. — P.151 — 156.
4. "гаиА; P. ). Fault diagnosis in dynamic system using analytical and knowledge-based redundancy — A survey and some results // Automatica. — 1990. — Vol. 26. — P. 459—474.
5. .Жи—ййэк А. l, Усоль^ев С. А. Линейные методы при диагностировании нелинейных систем // Автоматика и телемеханика. — 2000. — № 7. — С. 149—159.
6. 6А/Уй6о£ А., Ksofeev /. Fault diagnosis in nonlinear dynamic systems via linear methods // CD ROM Proc. 15 IFAC World Congress. — Barcelona, Spain, 2002.
7. Ми—оновский X. А. Функциональная диагностирование линейных динамических систем // Автоматика и телемеханика. — 1979. — № 8. — С. 120—128.
8. (ои 4. С., 3/Му А. /., G. С. Optimally robust redundancy relations for failure detection in uncertain systems // Automatica. — 1996. — Vol. 22. — P. 333—344.
9. Жи—а^ок А. l. Поиск дефектов в нелинейных системах методом функционального диагностирования на основе обобщенных алгебраических инвариантов // Автоматика и телемеханика. — 1994. — № 7. — С. 160—169.
При наличии нескольких — р — параметров каждому из них в выражении (19) будет соответствовать
е-даш7: гйг>и>о£@дааг7.ги
□