The Safety Critical Systems, Chapter 1, 2, 5정리

Chapter 1·2·5 통합 정리 — 허용위험에서 부품 위험고장률까지

Chapter 1·2·5 통합 정리

허용위험에서 목표 SIL, 고장모드, 부품 위험고장률까지

문서의 범위

이 문서는 Chapter 1, Chapter 2, Chapter 5를 연결하여 다음 흐름을 설명한다.

허용위험
위험사건 허용빈도
목표 PFD·PFH
목표 SIL
고장모드
λ·μ·MDT·T
실제 PFD·PFH

1. 먼저 용어·단위·대상을 구분한다

기능안전 계산에는 사람의 위험, 위험사건의 빈도, 안전기능의 실패확률, 부품의 고장률이 함께 나타난다. 이 값들은 의미와 단위가 다르다.

1.1 위험목표와 안전기능 목표

용어기호의미단위
Maximum Tolerable Risk\(R_{\max}\)사망·상해 등 정해진 최종 피해에 대해 허용하는 최대 위험\(\mathrm{yr}^{-1}\)
Maximum Tolerable Failure Rate\(F_{H,\max}\)최종 피해로 이어질 수 있는 위험사건의 최대 허용 발생빈도\(\mathrm{yr}^{-1}\)
사고 전파확률\(p_i\)위험사건이 노출·점화·사망으로 진행될 조건부 확률무차원
Demand Frequency\(F_D\)안전기능이 작동해야 하는 원인사건 또는 요구의 발생빈도\(\mathrm{yr}^{-1}\)
PFD\(PFD\)Demand가 발생했을 때 안전기능이 실패할 확률무차원
Average PFD\(PFD_{\mathrm{avg}}\)Proof Test 주기 전체에서 평균한 PFD무차원
PFH\(PFH\)고수요·연속 안전기능의 시간당 위험고장빈도\(\mathrm{h}^{-1}\)
SILSIL 1~4안전기능에 요구되는 무결성의 이산 등급없음

1.2 부품 신뢰도와 시간 관련 용어

용어기호의미단위
Failure Rate\(\lambda\)정상상태에서 고장상태로 전이하는 단위시간당 비율\(\mathrm{h}^{-1}\)
Repair Rate\(\mu\)고장상태에서 정상상태로 복구되는 단위시간당 비율\(\mathrm{h}^{-1}\)
Mean Down Time\(MDT\)고장 발생부터 기능 복구까지 고장상태로 존재하는 평균시간\(\mathrm{h}\)
Mean Repair Time\(MRT\)실제 수리작업에 필요한 평균시간\(\mathrm{h}\)
Proof Test Interval\(T\)자동진단으로 찾지 못한 잠복고장을 확인하는 시험 간격\(\mathrm{h}\), yr
Unavailability\(Q\)임의 시점에 장치가 고장상태일 확률무차원
Beta Factor\(\beta\)전체 고장 중 공통원인고장으로 취급하는 비율무차원
가장 먼저 구분할 것
\[\boxed{F_{H,\max}\neq\lambda}\]

\(F_{H,\max}\)는 위험사건의 허용빈도이고, \(\lambda\)는 센서·로직솔버·밸브 같은 부품의 고장률이다.

2. \(\lambda\)와 고장확률의 관계

\(\lambda\)는 확률이 아니라 단위시간당 고장률이다.

\[[\lambda]=\mathrm{h}^{-1}\]

고장률이 일정하다고 가정하면 시간 \(t\) 이내에 고장이 발생할 정확한 확률은 다음과 같다.

\[\boxed{P_f(t)=1-e^{-\lambda t}}\]

\(\lambda t\ll1\)이면 다음과 같이 근사한다.

\[\boxed{P_f(t)\approx\lambda t}\]
\(\lambda\)단위시간당 고장률
단위: \(\mathrm{h}^{-1}\)
\(\lambda t\)시간 \(t\) 동안의 누적 고장위험도
무차원
\(1-e^{-\lambda t}\)시간 \(t\) 이내 최소 한 번 고장날 확률
무차원

3. 고장과 복구를 함께 고려한 비가용도 \(Q\)

정상
λ →
고장
μ →
정상

\(\lambda\)는 고장상태로 들어가는 속도이고, \(\mu\)는 고장상태에서 정상상태로 돌아오는 속도이다.

\[\boxed{Q=\frac{\lambda}{\lambda+\mu}}\]

3.1 MDT와의 관계

단순 2상태 모델에서 유효 복구율을 \(\mu=1/MDT\)로 두면 다음과 같다.

\[ Q =\frac{\lambda}{\lambda+\frac1{MDT}} =\frac{\lambda MDT}{1+\lambda MDT} \]

\(\lambda MDT\ll1\)이면 다음과 같이 근사한다.

\[\boxed{Q\approx\lambda MDT}\]
물리적 의미
\[\boxed{\text{비가용도}\approx\text{고장 발생속도}\times\text{고장상태 지속시간}}\]

3.2 \(Q\)와 PFD

저수요 안전기능의 Demand가 임의 시점에 발생한다고 가정하면, Demand 순간에 장치가 고장상태일 확률을 PFD로 볼 수 있다.

\[\boxed{PFD\approx Q}\]
주의

모든 \(Q\)가 항상 PFD와 동일한 것은 아니다. 이 관계는 저수요 기능과 임의 Demand 가정을 전제로 한다.

4. 고장모드와 \(\lambda\)의 분류

4.1 고장원인·고장모드·고장영향

구분질문
Failure Cause왜 고장났는가?부식, 결빙, 전원 상실, 설계 오류
Failure Mode어떻게 고장났는가?밸브 열림 고착, 센서 Low 고착
Failure Effect그 결과 무엇이 발생하는가?과압 미검출, 비상차단 실패
\[\boxed{\text{고장원인}\rightarrow\text{고장모드}\rightarrow\text{고장영향}}\]

4.2 Safe 또는 Dangerous의 기준

고장모드 자체가 항상 안전고장 또는 위험고장으로 고정되는 것은 아니다. 안전기능, 안전상태, Demand, 허용 응답시간, 시스템 경계를 먼저 정의해야 한다.

고장모드안전기능에 미치는 영향분류
열림 상태로 고착과압 시 차단 실패위험고장
요구 없이 닫힘생산중단, 안전상태 이동안전고장
닫힘시간 초과허용시간 내 차단 실패위험고장
내부 누설완전한 격리 실패위험고장
위치 피드백 오류실제 상태 오판영향 분석 필요

4.3 전체 고장률의 분해

\[ \boxed{ \lambda_{\mathrm{total}} = \lambda_{SD} + \lambda_{SU} + \lambda_{DD} + \lambda_{DU} } \]
기호명칭의미
\(\lambda_{SD}\)Safe Detected안전고장이 자동으로 검출됨
\(\lambda_{SU}\)Safe Undetected안전고장이 자동으로 검출되지 않음
\(\lambda_{DD}\)Dangerous Detected위험고장이 자동진단으로 검출됨
\(\lambda_{DU}\)Dangerous Undetected위험고장이 Proof Test 또는 Demand 전까지 검출되지 않음
안전고장률\(\lambda_S=\lambda_{SD}+\lambda_{SU}\)
위험고장률\(\lambda_D=\lambda_{DD}+\lambda_{DU}\)

5. 위험 검출 고장과 위험 미검출 고장

5.1 위험 검출 고장 \(\lambda_{DD}\)

자동진단으로 위험고장이 발견되면 수리와 복구가 시작된다.

\[ \boxed{ Q_{DD} = \frac{\lambda_{DD}}{\lambda_{DD}+\mu} } \]

\(\mu=1/MDT_{DD}\)이면,

\[ Q_{DD} = \frac{\lambda_{DD}MDT_{DD}} {1+\lambda_{DD}MDT_{DD}} \approx \lambda_{DD}MDT_{DD} \]

검출 후 Down Time은 대략 다음과 같다.

\[MDT_{DD}\approx MRT+L\]

\(L\)은 작업허가, 정비인력 도착, 예비품 확보, 복구시험 등의 지연시간이다.

5.2 위험 미검출 고장 \(\lambda_{DU}\)

위험 미검출 고장은 다음 Proof Test 전까지 잠복한다.

고장 발생
잠복
Proof Test 검출
수리

Proof Test 주기가 \(T\)이면 평균 검출지연은 \(T/2\)이다.

\[ \boxed{ MDT_{DU} \approx \frac{T}{2}+MRT+L } \]
\[ \boxed{ Q_{DU,\mathrm{avg}} \approx \lambda_{DU} \left( \frac{T}{2}+MRT+L \right) } \]

\(T/2\)가 수리시간보다 충분히 크면,

\[\boxed{PFD_{\mathrm{avg}}\approx\frac{\lambda_{DU}T}{2}}\]
같은 기본원리
\[\boxed{Q\approx\lambda\times\text{고장상태 지속시간}}\]
  • DD 고장: 지속시간 \(\approx MDT_{DD}\)
  • DU 고장: 지속시간 \(\approx T/2+MRT+L\)

5.3 단순 1oo1 부품의 PFD 근사식

\[ \boxed{ PFD_i \approx \lambda_{DU,i} \left( \frac{T_i}{2}+MRT_i+L_i \right) + \lambda_{DD,i}MDT_{DD,i} } \]

