САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
КАФЕДРА КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И СИСТЕМ
Помошников Георгий Иванович
Выпускная квалификационная работа бакалавра
Детектирование неисправностей в системах
управления движением морских подвижных объектов
c робастной устойчивостью.
Направление 010400
Прикладная математика и информатика
Научный руководитель,
кандидат физ.-мат. наук,
доцент
Коровкин М. В.
Санкт-Петербург
2016
Содержание
Введение ................................................................................................................ 3
Постановка задачи ................................................................................................. 4
Обзор литературы ................................................................................................. 5
Глава 1. Моделирование систем .......................................................................... 6
1.1.Математическое описание объектов ....................................................... 6
1.2. Взаимно простое разложение передаточной функции ......................... 7
1.3. Математическое описание моделей с возмущениями .......................... 9
1.4. Математическое описание моделей c неопределенностями ............. 10
1.5. Математическое описание неисправностей ......................................... 11
Глава 2. Основные идеи детектирования неисправностей .............................. 12
2.1. Фильтр детектирования неисправностей(Fault Detection Filter) ......... 12
2.2. Диагностический наблюдатель (Diagnostic Observer) .......................... 13
2.2.1 . Алгоритмы решения уравнений Люнбергера……………………14
2.3. Сравнение FDF и DO .............................................................................. 18
2.4. Генерация остаточного сигнала без возмущений ................................ 19
2.5. Порог для остаточного сигнала .............................................................. 20
Глава 3. Детектирование неисправностей в приборах морских
подвижных объектов ..................................................................................... 22
3.1. Модель системы ............................................................................................ 22
3.2. Построение FDF для руля .............................................................................. 28
3.3. Построение DO для руля ............................................................................... 32
3.4 Построение FDF для МПО .............................................................................. 34
Выводы ................................................................................................................. 37
Заключение .......................................................................................................... 37
Список литературы .............................................................................................. 38
2
Введение
Модели детектирования неисправностей являются важным полем в
научно-исследовательских и инженерных областях. В последние годы, были
зарегистрированы новые методы диагностики и успешного приложения.
Данная область активно развивается в Великобритании, Таиланде и других
странах.
Растет спрос на автоматизацию технологических процессов. На
сегодняшний день, одним из наиболее важных вопросов, связанных с
проектирование автоматических систем является надежность системы.
A традиционным способом для повышения надежности системы является
обеспечение качества, надежности и устойчивости отдельных компонентов
системы, таких как датчики, исполнительные механизмы , контроллеры и
компьютеры.
Массовое
использование
моделей
детектирования
неисправностей началось в 1970-x годах. На сегодняшний день модели
диагностики неисправностей систем интегрированы в системы управления
транспортных средств, роботов, транспортных систем, энергетических систем,
производственных процессов, систем управления технологическим процессом.
Модели детектирования неисправностей в таких областях, как
судостроение, могут значительно удешевить стоимость эксплуатации конечных
продуктов. Это связано с тем, что модели детектирования неисправностей
уменьшают страховые риски, что сильно отражается в стоимости эксплуатации
морских подвижных объектов.
3
Постановка задачи
Дана система управления движением морского подвижного объекта
(МПО) (рис. 1),
- курс на который должен выйти МПО. В частях МПО
моделируются неисправности. Задача состоит в том, чтобы детектировать эти
неисправности.
Рис. 1 Система управления.
•
•
•
•
•
Виды неисправностей
Скорость перекладки руля меньше максимальной
Руль застопорился
Произвольные показания измерительной системы
Константные показания измерительной системы
Аддитивные неисправности
Постановка задачи в математической форме:
Пусть " # = %&' # ((#) – передаточная функция объекта (в нее
включены шумы и неопределенности в объекте) без неисправностей, тогда
" # = %&' # ( # + %&, # - #
– передаточная функция объекта с
неисправностью (- # – вектор неисправностей). Требуется детектировать
наличие добавочного слагаемого.
4
Обзор литературы
Пионером в области детектирования неисправностей является Стивен
Динг. Его наработки я использовал для построения модели. Основной его
труд «Model-Based Fault Diagnosis Techniques», был издан в 2008 году, а в
2013 году эту книгу переиздали. Так же я пользовался его различными
работами, на основе которых, Стивен Динг как раз и написал свою книгу.
«Model-Based Fault Diagnosis Techniques».
Модель морского подвижного объекта я взял из книжки Евгения
Игоревича Веремея «Линейные системы с обратной связью». Так же
некоторые сведения о МПО я взял из книжки «Компьютерное
моделирование систем управления движением морских подвижных
объектов» Е.И Веремея, В.М. Корчанова, М.В. Коровкина и С.В Погожева.
5
Глава 1. Моделирование систем
1.1 Математическое описание объектов
В зависимости от динамики и цели моделирования, динамическая
система может быть описана по-разному. Linear Time-Invariant (LTI) системы
являются простым, и таким образом, широко используемым в научных
исследованиях и прикладных областях способом описания объектов.
Вначале мы рассмотрим систему без шумов и неисправностей. Есть две
стандартные математические формы представления для LTI систем: tf-форма
и ss-форма.
Грубо говоря передаточная функция(tf) – вход-выход описание
динамики LTI системы в частотной области. U – входной вектор, y – выходной
вектор
" # = %&' # ((#)
Стандартная форма представления LTI системы в пространстве
состояний:
Для перевода из ss в tf форму используем следующую формулу:
6
1.2. Взаимно простое разложение передаточной функции
Взаимно простое разложение(Coprime Factorization) передаточной
функции дает дополнительную форму представления системы, которая
будет использоваться в работе.
Определение 1 [1] Две передаточные функции : # , <(#) называются
левыми взаимнопростыми, если существуют две передаточные матрицы
= # , >(#), такие, что
Тоже самое с правыми:
Определение
2
[1]
-
разложение(LCF)
левое
взаимно
простое
- правое(RCF), где : # и < # −
правые взаимнопростые;
Лемма 1 [1] Пусть %(#) – передаточная функция с ss реализацией (@, A, B, C).
Пусть F и L такие, что A+BF и A-LC – гурвицевы матрицы, тогда
7
Представление системы через LCF
Запишем наблюдатель системы:
Ошибка выходного параметра
Получаем
С другой стороны
Становится очевидным, что
Ошибка выходного параметра
так же называется остаточным
сигналом который будет рассмотрен в дальнейшем.
Динамическая система которая принимает y,u, а выдает остаточный вектор r
на выход называется остаточным генератором.
8
1.3. Математическое описание моделей с возмущениями
Волнения
вокруг
рассматриваемого
процесса,
неожиданные
изменения в рамках технического процесса, а также измерения и шумы в
объектах часто моделируются как неизвестные входные вектора.
• SS-форма
D(#) = @D(#) + A((#) + EF G(#)
" # = BD # + C( # + HF G(#)
• tf – форма
" # = %&' # ( # + %&F # G #
где %&F # – передаточная функция возмущений, %&F # известна.
9
1.4. Математическое описание моделей c
неопределенностями
Неопределенности в моделях описывают разницу между моделью
системы и реальностью. Неопределенности появляются из-за изменения
процесса или окружающей среды вокруг процесса.
• tf-форма
где индекс ∆ показывает, что в модели есть неопределенность.
• SS-форма
где матрицы неопределенности ∆A, ∆B, ∆C, ∆D, ∆E и ∆F могут быть выражены
следующим образом:
где E, F, G, H, J известные матрицы, а ∆(t) неизвестен, но ограничен
где I(∆) – максимальное сингулярное число среди всех сингулярных чисел
системы при подстановке каждого конкретного значения из интервала,
который описывает неопределённость в модели.
Тогда запись в SS-форме примет вид:
10
1.5. Математическое описание неисправностей
• tf-форма
где f – неизвестный вектор, который показывает все возможные
неисправности и должен быть равен нулю, когда неисправностей нет.
• SS-форма
из SS-формы можно получить представление передаточной функции для
неисправностей
11
Глава 2. Основные идеи детектирования
неисправностей
Для детектирования неисправностей используют так называемые
генераторы остаточного сигнала. Остаточный сигнал понимается как
индикатор для возможных неисправностей.
В данной работе будут использоваться генераторы остаточного сигнала
на основе наблюдателя. Их особенность в том, что когда неисправностей нет,
то их сигнал равен 0, а когда неисправность появляется, то ≠ 0.
2.1. Фильтр детектирования неисправностей(Fault Detection
Filter)
Фильтр детектирования неисправностей – первый тип генератора
остаточного сигнала на основе наблюдателя, предложенный Бердом и
Джонсоном в начале 1970х. Их работа положила начало бурного развития в
детектировании неисправностей.
FDF[1] строится на основе наблюдателя полного порядка,
который строится на коэффициентах из исходной системы. L выбирается так,
чтобы A-LC была гурвицева.
Вводим невязку
Тогда остаточный сигнал примет вид
или
Так же D обеспечивает несмещенную оценку для x, то есть
12
2.2. Диагностический наблюдатель (Diagnostic Observer)
Диагностический наблюдатель строится на основе наблюдателя
Люнбергера, который описывается следующим образом[1]
На новые матрицы накладываются условия Люнбергера
Тогда динамика остаточного вектора будет описываться следующим образом
Остаточному сигналу в исполнении диагностического наблюдателя
требуется некоторое время для приближения к нулю, когда неисправности
нет. Математически это можно записать так,
На практике такой интервал времени рассматривается как время
калибровки и является частью процесса измерения или мониторинга. Время
калибровки является минусом для данного типа генератора, но его плюсом
является сильный отклик на некоторые виды неисправностей.
Для
диагностического
наблюдателя
на
основе
наблюдателя
Люнбергера практический и теоретический интерес заключается в
нахождении отношений между матрицами, которые в него входят и
решением условий Люнбергера. В следующем подпараграфе мы рассмотрим
два алгоритма решения условий Люнбергера, которые дают матрицы для
построения генератора остаточного сигнала.
13
2.2.1. Алгоритмы решения уравнений Люнбергера
Теорема 1 [1] Дана модель системы в tf-форме
пусть # ≥ IOPQ , где IOPQ – минимальное сингулярное число матрицы A, и
(1)
тогда матрицы L, T , H, q, v, w выбранные следующим образом
(2-4)
решают уравнение Люнбергера
14
где вектор g должен быть выбран так, чтобы G- была Гурвицевой.
(5)
Алгорим 1 [1] (Решение уравнения Люнбергера)
1. Задаем # ≥ IOPQ
2. Решаем (1) для
3. Выбираем g, так что G из (5) устойчива
4. Вычисляем L, T , H , q, v, w в соответствии с (2-4)
Теорема 2 [1] Дана модель системы в tf-форме
пусть # ≥ IOPQ , а матрицы L, T, V, W определяемые следующим образом:
(1)
(2)
решают уравнения Люнбергера
Матрицы G должна быть устойчивой, а матрица X–произвольная(dim s x m) и
15
Доказательство
Подставим
В
, что даст
Поскольку
мы получаем
Доказано.
16
Алгорим 2 [1] (Решение уравнения Люнбергера, предложено Ге и Фангом)
1. Задаем =, %
2. Решаем c(s) = det(sI-A) для RS … RQ
3. Считаем L,T в соответствии с (1)
4. Решаем UVBWX = 0 для U
5. Находим V из (2)
17
2.3. Сравнение FDF и DO
Фильтр
детектирования
неисправностей(Fault
Detection Filter)
Диагностический
наблюдатель(Diagnostic Observer)
+ -
+ Прост в построении
+ Отлично подходит для сложных систем, так
+ Нет калибровочного
как размерность вектора z может быть
времени
меньше размерности системы
- Размерность вектора D = x , - Нужно решать уравнение Люнбергера
что для плохо для сложных
- Есть калибровочное время
систем
- Не детектирует некоторые неисправности
из-за калибровочного времени
Расчетные параметры
L
L, H, v, w
Варьируемые параметры
L
[\ , %
18
2.4. Генерация остаточного сигнала без возмущений
В этом параграфе рассматривается вопрос генерации остаточного
сигнала, который отделен от возмущений. В связи с этим, такой остаточный
генератор действует как индикатор наличия неисправности.
Теорема 1 [1] Дана передаточная функция неисправностей
и передаточная функция возмущений
, тогда остаточный генератор детектирует
неисправности, но не показывает шумы, тогда и только тогда, когда
выполняется (1) для всех собственных чисел матрицы A.
(1)
где, s – собственное число
Алгоритм 1 [1] (Проверка возможности построения остаточного
генератора, сигнал которого будет отделен от возмущений)
1. Считаем ранги для всех собственных чисел
2. Если для всех собственных чисел ранг первой матрицы больше, чем
второй, тогда построить такой генератор возможно. Если хоть для
одного собственного числа первая матрица меньше или равна, то
построить такой генератор нельзя.
19
2.5. Порог для остаточного сигнала
Если в системе есть неопределенности, тогда мы не можем точно
сказать о наличии или отсутствии неисправности, когда r≠ 0. Нам нужно
узнать порог J, для которого выполняются следующие условия:
Если ] ^ > `, тогда неисправность есть
Если ] ^ < `, тогда неисправности нет.
Пусть неопределённость в системе записана в ограниченной по норме
форме. Вид системы в SS-форме:
(1)
Вид остаточного генератора:
Представим R(S) четырьмя матрицами @b , Ab , Bb , Cb , тогда систему можно
будет записать
где
20
Теорема 1 [1] Дана система (1) и c > 0, тогда
Если ∃ e > 0, f > 0 такие, что
(2)
где
Алгоритм 1 [1] (Нахождение J)
1. Заменяем %, i на
j
k∆
,
l
k∆
2. Решаем (2) и находим c, для e > 0, f > 0. Находим c ∗ = nop c
3. ` =
q ∗ kr,s tku,s
X
, где T-время вычисления порога, а vF,w , v',w −
оценки для вектора возмущения и вектора управления
21
Глава 3. Детектирование неисправностей
приборах морских подвижных объектов
в
В данной главе мы будем моделировать, а затем детектировать
неисправности на конкретном примере. Моделировать МПО мы будем
моделировать в пакете Simulink.
3.1. Модель системы
Рассмотрим линейную модель бокового движения морского судна[2]
водоизмещением около 4000 т, движущегося со скоростью хода V = 10 м/с.
Входным сигналом будем считать командный сигнал (~ , подаваемый на
привод вертикальных рулей, а выходным сигналом — отклонение от
заданного курса:
В уравнениях использованы следующие обозначения: Ä — дрейф (угол
между продольной осью и вектором скорости), Å& — угловая скорость по
курсу, — отклонение от заданного курса, ÅÇ — угловая скорость по крену,
É— угол крена, v~ — угол отклонения руля направления, (~ — управление,
HÑ , :& , :Ç — внешние возмущения.
22
Примером корабля с водоизмещением 4000т может служить
сторожевой корабль «Адмирал Эссен»(рис 3.1.1). Сторожевой корабль
«Адмирал Эссен» был заложен на ПСЗ «Янтарь» в 2011 году, спущен на воду
в ноябре 2014 года. Это достаточно маневренный и подвижный корабль,
способный развивать скорость до 30 узлов при длине судна в 124 метра.
Дальность действия — почти 5 тысяч миль.
Рисунок 3.1.1
В приведенных уравнениях номинальным значением коэффициента
ÄwÇ является величина 0,002164. Однако если считать, что этот коэффициент
известен не точно, то мы имеем дело с типичной ситуациейù,
характеризуемой неопределенностью. Предположим, что по каким либо
соображениям известен отрезок ÄwÇ ∈ [0, 0,0043] на числовой оси, которому
принадлежит этот коэффициент.
Уравнение регулятора, который стабилизирует объект для
ÄwÇ ∈ [0, 0,0043]:
23
Перепишем данную модель в SS-форме:
−0.1588
0.1030
0
@ =
−0.1439
0
0
A =
0
0
0
;
0
0
1
0.2669
−0.1877
0
−0.5772
0
0
B= 0
0
0
0
1
0
0
0
1
0.01211
10 ∗ ÄwÇ
0
−0.1989
0
0
0
0
0.01243
0.00005386
0
−0.2085
0
0
0 ; C = 0; D =
−0.02146
−0.02134
0
0.1077
0
−0.6
Ä
Å&
;
ÅÇ
É
v~
D = @D + A( + EF G
" = BD + C( + HF G
EF =
0.0001224
0.0002045
0
; HF = 0; G =
0.0002045
0
0
HÑ
:&
0
:Ç
0
0
Курс на который должен выйти МПО: S = 10°
На угол перекладки руля и скорость перекладки накладываются
нелинейные ограничения:
Математическая модель внешних возмущений формируется с
помощью пропускания единичного белого шума через фильтр с
передаточной функцией:
i # =
@#
# w + A# + B
24
где коэффициенты A, B и С выбираются из таблицы высот волн 3%-й
обеспеченности[3], исходя из характеристики ветра (табл. 3.1.1)
S.îï
@ = 0.206 ∗ ℎí%
;A
=
S.ïñwó
√ôö%
;B =
w.SîSõî
ôö%
Таблица 3.11.
Для примера возьмем метровую высоту 3%-й обеспеченности, что
соответствует умеренной характеристике ветра. Тогда A = 0.206;
A = 0.5926; B = 2.07087.
Рассмотрим модель динамики объекта в Simulink(рис 3.1.2), блок
регулятора (рис 3.1.3), блок привода вертикальных рулей(рис 3.1.4), блок
МПО (рис 3.1.5) и блок возмущений (рис 3.1.6).
Рисунок 3.1.2
25
Рисунок 3.1.3
Рисунок 3.1.4
Рисунок 3.1.5
26
Рисунок 3.1.6
Регулятор справляется со своей задачей и выводит курс на S = 10°
при всех значения ÄwÇ (рис 3.1.7)
Рисунок 3.1.7
27
Моделирование неисправностей в пакете Simulink
• Остановку руля можно смоделировать с помощью блока Step, выход
которого, умножается на сигнал перед интегратором. Выбираем
время, при котором руль застопорится, затем параметр Конечное
значение ставим на ноль.
• Скорость
перекладки
руля
меньше
максимальная
можно
смоделировать с помощью блока Step, поставив его как множитель
перед интегратором. Выбираем время, а затем ставим параметр
Конечное значение в интервале (0;1).
• Аддитивные неисправности для МПО и для руля можно
смоделировать блоком Step, но блок нужно суммировать сигналами
системы.
3.2. Построение FDF для руля
Выпишем модель руля в SS-форме:
A = -0.6; B = 1; C = 1; D = 0.
D = −0.6D + (
" = D
Передаточная функция:
%&Ç =
ú
ú w + 0.6
Пусть L =10, мы можем взять такое значение, так как собственное
число(A-LC) = -10.6.
Модель руля вместе с неисправностями и двумя типами фильтров
показана на рисунке(рис 3.2.1)
Тогда запишем в SS-форме блок FDF (рис 3.2.2) – это и есть детектор
неисправностей.
D = −0.6D + (
" = D
D = −0.6D + ( + 10 " − D
ù = (−0.6 − 10)ù
28
ù = D − D
] = Bù или ] = " − D
Сигнал r, надо оценить, для этого мы берем модуль.
Рисунок 3.2.1
Рисунок 3.2.2
Если неисправностей нет, то |r| = 0 (рис 3.2.3)
Рисунок 3.2.3
29
Если на 60 секунде руль застопорится, то |r| сообщает об этом
(рис 3.2.4).
Рисунок 3.2.4
Если скорость перекладки руля будет в десять раз меньше, чем
максимальная, то |r| сообщает об этом (рис 3.2.5)
Рисунок 3.2.5
Если на 100 секунде добавится аддитивная неисправность равная
0.1, то |r| сообщает об этом (рис 3.2.5)
30
Рисунок 3.2.5
Фильтр работает для всех значений ÄwÇ .
31
3.3. Построение DO для руля
Для построения DO нужно решить уравнения Люнбергера. Для
решения будем использовать Алгоритм 1 из параграфа 2.2.1.
IOPQ = 0.6
s = 1 > 0.6
[\
B
= 0
B@
[\ = [0.6 1]
† = % = −1
V = [\,° ∗ B
¢ = [\,S − †[\,\
U = 1
£ = [\,\
[\,S + †° [\,\
i
=
[\,\
§
[\,° C
0 BA
Полученные значения решают уравнения Люнбергера. Это
значит, что диагностический наблюдатель, который будет построен со
значениями, которые мы получили из Алгоритма 1 будет
детектировать неисправности.
Но у DO есть время калибровки(рис 3.3.1), это его существенный
минус. В это время неисправности могут не детектироваться.
Рисунок 3.3.1
32
Блок DO в системе Simulink(рис 3.3.2)
Рисунок 3.3.2
Детектирование аддитивной неисправности = 0.1, на 0 секунде
происходит с задержкой(рис 3.3.3) как из-за времени калибровки.
Рисунок 3.3.3
Неисправности, которые происходят после времени калибровки
детектируются без существенных задержек.
Фильтр работает для всех значений ÄwÇ .
33
3.4. Построение FDF для МПО
Матрица неисправностей:
EF =
0
0
ù ; ù ∈ (0; 1]
0
0
Проверим систему на возможность построения остаточного генератора
без возмущений.
Значит неравенство (1) выполняется => возможно построить
остаточный генератор, на который не будет влиять возмущения.
(1)
−9.901
−27.4186
¢ = 37.2132 ;
15.123
−3.1789
Собственные значения для A-LC:
−4.486 + 3.6463o
−4.486 − 3.6463o
ùo† @ − ¢B =
;
−0.1729
−0.0975 + 0.4459o
−0.0975 − 0.4459o
Сигнал будем оценивать по евклидовой норме.
Система вместе с блоком FDF МПО(рис 3.4.1)
34
Рисунок 3.4.1
Часть блока FDF МПО, в которой моделируются неисправности и
показан вид |r| (рис 3.4.2)
Рисунок 3.4.2
Порог: |(|w ≤ 0.53, |G|w ≤ 0.6, c = 0.01, T=100, тогда J = 0.00113;
Фильтр детектирует аддитивную неисправность на 20 секунде (рис 3.4.3)
Фильтр работает для всех значений ÄwÇ .
35
Выводы
• Построены два типа остаточного генератора, для определения
неисправностей. Выявлены плюсы и минусы для каждого типа.
• Смоделированы неисправности для системы.
• Неисправности детектированы
Заключение
В процессе данной работы мы познакомились с методами
детектирования неисправностей. Рассмотрены два типа остаточного
генератора и два алгоритма для нахождения коэффициентов для одного из
них. В работе представлен алгоритм детектирования неисправностей для
различных систем. Алгоритм применен для модели бокового движения
морского судна водоизмещением около 4000 т, движущегося со скоростью
хода V = 10 м/с. Неисправности были детектированы. В среде Simulink
построена модель МПО и решена задача детектирования неисправностей.
37
Глава 3. Список литературы
1. Steven X. Ding Model-Based Fault Diagnosis Techniques. London: SpringerVerlag, 2013. 501 c.
2. Веремей Е.И. Линейные системы с обратной связью. СПб.:
Издательство «Лань», 2013. 448 с.
3. Е.И. Веремей, М.В. Коровкин, В.М. Корчанов, С.В. Погожев.
Компьютерное моделирование систем управления движение МПО.
СПб.:НИИ Химии СПбГУ, 2002. 370 c.
38
Отзывы:
Авторизуйтесь, чтобы оставить отзыв