Анализ дерева отказов (FTA — Fault Tree Analysis), это дедуктивный метод анализа надежности и безопасности систем, который позволяет графически и логически представить комбинации отказов элементов системы, приводящие к возникновению нежелательного события (вершины дерева). Данный метод широко применяется в авиации, атомной энергетике, химической промышленности, разработке ПО и автомобилестроении.
Основные понятия и символы
Прежде чем переходить к образцу, необходимо разобрать базовые элементы, из которых строится дерево. Используются стандартные символы (по стандартам IEC 61025, GOST R 50377 или MIL-STD-1629):
События (Events)
- Вершинное событие (Top Event): Основное нежелательное событие, анализ которого проводится (например, «Пожар в двигателе», «Потеря управления самолетом»). Изображается прямоугольником с треугольником сверху или просто прямоугольником на вершине дерева.
- Промежуточное событие (Intermediate Event): Событие, возникающее в результате комбинации других отказов. Изображается прямоугольником.
- Базовое событие (Basic Event): Элементарный отказ компонента, который не раскладывается дальше (например, «Отказ насоса», «Обрыв провода»). Изображается кругом.
- Внешнее событие (External / House Event): Событие, ожидаемое в нормальных условиях работы (например, «Питание включено»). Изображается домом или овалом.
- Неразвиваемое событие (Undeveloped Event): Событие, которое не анализируется дальше из-за нехватки данных или незначительности. Изображается ромбом.
Логические вентили (Gates)
- Вентиль «И» (AND Gate): Выходное событие происходит, только если произошли все входные события одновременно. Символ: плоская нижняя грань, полукруг сверху.
- Вентиль «ИЛИ» (OR Gate): Выходное событие происходит, если произошло хотя бы одно из входных событий. Символ: изогнутая нижняя грань, полукруг сверху.
- Вентиль «Исключающее ИЛИ» (XOR Gate): Срабатывает, если произошло ровно одно из входных событий.
- Вентиль «K из N» (Voting Gate): Срабатывает, если произошло K событий из N возможных.
- Инхибитор (Inhibit Gate): Аналог AND, но с условием (условное событие), которое должно быть истинно для прохождения сигнала. Часто используется для моделирования условий среды.
Алгоритм построения дерева отказов
- Определение вершинного события: Четко сформулируйте, что именно анализируется (что, где, при каких условиях).
- Понимание системы: Изучите функциональные схемы, принципиальные схемы, алгоритмы работы.
- Декомпозиция (снизу вверх или сверху вниз): Задавайте вопрос: «Что может вызвать это событие?». Разбивайте события до базового уровня.
- Выбор логических вентилей: Определите, как отказы компонентов взаимодействуют (последовательно — И, параллельно/избыточно, ИЛИ).
- Завершение ветвей: Доведите все ветви до базовых событий, внешних событий или неразвиваемых событий.
- Верификация: Проверьте дерево на полноту и правильность логики (нет ли циклов, избыточных связей).
- Количественный анализ (опционально): Назначьте вероятности базовым событиям и рассчитайте вероятность вершинного события.
- Анализ минимальных срезовых множеств (Minimal Cut Sets — MCS): Найдите наименьшие комбинации базовых отказов, гарантирующие вершинное событие.
Образец: Дерево отказов для системы подачи воды при пожаре
Рассмотрим классический учебный пример. Вершинное событие: «Нет подачи воды на пожарный гидрант при пожаре».
Текстовое представление структуры дерева (индентация показывает иерархию)
ВЕРШИННОЕ СОБЫТИЕ: Нет подачи воды на гидрант (T)
|
|-- ВЕНТИЛЬ "ИЛИ" (G1): Отказ источника воды ИЛИ Отказ магистрали ИЛИ Отказ арматуры
|
|-- ПРОМЕЖУТОЧНОЕ СОБЫТИЕ: Отказ источника воды (E1)
| |
| |-- ВЕНТИЛЬ "ИЛИ" (G2): Отказ основного насоса ИЛИ Отказ резервного насоса ИЛИ Нет питания
| |
| |-- БАЗОВОЕ СОБЫТИЕ: Отказ основного электронасоса (BE1) [λ=1e-4 /ч]
| |-- БАЗОВОЕ СОБЫТИЕ: Отказ резервного дизель-насоса (BE2) [λ=5e-4 /ч]
| |-- ВЕНТИЛЬ "И" (G3): Отказ внешнего питания И ОТКАЗ АИБ
| |-- БАЗОВОЕ СОБЫТИЕ: Отказ внешней сети питания (BE3) [λ=2e-3 /ч]
| |-- БАЗОВОЕ СОБЫТИЕ: Отказ АИБ (Аварийного Источника Питания) (BE4) [λ=1e-3 /ч]
|
|-- ПРОМЕЖУТОЧНОЕ СОБЫТИЕ: Отказ магистрального трубопровода (E2)
| |
| |-- ВЕНТИЛЬ "ИЛИ" (G4): Разрыв трубы ИЛИ Засорение трубы
| |-- БАЗОВОЕ СОБЫТИЕ: Разрыв трубы из-за коррозии (BE5) [λ=1e-5 /ч]
| |-- БАЗОВОЕ СОБЫТИЕ: Засорение продуктами коррозии (BE6) [λ=5e-6 /ч]
| |-- ПРОМЕЖУТОЧНОЕ СОБЫТИЕ: Отказ арматуры на гидранте (E3)
|
|-- ВЕНТИЛЬ "ИЛИ" (G5): Клапан не открывается ИЛИ Клапан заклинило
| |
| |-- ВЕНТИЛЬ "И" (G6): Отказ привода И ОТКАЗ РУЧНОГО ПРИВОДА (резерв)
| | |-- БАЗОВОЕ СОБЫТИЕ: Отказ электропривода клапана (BE7) [λ=1e-4 /ч]
| | |-- БАЗОВОЕ СОБЫТИЕ: Заклинивание ручного volante (BE8) [λ=1e-3 /ч]
| | | |-- БАЗОВОЕ СОБЫТИЕ: Механическое заклинивание штока клапана (BE9) [λ=2e-5 /ч]
Графическое представление (схематическое описание для построения в ПО)
Для построения в специализированном ПО (Isograph FaultTree+, RiskSpectrum, OpenFTA, BlockSim) или на бумаге схема выглядит так:
|
v
[G1: OR] <-- Вентиль "ИЛИ" (форма замочка вниз) / | / | v v v [E1] [E2] [E3] <-- Промежуточные события (Прямоугольники) Источник Магистраль Арматура | | | v v v [G2] [G4] [G5] <-- Вентили "ИЛИ" /| / / | | | | | | v v v v v v BE1 BE2 [G3] BE5 BE6 [G6] BE9 | | / / | | v v v v | |BE3 BE4 BE7 BE8 | | (AND) | | (OR) (OR)
Количественный анализ (Пример расчета)
Предположим, все базовые события независимы и имеют постоянные интенсивности отказов (λ). Расчет производится для малого времени миссии t (например, 1 час пожароопасных работ), где вероятность отказа Q ≈ λ × t.
Входные данные (λ, 1/час):
- BE1 (Основной насос): 1.0E-4
- BE2 (Резервный насос): 5.0E-4
- BE3 (Внешнее питание): 2.0E-3
- BE4 (АИБ): 1.0E-3
- BE5 (Разрыв трубы): 1.0E-5
- BE6 (Засорение): 5.0E-6
- BE7 (Электропривод): 1.0E-4
- BE8 (Ручной привод): 1.0E-3
- BE9 (Шток клапана): 2.0E-5
Расчет по ветвям (для t=1 час):
- Ветвь E1 (Источник):
- Q_G3 (Питание) = Q_BE3 × Q_BE4 = (2E-3) × (1E-3) = 2.0E-6 (Вентиль И).
- Q_E1 = Q_BE1 + Q_BE2 + Q_G3 = 1E-4 + 5E-4 + 2E-6 ≈ 6.02E-4 (Вентиль ИЛИ, сумма так как вероятности малы).
- Ветвь E2 (Магистраль):
- Q_E2 = Q_BE5 + Q_BE6 = 1E-5 + 5E-6 = 1.5E-5.
- Ветвь E3 (Арматура):
- Q_G6 (Привод) = Q_BE7 × Q_BE8 = (1E-4) × (1E-3) = 1.0E-7.
- Q_E3 = Q_G6 + Q_BE9 = 1E-7 + 2E-5 ≈ 2.01E-5.
Q_T = Q_E1 + Q_E2 + Q_E3 = 6.02E-4 + 1.5E-5 + 2.01E-5 ≈ 6.37 × 10⁻⁴ за час.
Анализ минимальных срезовых множеств (MCS)
Для данного дерева минимальные срезовые множества (комбинации базовых отказов, приводящие к вершинному событию) выглядят так:
- {BE1} — Отказ основного насоса.
- {BE2} — Отказ резервного насоса.
- {BE3, BE4} — Одновременный отказ внешней сети и АИБ.
- {BE5} — Разрыв трубы.
- {BE6} — Засорение трубы.
- {BE7, BE8} — Одновременный отказ электропривода и заклинивание ручного привода.
- {BE9} — Заклинивание штока клапана.
Ранжирование MCS по вероятности позволяет выявить «слабые звенья» системы. В данном случае однокомпонентные срезовые множества {BE1}, {BE2}, {BE5}, {BE6}, {BE9} являются наиболее опасными.
Типичные ошибки при построении
- Смешивание «И» и «ИЛИ»: Наиболее частая ошибка. Если система работает, пока работает хотя бы один элемент (избыточность) — это вентиль «ИЛИ» на вершине ветви отказов (отказ системы = отказ 1 И отказ 2). Если для отказа системы достаточно отказа любого одного» элемента (последовательная схема) — это вентиль «ИЛИ» (отказ системы = отказ 1 ИЛИ отказ 2). Правило: Думайте в терминах «Что вызовет отказ вершины?».
- Игнорирование зависимых отказов (Common Cause Failures — CCF): Если два насоса стоят в одной комнате и заполнены маслом из одной партии, их отказы не независимы. Необходимо добавлять β-фактор или явные события CCF.
- Слишком глубокая детализация: Анализ до уровня «обрыв витка в реле» нецелесообразен, если нет статистики. Останавливайтесь на уровне заменяемого модуля (LRU).
- Потеря временных аспектов: Стандартное статическое дерево не учитывает последовательность событий (сначала отказ основного, потом отказ резервного при пуске). Для этого нужны динамические вентили (SEQ, SPARE, PAND) или марковские модели.
Программные инструменты для построения
- Коммерческие: Isograph FaultTree+, RiskSpectrum (ReliaSoft), Item ToolKit, RAM Commander, BlockSim.
- Open Source / Бесплатные: OpenFTA, Arbre-Analyste, GraphViz (для рисования без расчетов), Python-библиотеки (fiabilipy, faulttree).
Дерево отказов — мощный инструмент для системного мышления. Образец, приведенный выше, демонстрирует стандартную структуру: от вершинного события через логические вентили к базовым событиям. Ключевая ценность метода — не только в количественном результате (вероятность), а в качественном понимании путей развития аварии (MCS), что позволяет инженерам целенаправленно повышать надежность самых уязвимых узлов системы.
Примечание: Приведенные числовые значения интенсивностей отказов (λ) являются условными учебными примерами. Для реальных расчетов необходимо использовать данные надежности конкретного оборудования (OREDA, NPRD, данные производителей, оперативную статистику предприятия).