수리시간이 Proof Test 주기보다 매우 짧으면,

\[ \boxed{ PFD_i \approx \frac{\lambda_{DU,i}T_i}{2} + \lambda_{DD,i}MDT_{DD,i} } \]

6. 허용위험에서 목표 SIL까지

6.1 Maximum Tolerable Risk에서 위험사건 허용빈도로

\[ R_{\max} = F_{H,\max} \prod_i p_i \]
\[ \boxed{ F_{H,\max} = \frac{R_{\max}}{\prod_i p_i} } \]

6.2 저수요 기능의 목표 PFD

\[ F_D\times PFD_{\mathrm{target}} \le F_{H,\max} \]
\[ \boxed{ PFD_{\mathrm{target}} \le \frac{F_{H,\max}}{F_D} } \]

6.3 고수요·연속 기능의 목표 PFH

위험사건 허용빈도와 안전기능의 위험고장빈도가 직접 대응하고 \(F_{H,\max}\)가 연간 단위라면,

\[ \boxed{ PFH_{\mathrm{target}} = \frac{F_{H,\max}}{8760} } \]

6.4 SIL 구간

SIL저수요 \(PFD_{\mathrm{avg}}\)고수요·연속 \(PFH\,[\mathrm{h}^{-1}]\)
4\(10^{-5}\le PFD<10^{-4}\)\(10^{-9}\le PFH<10^{-8}\)
3\(10^{-4}\le PFD<10^{-3}\)\(10^{-8}\le PFH<10^{-7}\)
2\(10^{-3}\le PFD<10^{-2}\)\(10^{-7}\le PFH<10^{-6}\)
1\(10^{-2}\le PFD<10^{-1}\)\(10^{-6}\le PFH<10^{-5}\)
SIL은 계산의 출발점이 아니다

먼저 허용위험과 위험사건 허용빈도를 계산한다. 그다음 목표 PFD 또는 PFH를 구하고 SIL 구간을 판정한다. 정확한 수치목표를 SIL 등급으로 대체하면 안 된다.

7. 목표 SIL에서 부품 위험고장률 요구치까지

7.1 안전기능의 구성

센서
로직솔버
최종요소

단순한 1oo1 직렬구조이고 각 PFD가 충분히 작으면,

\[PFD_{\mathrm{SIF}}\approx PFD_S+PFD_L+PFD_F\]

전체 목표를 구성요소에 배분하는 것은 신뢰도 예산 배분이다.

7.2 센서 고장모드 분류 예

고장모드결과분류 예
출력 Low 고착실제 과압 미검출\(\lambda_{DU}\)
출력 High 고착정상상태에서 거짓 Trip\(\lambda_S\)
단선, 자동진단됨경보 또는 안전정지기능에 따라 SD 또는 DD
일정값 고착, 미검출과압 미검출\(\lambda_{DU}\)
응답 지연허용시간 내 Trip 실패\(\lambda_D\)
\[ \lambda_{DU,S} = \lambda_{\text{Low 고착}} + \lambda_{\text{미검출 고정값}} + \lambda_{\text{위험 응답지연}} +\cdots \]

7.3 허용 \(\lambda_{DU}\) 역산

\[ \frac{\lambda_{DU,i}T_i}{2} + \lambda_{DD,i}MDT_{DD,i} \le PFD_{i,\mathrm{target}} \]
\[ \boxed{ \lambda_{DU,i} \le \frac{ 2\left( PFD_{i,\mathrm{target}} – \lambda_{DD,i}MDT_{DD,i} \right) }{T_i} } \]

DD 항이 충분히 작으면,

\[ \boxed{ \lambda_{DU,i} \le \frac{2PFD_{i,\mathrm{target}}}{T_i} } \]
계산 예

센서 PFD 예산을 \(1.5\times10^{-3}\), Proof Test 주기를 \(8760\,\mathrm{h}\)라고 하자.

\[ \lambda_{DU,S} \le \frac{2\times1.5\times10^{-3}}{8760} = 3.42\times10^{-7}/\mathrm{h} \]

이는 센서의 전체 고장률이 아니라 과압 미검출을 유발하는 모든 위험 미검출 고장모드의 합에 대한 요구치이다.

8. 중복구조와 공통원인고장

앞의 역산은 단순 1oo1 모델이다. 실제 시스템에서는 다음 항목을 함께 고려해야 한다.

  • 1oo1, 1oo2, 2oo3 등의 Voting 구조
  • 진단범위
  • Proof Test Coverage
  • 시험 중 Bypass
  • 수리 중 운전방식
  • 채널 독립성
  • 공통원인고장 CCF와 \(\beta\)
\[ \boxed{ PFD_{\mathrm{assessed}} = f\left( \lambda_{DU}, \lambda_{DD}, T, MDT, \text{Voting}, \beta, \text{Proof Test Coverage} \right) } \]

1oo2 구조에서는 독립고장에 의한 동시고장 확률이 감소하지만, CCF는 두 채널을 함께 무력화하므로 작은 \(\beta\)도 전체 PFD를 지배할 수 있다.

9. 전체 스토리

앞의 절에서는 각 용어와 수식을 개별적으로 설명하였다. 여기서는 하나의 안전기능이 설계되는 순서에 맞추어 전체 흐름을 연결한다.

1
위험 시나리오와 최종 피해를 정의한다.
2
Maximum Tolerable Risk \(R_{\max}\)를 정한다.
3
사고 전파확률을 반영하여 위험사건 허용빈도 \(F_{H,\max}\)를 계산한다.
4
저수요이면 목표 PFD, 고수요·연속이면 목표 PFH를 계산한다.
5
계산된 정량목표를 SIL 구간에 대응시킨다.
6
안전기능을 센서·로직솔버·최종요소로 모델링한다.
7
각 부품의 고장모드를 식별한다.
8
전체 고장률을 \(\lambda_{SD},\lambda_{SU},\lambda_{DD},\lambda_{DU}\)로 분류한다.
9
DD에는 \(Q=\lambda/(\lambda+\mu)\approx\lambda MDT\), DU에는 평균 검출지연 \(T/2\)를 반영한다.
10
Voting·진단·CCF를 포함하여 실제 PFD 또는 PFH를 계산한다.
11
실제 계산값이 최초 정량목표 이하인지 판정한다.

9.1 위험 시나리오와 안전기능을 정의한다

계산은 부품의 고장률에서 시작하지 않는다. 먼저 어떤 위험조건이 어떤 사고를 거쳐 어떤 피해로 이어지는지를 정의한다.

\[ \text{압력 상승} \rightarrow \text{압력용기 파열} \rightarrow \text{위험물질 누출} \rightarrow \text{점화} \rightarrow \text{사망} \]

이 위험 시나리오에 대한 안전기능은 다음과 같이 정의할 수 있다.

안전기능 예

압력이 설정값을 초과하면 정해진 시간 이내에 차단밸브를 닫아 압력용기 파열을 방지한다.

이 단계에서 안전상태, Trip 설정값, 허용 응답시간, 보호대상과 시스템 경계를 함께 정한다. 이 정의가 있어야 센서 Low 고착이나 밸브 열림 고착을 위험고장으로 분류할 수 있다.

9.2 Maximum Tolerable Risk를 정한다

최종 피해에 대해 허용할 수 있는 최대 위험을 정한다.

\[ R_{\max} = \text{정해진 최종 피해에 대한 최대 허용위험} \]

예를 들어,

\[R_{\max}=10^{-5}/\mathrm{yr}\]

이라면 해당 위험 시나리오로 인한 연간 최종 피해 위험을 \(10^{-5}\) 이하로 제한한다는 뜻이다. 이 값은 센서나 밸브의 고장률이 아니라 사람 또는 환경에 대한 최종 위험목표이다.

9.3 위험사건의 최대 허용빈도를 계산한다

압력용기가 파열하더라도 항상 사망으로 이어지는 것은 아니다. 누출확률, 점화확률, 사람의 노출확률, 사망확률 등을 고려해야 한다.

\[ R_{\max} = F_{H,\max} \prod_i p_i \]
\[ \boxed{ F_{H,\max} = \frac{R_{\max}}{\prod_i p_i} } \]

예를 들어,

\[ R_{\max}=10^{-5}/\mathrm{yr}, \qquad \prod_i p_i=10^{-2} \]

이면,

\[ F_{H,\max} = \frac{10^{-5}}{10^{-2}} = 10^{-3}/\mathrm{yr} \]

이다. 이 값은 압력용기 파열과 같은 위험사건의 허용빈도이며, 부품 고장률 \(\lambda\)와는 대상이 다르다.

9.4 저수요와 고수요·연속 운전모드를 구분한다

안전기능이 드물게 요구되면 저수요 모드로 평가하고 \(PFD_{\mathrm{avg}}\)를 사용한다. 안전기능이 자주 요구되거나 지속적으로 작동해야 하면 고수요·연속 모드로 평가하고 PFH를 사용한다.

저수요 기능\(PFD_{\mathrm{avg}}\)
고수요·연속 기능\(PFH\)

저수요 기능에서 Demand 빈도를 \(F_D\)라고 하면,

\[ F_{\mathrm{residual}} = F_D\times PFD_{\mathrm{target}} \]

이고, 이 값은 \(F_{H,\max}\) 이하이어야 한다. 따라서,

\[ \boxed{ PFD_{\mathrm{target}} \le \frac{F_{H,\max}}{F_D} } \]

이다.

예를 들어 Demand 빈도가,

\[F_D=0.2/\mathrm{yr}\]

이면,

\[ PFD_{\mathrm{target}} = \frac{10^{-3}}{0.2} = 5\times10^{-3} \]

이다.

9.5 목표 SIL을 결정한다

앞에서 계산한,

\[PFD_{\mathrm{target}}=5\times10^{-3}\]

은 다음 범위에 포함된다.

\[ 10^{-3} \le 5\times10^{-3} < 10^{-2} \]

따라서 목표 SIL은 SIL 2이다.

\[\boxed{\text{Target SIL}=SIL~2}\]
수치목표를 유지해야 한다

실제 설계목표는 단순히 SIL 2가 아니다.

\[ \boxed{ PFD_{\mathrm{assessed}} \le 5\times10^{-3} } \]

SIL 2의 상한인 \(10^{-2}\)만 만족하면 되는 것으로 바꾸면 위험분석에서 계산한 요구조건보다 느슨해진다.

9.6 안전기능을 구성요소로 모델링한다

센서
로직솔버
최종요소

단순한 1oo1 직렬구조에서 각 구성요소의 PFD가 충분히 작으면,

\[PFD_{\mathrm{SIF}}\approx PFD_S+PFD_L+PFD_F\]

로 근사할 수 있다.

구성요소예시 PFD 예산
센서\(1.5\times10^{-3}\)
로직솔버\(0.5\times10^{-3}\)
최종요소\(3.0\times10^{-3}\)
합계\(5.0\times10^{-3}\)

이 값은 설명을 위한 예시이다. 표준이 구성요소별 배분비율을 일률적으로 정하는 것은 아니다.

9.7 각 부품의 고장모드를 식별한다

센서의 전체 고장률을 바로 PFD 계산에 넣지 않는다. 먼저 어떤 방식으로 고장나는지를 식별한다.

고장모드안전기능에 미치는 영향분류 예
출력 Low 고착실제 과압을 검출하지 못함위험 미검출
출력 High 고착정상상태에서 거짓 Trip 발생안전고장
단선, 자동진단됨경보 또는 안전정지기능에 따라 SD 또는 DD
일정값 고착, 미검출과압 미검출위험 미검출
응답 지연허용시간 내 Trip 실패위험고장

고장모드 분류의 기준은 부품 자체가 아니라 정의된 안전기능이다.

9.8 전체 \(\lambda\)를 고장범주별로 나눈다

\[ \boxed{ \lambda_{\mathrm{total}} = \lambda_{SD} + \lambda_{SU} + \lambda_{DD} + \lambda_{DU} } \]
안전고장률\(\lambda_S=\lambda_{SD}+\lambda_{SU}\)
위험고장률\(\lambda_D=\lambda_{DD}+\lambda_{DU}\)

센서의 위험 미검출 고장률은 여러 고장모드의 합이다.

\[ \lambda_{DU,S} = \lambda_{\text{Low 고착}} + \lambda_{\text{미검출 고정값}} + \lambda_{\text{위험 응답지연}} +\cdots \]

9.9 \(\lambda\)를 비가용도와 PFD로 변환한다

위험고장이 자동진단으로 검출되면 일정한 복구율 \(\mu\)로 복구가 시작된다고 볼 수 있다.

\[ \boxed{ Q_{DD} = \frac{\lambda_{DD}}{\lambda_{DD}+\mu} } \]

\(\mu=1/MDT_{DD}\)이면,

\[ Q_{DD} = \frac{\lambda_{DD}MDT_{DD}} {1+\lambda_{DD}MDT_{DD}} \approx \lambda_{DD}MDT_{DD} \]

반면 위험 미검출 고장은 다음 Proof Test 전까지 잠복한다.

\[ MDT_{DU} \approx \frac{T}{2}+MRT+L \]
\[ Q_{DU,\mathrm{avg}} \approx \lambda_{DU} \left( \frac{T}{2}+MRT+L \right) \]

수리시간이 Proof Test 주기에 비해 작으면,

\[ \boxed{ PFD_{DU,\mathrm{avg}} \approx \frac{\lambda_{DU}T}{2} } \]
같은 기본원리
\[ \boxed{ Q\approx\lambda\times\text{고장상태 지속시간} } \]
  • DD 고장: 고장상태 지속시간 \(\approx MDT_{DD}\)
  • DU 고장: 고장상태 지속시간 \(\approx T/2+MRT+L\)

9.10 구성요소와 시스템의 실제 PFD를 계산한다

단순한 저수요 1oo1 구성요소에서는,

\[ \boxed{ PFD_i \approx \frac{\lambda_{DU,i}T_i}{2} + \lambda_{DD,i}MDT_{DD,i} } \]

센서에 할당된 PFD 예산이 \(1.5\times10^{-3}\), Proof Test 주기가 \(8760\,\mathrm{h}\)이고 DD 항이 충분히 작다고 하자.

\[ \lambda_{DU,S} \le \frac{2PFD_{S,\mathrm{target}}}{T} = \frac{2\times1.5\times10^{-3}}{8760} \]
\[ \boxed{ \lambda_{DU,S} \le 3.42\times10^{-7}/\mathrm{h} } \]

이 값은 센서의 전체 고장률 제한이 아니다. 과압 미검출을 유발하는 모든 위험 미검출 고장모드의 합에 대한 요구치이다.

실제 시스템이 1oo2 또는 2oo3 구조라면 Voting, 진단범위, Proof Test Coverage, Bypass, 수리 중 운전방식, 채널 독립성과 CCF를 함께 반영해야 한다.

\[ PFD_{\mathrm{assessed}} = f\left( \lambda_{DU}, \lambda_{DD}, T, MDT, \text{Voting}, \beta, \text{Proof Test Coverage} \right) \]

9.11 처음 설정한 정량목표와 비교한다

최종 판정은 SIL 명칭끼리 비교하는 것이 아니다. 처음 위험분석에서 계산한 정확한 수치목표와 실제 계산값을 비교한다.

저수요 기능\(PFD_{\mathrm{assessed}}\le PFD_{\mathrm{target}}\)
고수요·연속 기능\(PFH_{\mathrm{assessed}}\le PFH_{\mathrm{target}}\)

9.12 전체 수치 예제

허용위험에서 센서 \(\lambda_{DU}\) 요구치까지
\[R_{\max}=10^{-5}/\mathrm{yr}\]
\[\prod_i p_i=10^{-2}\]
\[ F_{H,\max} = \frac{10^{-5}}{10^{-2}} = 10^{-3}/\mathrm{yr} \]
\[F_D=0.2/\mathrm{yr}\]
\[ PFD_{\mathrm{target}} = \frac{10^{-3}}{0.2} = 5\times10^{-3} \]

따라서 목표는 SIL 2 구간이지만 정확한 설계목표는 다음과 같다.

\[ PFD_{\mathrm{assessed}} \le 5\times10^{-3} \]

센서에 다음 PFD 예산을 할당한다.

\[PFD_{S,\mathrm{target}}=1.5\times10^{-3}\]
\[T=8760\,\mathrm{h}\]

DD 항이 충분히 작다면,

\[ \lambda_{DU,S} \le \frac{2\times1.5\times10^{-3}}{8760} = 3.42\times10^{-7}/\mathrm{h} \]

마지막으로 실제 센서 고장데이터와 시스템 구조를 이용하여 \(PFD_{\mathrm{assessed}}\)를 계산하고, 최초 목표인 \(5\times10^{-3}\) 이하인지 확인한다.

전체 스토리의 핵심
\[ \boxed{ \begin{aligned} \text{사람에 대한 허용위험} &\rightarrow \text{위험사건 허용빈도} \\ &\rightarrow \text{안전기능의 목표 }PFD/PFH \\ &\rightarrow \text{목표 SIL} \\ &\rightarrow \text{고장모드별 }\lambda_{DD},\lambda_{DU} \\ &\rightarrow \text{시간요소 }MDT,T \\ &\rightarrow \text{실제 시스템 }PFD/PFH \end{aligned} } \]
참고: David J. Smith and Kenneth G. L. Simpson, The Safety Critical Systems Handbook, Chapters 1, 2, and 5.
\documentclass[11pt,a4paper]{article}

% Overleaf compiler: pdfLaTeX
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{kotex}
\usepackage[margin=20mm]{geometry}
\usepackage{setspace}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{array}
\usepackage{enumitem}
\usepackage{xcolor}
\usepackage{amsmath,amssymb,mathtools}
\usepackage[most]{tcolorbox}
\usepackage[hidelinks]{hyperref}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,positioning,shapes.geometric,fit}

\setstretch{1.16}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0.48em}
\setlist[itemize]{leftmargin=1.7em,itemsep=2pt,topsep=3pt}
\setlist[enumerate]{leftmargin=2.0em,itemsep=3pt,topsep=4pt}
\renewcommand{\arraystretch}{1.30}
\sloppy

\definecolor{navy}{RGB}{28,56,92}
\definecolor{bluegray}{RGB}{230,237,245}
\definecolor{lightgray}{RGB}{246,247,249}
\definecolor{darkgray}{RGB}{65,70,78}
\definecolor{softyellow}{RGB}{255,248,223}
\definecolor{softgreen}{RGB}{235,246,239}
\definecolor{accent}{RGB}{164,90,24}

\newtcolorbox{keybox}[1]{
  enhanced,
  breakable,
  colback=bluegray,
  colframe=navy,
  boxrule=0.7pt,
  arc=1.5mm,
  title=\textbf{#1},
  fonttitle=\bfseries
}

\newtcolorbox{warningbox}[1]{
  enhanced,
  breakable,
  colback=softyellow,
  colframe=accent,
  boxrule=0.7pt,
  arc=1.5mm,
  title=\textbf{#1},
  fonttitle=\bfseries
}

\newtcolorbox{examplebox}[1]{
  enhanced,
  breakable,
  colback=softgreen,
  colframe=navy,
  boxrule=0.7pt,
  arc=1.5mm,
  title=\textbf{#1},
  fonttitle=\bfseries
}

\newcommand{\term}[1]{\textbf{#1}}
\newcommand{\eng}[1]{\textit{#1}}
\newcommand{\unit}[1]{\,\mathrm{#1}}
\newcommand{\Rmax}{R_{\max}}
\newcommand{\FHmax}{F_{H,\max}}
\newcommand{\FD}{F_D}
\newcommand{\PFDavg}{PFD_{\mathrm{avg}}}

\title{\textbf{Chapter 1·2·5 통합 정리}\\[0.35em]
\Large 허용위험에서 부품 위험고장률까지}
\author{\eng{The Safety Critical Systems Handbook} 기반 학습 노트}
\date{}

\begin{document}

\maketitle

\begin{keybox}{문서 범위}
이 문서는 Chapter 3의 하드웨어 설계 요구사항을 정리하는 문서가 아니다.
Chapter 1, Chapter 2, Chapter 5를 연결하여 다음 흐름을 설명한다.
\[
\boxed{
\begin{aligned}
\text{허용위험}
&\rightarrow
\text{위험사건 허용빈도}
\rightarrow
\text{목표 }PFD/PFH
\rightarrow
\text{목표 SIL}
\\
&\rightarrow
\text{고장모드}
\rightarrow
\lambda,\mu,MDT,T
\rightarrow
\text{실제 }PFD/PFH
\end{aligned}
}
\]
\end{keybox}

\tableofcontents
\newpage

% =========================================================
\section{먼저 용어·단위·대상을 구분한다}
% =========================================================

기능안전 계산에는 사람의 위험, 위험사건의 빈도, 안전기능의 실패확률,
부품의 고장률이 함께 나타난다. 이 값들은 의미와 단위가 서로 다르다.

\subsection{위험목표와 안전기능 목표}

\begin{center}
\begin{tabularx}{\textwidth}{
>{\raggedright\arraybackslash\bfseries}p{0.25\textwidth}
>{\centering\arraybackslash}p{0.14\textwidth}
X
>{\centering\arraybackslash}p{0.12\textwidth}}
\toprule
용어 & 기호 & 의미 & 단위 \\
\midrule
Maximum Tolerable Risk
& \(\Rmax\)
& 사망·상해 등 정해진 최종 피해에 대해 허용하는 최대 위험
& \(\mathrm{yr}^{-1}\) \\

Maximum Tolerable Failure Rate
& \(\FHmax\)
& 해당 최종 피해로 이어질 수 있는 위험사건의 최대 허용 발생빈도
& \(\mathrm{yr}^{-1}\) \\

사고 전파확률
& \(p_i\)
& 위험사건이 노출·점화·사망 등 최종 피해로 진행될 조건부 확률
& 무차원 \\

Demand Frequency
& \(\FD\)
& 안전기능이 작동해야 하는 원인사건 또는 요구의 발생빈도
& \(\mathrm{yr}^{-1}\) \\

Probability of Failure on Demand
& \(PFD\)
& Demand가 발생했을 때 안전기능이 실패할 확률
& 무차원 \\

Average PFD
& \(\PFDavg\)
& Proof Test 주기 전체에서 평균한 PFD
& 무차원 \\

Probability of dangerous Failure per Hour
& \(PFH\)
& 고수요·연속 안전기능의 시간당 위험고장빈도
& \(\mathrm{h}^{-1}\) \\

Safety Integrity Level
& SIL
& 안전기능에 요구되는 무결성의 이산 등급
& 없음 \\
\bottomrule
\end{tabularx}
\end{center}

\subsection{부품 신뢰도와 시간 관련 용어}

\begin{center}
\begin{tabularx}{\textwidth}{
>{\raggedright\arraybackslash\bfseries}p{0.25\textwidth}
>{\centering\arraybackslash}p{0.14\textwidth}
X
>{\centering\arraybackslash}p{0.12\textwidth}}
\toprule
용어 & 기호 & 의미 & 단위 \\
\midrule
Failure Rate
& \(\lambda\)
& 정상상태에서 고장상태로 전이하는 단위시간당 비율
& \(\mathrm{h}^{-1}\) \\

Repair or Restoration Rate
& \(\mu\)
& 고장상태에서 정상상태로 복구되는 단위시간당 비율
& \(\mathrm{h}^{-1}\) \\

Mean Down Time
& \(MDT\)
& 고장 발생부터 기능 복구까지 고장상태로 존재하는 평균시간
& \(\mathrm{h}\) \\

Mean Repair Time
& \(MRT\)
& 실제 수리작업에 필요한 평균시간
& \(\mathrm{h}\) \\

Proof Test Interval
& \(T\)
& 자동진단으로 찾지 못한 잠복고장을 확인하는 시험 간격
& \(\mathrm{h}\), yr \\

Unavailability
& \(Q\)
& 임의 시점에 장치가 고장상태일 확률
& 무차원 \\

Beta Factor
& \(\beta\)
& 전체 고장 중 공통원인고장으로 취급하는 비율
& 무차원 \\
\bottomrule
\end{tabularx}
\end{center}

\begin{warningbox}{가장 먼저 바로잡아야 할 표현}
\(\FHmax\)와 \(\lambda\)는 모두 문장상 ``failure rate''로 보일 수 있지만 대상이 다르다.
\[
\boxed{\FHmax\neq\lambda}
\]
\(\FHmax\)는 위험사건의 허용빈도이고, \(\lambda\)는 센서·로직솔버·밸브 등의 부품 고장률이다.
\end{warningbox}

% =========================================================
\section{\(\lambda\), 고장확률, 비가용도의 관계}
% =========================================================

\subsection{\(\lambda\)는 확률이 아니다}

\(\lambda\)는 단위시간당 고장률이다.

\[
[\lambda]=\mathrm{h}^{-1}
\]

일정한 고장률을 가정하면 시간 \(t\) 이내에 고장이 발생할 정확한 확률은,

\[
\boxed{
P_f(t)=1-e^{-\lambda t}
}
\]

이다.

\(\lambda t\ll1\)이면,

\[
\boxed{
P_f(t)\approx\lambda t
}
\]

로 근사한다.

\begin{center}
\begin{tabularx}{0.94\textwidth}{>{\bfseries}p{0.22\textwidth}Xp{0.17\textwidth}}
\toprule
표현 & 의미 & 단위 \\
\midrule
\(\lambda\) & 단위시간당 고장률 & \(\mathrm{h}^{-1}\) \\
\(\lambda t\) & 시간 \(t\) 동안의 누적 고장위험도 또는 기대 고장횟수 & 무차원 \\
\(1-e^{-\lambda t}\) & 시간 \(t\) 이내 최소 한 번 고장날 확률 & 무차원 \\
\bottomrule
\end{tabularx}
\end{center}

\subsection{복구 가능한 부품의 2상태 모델}

복구 가능한 부품은 다음 두 상태를 반복한다고 본다.

\[
\boxed{
\text{정상}
\xrightarrow{\lambda}
\text{고장}
\xrightarrow{\mu}
\text{정상}
}
\]

\(\lambda\)는 고장상태로 들어가는 속도이고,
\(\mu\)는 고장상태에서 빠져나오는 속도이다.

정상상태 확률을 \(P_U\), 고장상태 확률을 \(P_D\)라고 하면 정상상태에서,

\[
P_U\lambda=P_D\mu
\]

이고,

\[
P_U+P_D=1
\]

이다. 따라서,

\[
\boxed{
Q=P_D=\frac{\lambda}{\lambda+\mu}
}
\]

이다.

\subsection{MDT를 이용한 표현}

단순 2상태 모델에서 유효 복구율을,

\[
\mu=\frac{1}{MDT}
\]

로 정의하면,

\[
Q
=
\frac{\lambda}{\lambda+\frac{1}{MDT}}
=
\frac{\lambda MDT}{1+\lambda MDT}
\]

이다.

\(\lambda MDT\ll1\)이면,

\[
\boxed{
Q\approx\lambda MDT
}
\]

이다.

\begin{keybox}{식의 물리적 의미}
\[
\boxed{
\text{비가용도}
\approx
\text{고장 발생속도}
\times
\text{고장상태 지속시간}
}
\]
고장이 자주 발생할수록 \(Q\)가 커지고, 고장상태가 오래 지속될수록 \(Q\)가 커진다.
\end{keybox}

\subsection{\(Q\)와 PFD의 관계}

저수요 안전기능의 Demand가 운전기간 중 임의의 시점에 발생한다고 가정한다.
Demand 순간에 장치가 고장상태이면 기능이 실패하므로 단순한 경우,

\[
\boxed{PFD\approx Q}
\]

로 연결할 수 있다.

그러나 이는 저수요 기능과 임의 Demand 가정에서 사용하는 관계이다.
모든 \(Q\)가 항상 PFD와 동일한 것은 아니다.

% =========================================================
\section{고장모드와 \(\lambda\)의 분류}
% =========================================================

\subsection{고장원인·고장모드·고장영향}

\begin{center}
\begin{tabularx}{0.94\textwidth}{>{\bfseries}p{0.22\textwidth}XX}
\toprule
구분 & 질문 & 예 \\
\midrule
Failure Cause & 왜 고장났는가? & 부식, 결빙, 전원 상실, 설계 오류 \\
Failure Mode & 어떻게 고장났는가? & 밸브 열림 고착, 센서 Low 고착 \\
Failure Effect & 그 결과 무엇이 발생하는가? & 과압 미검출, 비상차단 실패 \\
\bottomrule
\end{tabularx}
\end{center}

\[
\boxed{
\text{고장원인}
\rightarrow
\text{고장모드}
\rightarrow
\text{고장영향}
}
\]

예를 들면,

\[
\text{수분 결빙}
\rightarrow
\text{밸브 열림 고착}
\rightarrow
\text{과압 시 차단 실패}
\]

이다.

\subsection{Safe 또는 Dangerous는 안전기능을 기준으로 결정한다}

고장모드 자체가 항상 안전고장 또는 위험고장으로 고정되는 것은 아니다.
다음 사항을 먼저 정의해야 한다.

\begin{enumerate}
  \item 안전기능
  \item 안전상태
  \item Demand
  \item 허용 응답시간
  \item 시스템 경계
\end{enumerate}

예를 들어 안전기능을 다음과 같이 정의한다.

\begin{quote}
압력이 \(10\unit{bar}\)를 초과하면 \(2\unit{s}\) 이내에 차단밸브를 완전히 닫는다.
\end{quote}

\begin{center}
\begin{tabularx}{0.96\textwidth}{>{\bfseries}p{0.27\textwidth}Xp{0.18\textwidth}}
\toprule
고장모드 & 안전기능에 미치는 영향 & 분류 \\
\midrule
열림 상태로 고착 & 과압 시 차단 실패 & 위험고장 \\
요구 없이 닫힘 & 생산중단, 안전상태 이동 & 안전고장 \\
닫힘시간 초과 & 허용시간 내 차단 실패 & 위험고장 \\
내부 누설 & 완전한 격리 실패 & 위험고장 \\
위치 피드백 오류 & 실제 상태 오판 & 영향 분석 필요 \\
\bottomrule
\end{tabularx}
\end{center}

\subsection{전체 고장률의 분해}

부품의 전체 고장률은 안전기능에 미치는 영향과 검출 여부에 따라 나눈다.

\[
\boxed{
\lambda_{\mathrm{total}}
=
\lambda_{SD}
+
\lambda_{SU}
+
\lambda_{DD}
+
\lambda_{DU}
}
\]

안전기능에 영향이 없는 고장을 별도 분류하면,

\[
\lambda_{\mathrm{total}}
=
\lambda_{SD}
+
\lambda_{SU}
+
\lambda_{DD}
+
\lambda_{DU}
+
\lambda_{NE}
\]

로 표현할 수 있다.

\begin{center}
\begin{tabularx}{0.96\textwidth}{>{\bfseries}p{0.18\textwidth}p{0.28\textwidth}X}
\toprule
기호 & 명칭 & 의미 \\
\midrule
\(\lambda_{SD}\) & Safe Detected & 안전고장이 자동으로 검출됨 \\
\(\lambda_{SU}\) & Safe Undetected & 안전고장이 자동으로 검출되지 않음 \\
\(\lambda_{DD}\) & Dangerous Detected & 위험고장이 자동진단으로 검출됨 \\
\(\lambda_{DU}\) & Dangerous Undetected & 위험고장이 Proof Test 또는 Demand 전까지 검출되지 않음 \\
\(\lambda_{NE}\) & No Effect & 해당 안전기능에 영향을 주지 않음 \\
\bottomrule
\end{tabularx}
\end{center}

안전고장률은,

\[
\boxed{
\lambda_S=\lambda_{SD}+\lambda_{SU}
}
\]

위험고장률은,

\[
\boxed{
\lambda_D=\lambda_{DD}+\lambda_{DU}
}
\]

이다.

% =========================================================
\section{검출 위험고장과 미검출 위험고장}
% =========================================================

\subsection{위험 검출 고장: \(\lambda_{DD}\)}

자동진단으로 위험고장이 발견되면 수리와 복구가 시작된다.

\[
\text{정상}
\xrightarrow{\lambda_{DD}}
\text{위험고장 검출}
\xrightarrow{\mu}
\text{정상}
\]

이 경우 단순 2상태 모델의 비가용도는,

\[
\boxed{
Q_{DD}
=
\frac{\lambda_{DD}}{\lambda_{DD}+\mu}
}
\]

이다.

\[
\mu=\frac{1}{MDT_{DD}}
\]

이면,

\[
Q_{DD}
=
\frac{\lambda_{DD}MDT_{DD}}
{1+\lambda_{DD}MDT_{DD}}
\]

이고, 작은 값에서는,

\[
\boxed{
Q_{DD}\approx\lambda_{DD}MDT_{DD}
}
\]

이다.

검출 후 Down Time은 다음처럼 볼 수 있다.

\[
MDT_{DD}\approx MRT+L
\]

여기서 \(L\)은 작업허가, 정비인력 도착, 예비품 확보, 복구시험 등의 지연시간이다.

\subsection{위험 미검출 고장: \(\lambda_{DU}\)}

위험 미검출 고장은 고장이 발생해도 자동진단으로 발견되지 않는다.

\[
\text{고장 발생}
\rightarrow
\text{잠복}
\rightarrow
\text{Proof Test에서 검출}
\rightarrow
\text{수리}
\]

Proof Test 주기를 \(T\)라고 하면 평균 검출지연은,

\[
\boxed{\frac{T}{2}}
\]

이다.

따라서,

\[
\boxed{
MDT_{DU}
\approx
\frac{T}{2}+MRT+L
}
\]

이고,

\[
\boxed{
Q_{DU,\mathrm{avg}}
\approx
\lambda_{DU}
\left(
\frac{T}{2}+MRT+L
\right)
}
\]

이다.

보통 \(T/2\)가 수리시간과 지연시간보다 훨씬 크면,

\[
\boxed{
\PFDavg
\approx
\frac{\lambda_{DU}T}{2}
}
\]

로 근사한다.

\subsection{왜 \(\lambda/(\lambda+\mu)\)를 DU에 그대로 적용하지 않는가}

\[
Q=\frac{\lambda}{\lambda+\mu}
\]

는 고장이 발생한 뒤 일정한 복구율로 복구가 시작되는 단순 2상태 모델이다.

그러나 DU 고장은 Proof Test 전까지 검출되지 않으므로 복구가 즉시 시작되지 않는다.
따라서 DU에서는 Proof Test 대기시간을 포함한 평균 Down Time을 사용해야 한다.

\begin{keybox}{같은 기본원리}
\[
\boxed{
Q\approx
\lambda\times\text{고장상태 지속시간}
}
\]

\begin{itemize}
  \item DD 고장: 지속시간 \(\approx MDT_{DD}\)
  \item DU 고장: 지속시간 \(\approx T/2+MRT+L\)
\end{itemize}
\end{keybox}

\subsection{단순 1oo1 부품의 PFD 근사식}

\[
\boxed{
PFD_i
\approx
\lambda_{DU,i}
\left(
\frac{T_i}{2}+MRT_i+L_i
\right)
+
\lambda_{DD,i}MDT_{DD,i}
}
\]

수리시간이 Proof Test 주기보다 매우 짧으면,

\[
\boxed{
PFD_i
\approx
\frac{\lambda_{DU,i}T_i}{2}
+
\lambda_{DD,i}MDT_{DD,i}
}
\]

이다.

\begin{warningbox}{근사식의 적용 조건}
이 식은 단순한 저수요 1oo1 모델과 작은 고장확률을 전제로 한 근사식이다.
중복구조, 공통원인고장, 불완전 Proof Test, 시험 중 Bypass가 있으면 별도의 신뢰도 모델이 필요하다.
\end{warningbox}

% =========================================================
\section{허용위험에서 목표 SIL까지}
% =========================================================

\subsection{최대 허용위험에서 위험사건 허용빈도로}

위험사건이 최종 피해로 진행되는 조건부 확률을 \(p_i\)라고 하면,

\[
\Rmax
=
\FHmax
\prod_i p_i
\]

이다.

따라서,

\[
\boxed{
\FHmax
=
\frac{\Rmax}{\prod_i p_i}
}
\]

이다.

\(\Rmax\)는 사람의 사망·상해 등 최종 피해에 대한 허용위험이고,
\(\FHmax\)는 그 피해로 이어질 수 있는 위험사건의 허용빈도이다.

\subsection{저수요 기능의 목표 PFD}

보호기능이 없을 때 안전기능에 Demand를 발생시키는 빈도를 \(\FD\)라고 하면,

\[
F_{\mathrm{residual}}
=
\FD\times PFD_{\mathrm{target}}
\]

이다.

잔여 위험사건 빈도는 허용빈도 이하이어야 하므로,

\[
\FD\times PFD_{\mathrm{target}}
\le
\FHmax
\]

이다.

따라서,

\[
\boxed{
PFD_{\mathrm{target}}
\le
\frac{\FHmax}{\FD}
}
\]

이다.

\subsection{고수요·연속 기능의 목표 PFH}

고수요·연속 기능에서 안전기능의 위험고장빈도가 위험사건 허용빈도와 직접 대응하고,
\(\FHmax\)가 연간 단위로 주어졌다면,

\[
\boxed{
PFH_{\mathrm{target}}
=
\frac{\FHmax}{8760}
}
\]

으로 환산할 수 있다.

다른 조건부 확률이나 보호계층이 있으면 이를 먼저 반영해야 한다.

\subsection{SIL 구간}

\begin{center}
\begin{tabularx}{0.90\textwidth}{p{0.15\textwidth}XX}
\toprule
SIL & 저수요 \(\PFDavg\) & 고수요·연속 \(PFH\,[\mathrm{h}^{-1}]\) \\
\midrule
4 & \(10^{-5}\le PFD<10^{-4}\) & \(10^{-9}\le PFH<10^{-8}\) \\
3 & \(10^{-4}\le PFD<10^{-3}\) & \(10^{-8}\le PFH<10^{-7}\) \\
2 & \(10^{-3}\le PFD<10^{-2}\) & \(10^{-7}\le PFH<10^{-6}\) \\
1 & \(10^{-2}\le PFD<10^{-1}\) & \(10^{-6}\le PFH<10^{-5}\) \\
\bottomrule
\end{tabularx}
\end{center}

\begin{warningbox}{SIL은 계산의 출발점이 아니다}
먼저 허용위험과 위험사건 허용빈도를 계산한다.
그다음 목표 \(PFD\) 또는 \(PFH\)를 구하고 마지막에 SIL 구간을 판정한다.
또한 정확한 수치목표를 SIL 등급으로 대체하면 안 된다.
\end{warningbox}

% =========================================================
\section{목표 SIL에서 부품 고장률 요구치까지}
% =========================================================

\subsection{안전기능의 구성}

안전계장기능은 보통 다음 세 부분으로 구성된다.

\[
\text{센서}
\rightarrow
\text{로직솔버}
\rightarrow
\text{최종요소}
\]

단순한 1oo1 직렬구조에서 각 PFD가 충분히 작으면,

\[
PFD_{\mathrm{SIF}}
\approx
PFD_S+PFD_L+PFD_F
\]

이다.

전체 목표를 구성요소에 배분하는 것은 설계상 필요한 \term{신뢰도 예산 배분}이다.
표준이 센서·로직·최종요소의 비율을 일률적으로 정하는 것은 아니다.

\subsection{고장모드별 \(\lambda\)를 얻는다}

과압 차단용 압력센서를 예로 들면 다음과 같다.

\begin{center}
\begin{tabularx}{0.96\textwidth}{>{\bfseries}p{0.29\textwidth}Xp{0.24\textwidth}}
\toprule
고장모드 & 결과 & 분류 예 \\
\midrule
출력 Low 고착 & 실제 과압 미검출 & \(\lambda_{DU}\) \\
출력 High 고착 & 정상상태에서 거짓 Trip & \(\lambda_S\) \\
단선, 자동진단됨 & 경보 또는 안전정지 & 기능에 따라 SD 또는 DD \\
일정값 고착, 미검출 & 과압 미검출 & \(\lambda_{DU}\) \\
응답 지연 & 허용시간 내 Trip 실패 & \(\lambda_D\) \\
출력 노이즈 & 거짓 Trip 또는 미검출 & 영향에 따라 분류 \\
\bottomrule
\end{tabularx}
\end{center}

따라서,

\[
\boxed{
\lambda_{DU,S}
=
\lambda_{\text{Low 고착}}
+
\lambda_{\text{미검출 고정값}}
+
\lambda_{\text{위험 응답지연}}
+\cdots
}
\]

이다.

\subsection{부품의 허용 \(\lambda_{DU}\) 역산}

부품 \(i\)에 할당한 PFD 예산을 \(PFD_{i,\mathrm{target}}\)이라고 하자.

\[
PFD_i
\approx
\frac{\lambda_{DU,i}T_i}{2}
+
\lambda_{DD,i}MDT_{DD,i}
\]

이므로,

\[
\frac{\lambda_{DU,i}T_i}{2}
+
\lambda_{DD,i}MDT_{DD,i}
\le
PFD_{i,\mathrm{target}}
\]

이어야 한다.

이를 \(\lambda_{DU,i}\)에 대해 정리하면,

\[
\boxed{
\lambda_{DU,i}
\le
\frac{
2\left(
PFD_{i,\mathrm{target}}
-
\lambda_{DD,i}MDT_{DD,i}
\right)
}{T_i}
}
\]

이다.

DD 항이 충분히 작으면,

\[
\boxed{
\lambda_{DU,i}
\le
\frac{2PFD_{i,\mathrm{target}}}{T_i}
}
\]

로 단순화할 수 있다.

\begin{examplebox}{센서 위험 미검출 고장률 요구치}
센서 PFD 예산을,

\[
PFD_{S,\mathrm{target}}=1.5\times10^{-3}
\]

Proof Test 주기를,

\[
T=8760\unit{h}
\]

라고 하자. DD 항이 충분히 작다면,

\[
\lambda_{DU,S}
\le
\frac{2\times1.5\times10^{-3}}{8760}
\]

이므로,

\[
\boxed{
\lambda_{DU,S}
\le
3.42\times10^{-7}/\mathrm{h}
}
\]

이다.

이는 센서의 전체 고장률이 아니라,
과압 미검출을 유발하는 모든 위험 미검출 고장모드의 고장률 합에 대한 요구치이다.
\end{examplebox}

% =========================================================
\section{중복구조와 공통원인고장}
% =========================================================

앞의 역산은 단순 1oo1 모델이다.

실제 시스템에서는 다음 항목을 함께 고려해야 한다.

\begin{itemize}
  \item 1oo1, 1oo2, 2oo3 등의 Voting 구조
  \item 진단범위
  \item Proof Test Coverage
  \item 시험 중 Bypass
  \item 수리 중 운전방식
  \item 채널 독립성
  \item 공통원인고장 CCF와 \(\beta\)
\end{itemize}

따라서 최종 시스템 PFD는 일반적으로,

\[
\boxed{
PFD_{\mathrm{assessed}}
=
f\left(
\lambda_{DU},
\lambda_{DD},
T,
MDT,
\text{Voting},
\beta,
\text{Proof Test Coverage}
\right)
}
\]

로 표현된다.

1oo2 구조에서는 독립고장에 의한 동시고장 확률이 감소하지만,
CCF는 두 채널을 동시에 무력화하므로 작은 \(\beta\)도 전체 PFD를 지배할 수 있다.

% =========================================================
\section{전체 스토리}
% =========================================================

앞의 절에서는 각 식과 용어를 개별적으로 설명하였다.
이 절에서는 그 내용을 하나의 안전기능이 설계되는 순서에 맞추어 연결한다.

\begin{center}
\begin{tikzpicture}[
  node distance=5.5mm,
  box/.style={
    rectangle,
    rounded corners=2pt,
    draw=navy,
    thick,
    fill=bluegray,
    text width=9.6cm,
    minimum height=0.85cm,
    align=center
  },
  arrow/.style={-{Latex[length=2.1mm]},thick,draw=navy}
]
\node[box] (a) {1. 위험 시나리오와 최종 피해를 정의한다};
\node[box,below=of a] (b) {2. 최대 허용위험 \(\Rmax\)을 정한다};
\node[box,below=of b] (c) {3. 전파확률을 반영하여 \(\FHmax=\Rmax/\prod p_i\)를 계산한다};
\node[box,below=of c] (d) {4. 저수요이면 \(PFD_{\mathrm{target}}\), 고수요·연속이면 \(PFH_{\mathrm{target}}\)을 계산한다};
\node[box,below=of d] (e) {5. 계산된 정량목표를 SIL 구간에 대응시킨다};
\node[box,below=of e] (f) {6. 안전기능을 센서·로직솔버·최종요소로 모델링한다};
\node[box,below=of f] (g) {7. 고장모드를 Safe/Dangerous, Detected/Undetected로 분류한다};
\node[box,below=of g] (h) {8. \(\lambda_{SD},\lambda_{SU},\lambda_{DD},\lambda_{DU}\)를 얻는다};
\node[box,below=of h] (i) {9. DD는 \(Q=\lambda/(\lambda+\mu)\approx\lambda MDT\), DU는 \(T/2\)를 반영한다};
\node[box,below=of i] (j) {10. Voting·진단·CCF를 포함하여 실제 \(PFD/PFH\)를 계산한다};
\node[box,below=of j] (k) {11. 실제 값이 원래의 정확한 수치목표 이하인지 판정한다};

\draw[arrow] (a)--(b);
\draw[arrow] (b)--(c);
\draw[arrow] (c)--(d);
\draw[arrow] (d)--(e);
\draw[arrow] (e)--(f);
\draw[arrow] (f)--(g);
\draw[arrow] (g)--(h);
\draw[arrow] (h)--(i);
\draw[arrow] (i)--(j);
\draw[arrow] (j)--(k);
\end{tikzpicture}
\end{center}

\subsection{1단계: 위험 시나리오와 최종 피해를 정의한다}

계산은 부품의 고장률에서 시작하지 않는다.
먼저 어떤 위험조건이 어떤 사고를 거쳐 어떤 피해로 이어지는지를 정의한다.

예를 들어 과압 보호기능의 위험 시나리오는 다음과 같다.

\[
\text{압력 상승}
\rightarrow
\text{압력용기 파열}
\rightarrow
\text{위험물질 누출}
\rightarrow
\text{점화}
\rightarrow
\text{사망}
\]

여기서 안전기능은 다음과 같이 정의할 수 있다.

\begin{quote}
압력이 설정값을 초과하면 정해진 시간 이내에 차단밸브를 닫아
압력용기 파열을 방지한다.
\end{quote}

이 단계에서 안전상태, Trip 설정값, 허용 응답시간, 보호대상 및 시스템 경계를 함께 정해야 한다.
이 정의가 없으면 밸브 열림 고착이나 센서 Low 고착이 안전고장인지 위험고장인지 판단할 수 없다.

\subsection{2단계: Maximum Tolerable Risk를 정한다}

다음으로 최종 피해에 대해 허용할 수 있는 최대 위험을 정한다.

\[
\Rmax
=
\text{정해진 최종 피해에 대한 최대 허용위험}
\]

예를 들어,

\[
\Rmax=10^{-5}/\mathrm{yr}
\]

이라면 해당 위험 시나리오로 인한 최종 피해의 연간 위험을
\(10^{-5}\) 이하로 제한한다는 의미이다.

이 값은 센서나 밸브의 고장률이 아니다.
사람 또는 환경에 대한 최종적인 위험목표이다.

\subsection{3단계: 위험사건의 최대 허용빈도를 계산한다}

압력용기가 파열해도 항상 사망으로 이어지는 것은 아니다.
누출, 점화, 사람의 노출, 사망에 이르는 조건부 확률을 고려해야 한다.

\[
\Rmax
=
\FHmax
\prod_i p_i
\]

따라서,

\[
\boxed{
\FHmax
=
\frac{\Rmax}{\prod_i p_i}
}
\]

이다.

예를 들어,

\[
\Rmax=10^{-5}/\mathrm{yr},
\qquad
\prod_i p_i=10^{-2}
\]

이면,

\[
\FHmax
=
\frac{10^{-5}}{10^{-2}}
=
10^{-3}/\mathrm{yr}
\]

이다.

이 값은 압력용기 파열과 같은 위험사건이 허용되는 최대 빈도이다.
부품의 \(\lambda\)와는 대상이 다르다.

\subsection{4단계: 저수요와 고수요·연속 운전모드를 구분한다}

안전기능이 드물게 요구되면 저수요 모드로 평가한다.
저수요 모드에서는 Demand 순간의 실패확률인 \(PFD\)를 사용한다.

안전기능이 자주 요구되거나 항상 작동해야 하면 고수요·연속 모드로 평가한다.
이 경우에는 시간당 위험고장빈도인 \(PFH\)를 사용한다.

\begin{keybox}{운전모드에 따른 정량지표}
\[
\boxed{
\begin{aligned}
\text{저수요 기능} &\rightarrow PFD_{\mathrm{avg}}
\\
\text{고수요·연속 기능} &\rightarrow PFH
\end{aligned}
}
\]
\end{keybox}

저수요 기능에서 Demand 빈도를 \(\FD\)라고 하면,

\[
F_{\mathrm{residual}}
=
\FD\times PFD_{\mathrm{target}}
\]

이고,

\[
F_{\mathrm{residual}}
\le
\FHmax
\]

이어야 한다.

따라서,

\[
\boxed{
PFD_{\mathrm{target}}
\le
\frac{\FHmax}{\FD}
}
\]

이다.

예를 들어 Demand 빈도가,

\[
\FD=0.2/\mathrm{yr}
\]

이면,

\[
PFD_{\mathrm{target}}
=
\frac{10^{-3}}{0.2}
=
5\times10^{-3}
\]

이다.

이 관계는 \(F_D\)가 분석 대상 안전기능의 실제 Demand 빈도이고,
다른 독립보호계층과 사고 전파확률이 앞 단계에 일관되게 반영되었다는 전제를 가진다.

\subsection{5단계: 정량목표를 SIL 구간에 대응시킨다}

앞의 예에서,

\[
PFD_{\mathrm{target}}
=
5\times10^{-3}
\]

이다.

이 값은,

\[
10^{-3}
\le
5\times10^{-3}
<
10^{-2}
\]

이므로 SIL 2 구간에 해당한다.

\[
\boxed{\text{Target SIL}=SIL~2}
\]

그러나 실제 설계목표는 단순히 ``SIL 2''가 아니다.
원래 계산한 정확한 수치목표를 유지해야 한다.

\[
\boxed{
PFD_{\mathrm{assessed}}
\le
5\times10^{-3}
}
\]

SIL 2의 경계값인 \(10^{-2}\)만 만족하면 되는 것으로 바꾸면,
위험분석에서 계산한 요구조건보다 느슨해진다.

\subsection{6단계: 안전기능을 구성요소로 모델링한다}

안전계장기능은 일반적으로 다음 세 부분으로 구성된다.

\[
\text{센서}
\rightarrow
\text{로직솔버}
\rightarrow
\text{최종요소}
\]

단순한 1oo1 직렬구조에서 각 구성요소의 PFD가 충분히 작다면,

\[
PFD_{\mathrm{SIF}}
\approx
PFD_S+PFD_L+PFD_F
\]

로 근사할 수 있다.

전체 목표를 센서, 로직솔버, 최종요소에 배분한다.
예를 들어,

\[
PFD_{\mathrm{SIF,target}}
=
5\times10^{-3}
\]

을 다음처럼 배분할 수 있다.

\begin{center}
\begin{tabular}{lc}
\toprule
구성요소 & 예시 PFD 예산 \\
\midrule
센서 & \(1.5\times10^{-3}\) \\
로직솔버 & \(0.5\times10^{-3}\) \\
최종요소 & \(3.0\times10^{-3}\) \\
\midrule
합계 & \(5.0\times10^{-3}\) \\
\bottomrule
\end{tabular}
\end{center}

이 값은 설명을 위한 예시이다.
표준이 센서·로직솔버·최종요소의 배분비율을 일률적으로 정하는 것은 아니다.
실제 배분은 고장데이터, 시험성, 구조, 유지보수성과 비용을 반영하여 결정한다.

\subsection{7단계: 각 부품의 고장모드를 식별한다}

센서의 전체 고장률을 바로 PFD 계산에 넣지 않는다.
먼저 센서가 어떤 방식으로 고장나는지를 식별한다.

과압용 압력센서의 예는 다음과 같다.

\begin{center}
\begin{tabularx}{0.96\textwidth}{>{\bfseries}p{0.29\textwidth}Xp{0.24\textwidth}}
\toprule
고장모드 & 안전기능에 미치는 영향 & 분류 예 \\
\midrule
출력 Low 고착 & 실제 과압을 검출하지 못함 & 위험 미검출 \\
출력 High 고착 & 정상상태에서 거짓 Trip 발생 & 안전고장 \\
단선, 자동진단됨 & 경보 또는 안전정지 & 기능에 따라 SD 또는 DD \\
일정값 고착, 미검출 & 과압 미검출 & 위험 미검출 \\
응답 지연 & 허용시간 내 Trip 실패 & 위험고장 \\
\bottomrule
\end{tabularx}
\end{center}

고장모드 분류의 기준은 부품 자체가 아니라 정의된 안전기능이다.
냉각수 밸브처럼 열려 있어야 안전한 기능에서는 닫힘 고착이 위험고장이 될 수 있다.

\subsection{8단계: 전체 \(\lambda\)를 고장범주별로 나눈다}

고장모드 분석 결과를 이용하여 전체 고장률을 다음과 같이 나눈다.

\[
\boxed{
\lambda_{\mathrm{total}}
=
\lambda_{SD}
+
\lambda_{SU}
+
\lambda_{DD}
+
\lambda_{DU}
}
\]

여기서,

\[
\lambda_S=\lambda_{SD}+\lambda_{SU}
\]

는 안전고장률이고,

\[
\lambda_D=\lambda_{DD}+\lambda_{DU}
\]

는 위험고장률이다.

센서의 위험 미검출 고장률은 여러 위험 미검출 고장모드의 합이다.

\[
\lambda_{DU,S}
=
\lambda_{\text{Low 고착}}
+
\lambda_{\text{미검출 고정값}}
+
\lambda_{\text{위험 응답지연}}
+\cdots
\]

따라서 SIL 검토에서 중요한 것은 부품의 전체 고장률이 아니라,
정의된 안전기능을 실패시키는 위험고장모드의 고장률이다.

\subsection{9단계: \(\lambda\)를 비가용도와 PFD로 변환한다}

위험고장이 검출되면 고장상태에서 복구가 시작된다.

\[
\text{정상}
\xrightarrow{\lambda_{DD}}
\text{고장}
\xrightarrow{\mu}
\text{정상}
\]

단순한 2상태 모델에서 장기 비가용도는,

\[
\boxed{
Q_{DD}
=
\frac{\lambda_{DD}}
{\lambda_{DD}+\mu}
}
\]

이다.

\[
\mu=\frac{1}{MDT_{DD}}
\]

이면,

\[
Q_{DD}
=
\frac{\lambda_{DD}MDT_{DD}}
{1+\lambda_{DD}MDT_{DD}}
\]

이고 작은 값에서는,

\[
\boxed{
Q_{DD}
\approx
\lambda_{DD}MDT_{DD}
}
\]

이다.

즉, 검출고장은 고장률과 고장상태 지속시간을 곱하여 비가용도로 변환한다.

반면 위험 미검출 고장은 Proof Test까지 발견되지 않는다.
Proof Test 주기가 \(T\)이면 평균 검출지연은 \(T/2\)이다.

\[
MDT_{DU}
\approx
\frac{T}{2}+MRT+L
\]

따라서,

\[
Q_{DU,\mathrm{avg}}
\approx
\lambda_{DU}
\left(
\frac{T}{2}+MRT+L
\right)
\]

이다.

수리시간이 Proof Test 주기에 비해 작으면,

\[
\boxed{
PFD_{DU,\mathrm{avg}}
\approx
\frac{\lambda_{DU}T}{2}
}
\]

이다.

두 계산은 같은 원리를 사용한다.

\[
\boxed{
Q
\approx
\lambda\times\text{고장상태 지속시간}
}
\]

다만 DD는 고장이 즉시 검출되므로 \(MDT_{DD}\)를 사용하고,
DU는 Proof Test 전까지 잠복하므로 \(T/2\)를 포함한다.

\subsection{10단계: 구성요소와 시스템의 실제 PFD를 계산한다}

단순한 저수요 1oo1 구성요소에서는,

\[
\boxed{
PFD_i
\approx
\frac{\lambda_{DU,i}T_i}{2}
+
\lambda_{DD,i}MDT_{DD,i}
}
\]

로 근사할 수 있다.

센서에 할당된 PFD 예산이,

\[
PFD_{S,\mathrm{target}}
=
1.5\times10^{-3}
\]

이고 Proof Test 주기가,

\[
T=8760\unit{h}
\]

라고 하자.

DD 항이 충분히 작다면,

\[
\lambda_{DU,S}
\le
\frac{2PFD_{S,\mathrm{target}}}{T}
\]

이므로,

\[
\lambda_{DU,S}
\le
\frac{2\times1.5\times10^{-3}}{8760}
\]

이다.

따라서,

\[
\boxed{
\lambda_{DU,S}
\le
3.42\times10^{-7}/\mathrm{h}
}
\]

이다.

이 값은 센서의 전체 고장률 제한이 아니다.
과압 미검출을 유발하는 모든 위험 미검출 고장모드의 합에 대한 요구치이다.

실제 시스템이 1oo2 또는 2oo3 구조라면 단순 합산식을 사용할 수 없다.
다음을 함께 반영해야 한다.

\begin{itemize}
  \item Voting 구조
  \item 진단범위
  \item Proof Test Coverage
  \item 시험 중 Bypass
  \item 수리 중 운전방식
  \item 채널 독립성
  \item 공통원인고장 CCF와 \(\beta\)
\end{itemize}

따라서 실제 시스템 PFD는 일반적으로,

\[
PFD_{\mathrm{assessed}}
=
f\left(
\lambda_{DU},
\lambda_{DD},
T,
MDT,
\text{Voting},
\beta,
\text{Proof Test Coverage}
\right)
\]

로 계산한다.

\subsection{11단계: 처음 설정한 정량목표와 비교한다}

최종 판정은 계산된 SIL 명칭끼리 비교하는 것이 아니다.
처음 위험분석에서 구한 정확한 수치목표와 실제 계산값을 비교한다.

저수요 기능에서는,

\[
\boxed{
PFD_{\mathrm{assessed}}
\le
PFD_{\mathrm{target}}
}
\]

고수요·연속 기능에서는,

\[
\boxed{
PFH_{\mathrm{assessed}}
\le
PFH_{\mathrm{target}}
}
\]

이어야 한다.

또한 정량목표를 만족하더라도 아키텍처 제약, 체계적 능력,
검증·확인 및 생명주기 요구를 함께 만족해야 목표 SIL을 주장할 수 있다.

\subsection{전체 수치 예제의 연결}

앞의 과압 차단 예제를 한 번에 연결하면 다음과 같다.

\begin{examplebox}{허용위험에서 센서 \(\lambda_{DU}\) 요구치까지}
\[
\Rmax
=
10^{-5}/\mathrm{yr}
\]

\[
\prod_i p_i
=
10^{-2}
\]

\[
\FHmax
=
\frac{10^{-5}}{10^{-2}}
=
10^{-3}/\mathrm{yr}
\]

\[
\FD
=
0.2/\mathrm{yr}
\]

\[
PFD_{\mathrm{target}}
=
\frac{10^{-3}}{0.2}
=
5\times10^{-3}
\]

따라서 목표는 SIL 2 구간이지만,
정확한 설계목표는 다음과 같다.

\[
PFD_{\mathrm{assessed}}
\le
5\times10^{-3}
\]

센서에 다음 예산을 할당한다.

\[
PFD_{S,\mathrm{target}}
=
1.5\times10^{-3}
\]

Proof Test 주기는,

\[
T=8760\unit{h}
\]

이다.

DD 항이 충분히 작다면,

\[
\lambda_{DU,S}
\le
\frac{2\times1.5\times10^{-3}}{8760}
=
3.42\times10^{-7}/\mathrm{h}
\]

이다.

마지막으로 실제 센서 고장데이터와 시스템 구조를 이용해
\(PFD_{\mathrm{assessed}}\)를 계산하고,
원래 목표인 \(5\times10^{-3}\) 이하인지 확인한다.
\end{examplebox}

\begin{keybox}{전체 스토리의 핵심}
\[
\boxed{
\begin{aligned}
\text{사람에 대한 허용위험}
&\rightarrow
\text{위험사건의 허용빈도}
\\
&\rightarrow
\text{안전기능의 목표 }PFD/PFH
\\
&\rightarrow
\text{목표 SIL}
\\
&\rightarrow
\text{고장모드별 }\lambda_{DD},\lambda_{DU}
\\
&\rightarrow
\text{시간요소 }MDT,T
\\
&\rightarrow
\text{실제 시스템 }PFD/PFH
\end{aligned}
}
\]
\end{keybox}


% =========================================================
\section{최종 판정과 주의사항}
% =========================================================

저수요 기능은,

\[
\boxed{
PFD_{\mathrm{assessed}}
\le
PFD_{\mathrm{target}}
}
\]

을 만족해야 한다.

고수요·연속 기능은,

\[
\boxed{
PFH_{\mathrm{assessed}}
\le
PFH_{\mathrm{target}}
}
\]

을 만족해야 한다.

그러나 정량목표만 만족한다고 SIL이 자동으로 달성되는 것은 아니다.
아키텍처 제약과 체계적 고장 통제도 함께 충족해야 한다.

\begin{keybox}{최종 핵심 문장}
Maximum Tolerable Risk는 최종 피해에 대한 허용위험이다.
Maximum Tolerable Failure Rate는 위험사건의 허용빈도이다.
PFD와 PFH는 안전기능 전체에 대한 정량목표이다.
\(\lambda\)는 부품의 고장률이다.

부품의 전체 \(\lambda\)는 안전·위험 및 검출·미검출 고장모드로 분류한다.
검출 위험고장은
\[
Q=\frac{\lambda}{\lambda+\mu}
=
\frac{\lambda MDT}{1+\lambda MDT}
\approx\lambda MDT
\]
로 비가용도를 계산한다.
미검출 위험고장은 Proof Test까지의 평균 검출지연 \(T/2\)를 반영한다.

이 결과를 Voting 구조와 CCF에 따라 결합하여
원래 계산한 목표 \(PFD\) 또는 \(PFH\)의 충족 여부를 판정한다.
\end{keybox}

\section*{참고문헌}
\addcontentsline{toc}{section}{참고문헌}

David J. Smith and Kenneth G. L. Simpson,
\eng{The Safety Critical Systems Handbook:
A Straightforward Guide to Functional Safety, IEC 61508, IEC 61511 and Related Guidance},
4th ed., Butterworth-Heinemann, 2016,
Chapters 1, 2, and 5.

\end{document}

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.

위로 스크롤