File size: 10,631 Bytes
199bfa3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
# CSH2 Cryogenic Pump — Diagnostic Reasoning Chains
# Step-by-step decision trees encoding how an expert reasons from observation to diagnosis.
# Each step specifies: what tool to call, what to look for, and branching rules.

reasoning_chains:
  - id: RC-001
    name: "Low Pressure Build Diagnostic"
    trigger: "PT130 cannot reach target pressure"
    related_failure_modes: [FM-001, FM-002, FM-003, FM-007]
    steps:
      - step: 1
        action: "query_sensor_data"
        description: "Pull PT130, PT110, TT110, VFD speed for the time window"
        parameters:
          tagindices: [18, 17, 24, 13]
        look_for: "PT130 plateau level, PT110 stability, TT110 trend"
        next:
          if_pt130_below_50pct_target: "step_2"
          if_pt130_slow_build: "step_5"

      - step: 2
        action: "run_simulation"
        description: "Compute expected PT130 at current operating conditions"
        parameters_from: "extracted operating conditions"
        look_for: "Sim vs measured gap magnitude"
        next:
          if_gap_gt_20pct: "step_3"
          if_gap_lt_20pct: "step_6"

      - step: 3
        action: "Run DCV leak test"
        description: "Check PT130 decay rate with pump stopped"
        look_for: "Decay rate in bar/min"
        next:
          if_decay_gt_5_bar_per_min: "conclude_FM002"
          if_decay_lt_5_bar_per_min: "step_4"

      - step: 4
        action: "Compare pressure build at multiple speeds"
        description: "Run pump at 10%, 30%, 50% speed and compare pressure"
        look_for: "Does pressure gap worsen at higher speeds?"
        next:
          if_worse_at_higher_speed: "conclude_FM001"
          if_similar_at_all_speeds: "step_5"

      - step: 5
        action: "Check inlet conditions"
        description: "Verify subcooling margin: T_sat(PT110) - TT110"
        look_for: "Subcooling margin in K"
        next:
          if_margin_lt_2K: "conclude_FM007"
          if_margin_gt_2K: "step_6"

      - step: 6
        action: "search_domain_knowledge"
        description: "Search maintenance history for recent ICV/DCV work"
        parameters:
          category: "maintenance_history"
          component: "ICV"
        look_for: "Recent maintenance events"
        next:
          if_recent_icv_work: "conclude_FM001_installation"
          if_no_recent_work: "conclude_FM003"

    conclusions:
      conclude_FM001:
        diagnosis: "ICV reverse flow — leak worsens with speed"
        confidence: "high"
        failure_mode: FM-001
      conclude_FM001_installation:
        diagnosis: "ICV installation issue — recent maintenance"
        confidence: "high"
        failure_mode: FM-001
      conclude_FM002:
        diagnosis: "DCV leakage — static pressure decay"
        confidence: "high"
        failure_mode: FM-002
      conclude_FM003:
        diagnosis: "HP seal blowby — gradual degradation"
        confidence: "moderate"
        failure_mode: FM-003
      conclude_FM007:
        diagnosis: "Insufficient subcooling — two-phase inlet"
        confidence: "high"
        failure_mode: FM-007

  - id: RC-002
    name: "Pressure Oscillation Diagnostic"
    trigger: "PT130 showing high-frequency oscillations"
    related_failure_modes: [FM-004]
    steps:
      - step: 1
        action: "query_sensor_data"
        description: "Pull PT130 at 1-second resolution for oscillation analysis"
        parameters:
          tagindices: [18, 1]
          resolution: "1sec"
        look_for: "Oscillation frequency and amplitude"

      - step: 2
        action: "Correlate with AOV141 cycling"
        description: "Check if AOV140/141 is cycling in sync with PT130"
        look_for: "Phase correlation between pressure and valve"
        next:
          if_correlated: "conclude_FM004"
          if_not_correlated: "step_3"

      - step: 3
        action: "Check DCV dynamics"
        description: "Analyze stroke timing — DCV may be bouncing"
        look_for: "DCV open/close timing anomalies"
        next:
          default: "conclude_valve_dynamics"

    conclusions:
      conclude_FM004:
        diagnosis: "Safety loop oscillation — AOV141 hunting"
        confidence: "high"
        failure_mode: FM-004
      conclude_valve_dynamics:
        diagnosis: "DCV dynamic behavior anomaly — investigate spring force"
        confidence: "moderate"
        failure_mode: FM-002

  - id: RC-003
    name: "Elevated Discharge Temperature Diagnostic"
    trigger: "TT130 higher than isentropic prediction"
    related_failure_modes: [FM-005, FM-006]
    steps:
      - step: 1
        action: "query_sensor_data"
        description: "Pull TT130, PT130, PT110, TT110"
        parameters:
          tagindices: [27, 18, 17, 24]
        look_for: "TT130 excess above isentropic prediction"

      - step: 2
        action: "run_simulation"
        description: "Compute isentropic discharge temperature"
        look_for: "Measured TT130 vs predicted"
        next:
          if_excess_gt_20K: "step_3"
          if_excess_lt_20K: "conclude_normal_friction"

      - step: 3
        action: "Check pressure ratio"
        description: "PT130/PT110 ratio vs expected"
        look_for: "Is pressure building normally?"
        next:
          if_ratio_low: "conclude_FM005"
          if_ratio_normal: "step_4"

      - step: 4
        action: "Check TT110 trend"
        description: "Is TT110 rising during operation?"
        look_for: "TT110 rate of change"
        next:
          if_tt110_rising: "conclude_FM006"
          if_tt110_stable: "conclude_friction"

    conclusions:
      conclude_FM005:
        diagnosis: "Dry running — pump compressing gas"
        confidence: "high"
        failure_mode: FM-005
      conclude_FM006:
        diagnosis: "ICV thermal backflow — hot fluid heating inlet"
        confidence: "high"
        failure_mode: FM-006
      conclude_normal_friction:
        diagnosis: "Normal — friction heating within expected range"
        confidence: "high"
      conclude_friction:
        diagnosis: "Elevated friction — possible seal break-in or bore damage"
        confidence: "moderate"
        failure_mode: FM-003

  - id: RC-004
    name: "Reduced Flow Rate Diagnostic"
    trigger: "FT140 below expected mass flow rate"
    related_failure_modes: [FM-001, FM-002, FM-007]
    steps:
      - step: 1
        action: "query_sensor_data"
        description: "Pull FT140, PT130, VFD speed"
        parameters:
          tagindices: [7, 18, 13]
        look_for: "Flow rate vs expected at current speed"

      - step: 2
        action: "Check FT140 calibration"
        description: "Verify FT140 density correction factor is applied"
        look_for: "Is fluid H2 or N2? Apply correct density correction"
        next:
          if_calibration_wrong: "conclude_calibration_error"
          if_calibration_correct: "step_3"

      - step: 3
        action: "run_simulation"
        description: "Compute expected flow at current conditions"
        look_for: "Vol efficiency and loss breakdown"
        next:
          if_icv_leak_dominant: "conclude_FM001"
          if_dcv_leak_dominant: "conclude_FM002"
          if_gas_inlet: "conclude_FM007"

    conclusions:
      conclude_FM001:
        diagnosis: "ICV leakage reducing effective displacement"
        confidence: "high"
        failure_mode: FM-001
      conclude_FM002:
        diagnosis: "DCV leakage losing compressed fluid"
        confidence: "high"
        failure_mode: FM-002
      conclude_FM007:
        diagnosis: "Two-phase inlet reducing effective displacement"
        confidence: "high"
        failure_mode: FM-007
      conclude_calibration_error:
        diagnosis: "FT140 reading incorrect — apply density correction"
        confidence: "high"

  - id: RC-005
    name: "Motor Power Anomaly Diagnostic"
    trigger: "Motor power or current anomaly at given speed"
    related_failure_modes: [FM-003]
    steps:
      - step: 1
        action: "query_sensor_data"
        description: "Pull VFD power, current, speed, torque"
        parameters:
          tagindices: [43, 45, 13, 48]
        look_for: "Power/current at each speed point"

      - step: 2
        action: "Compare to baseline power-speed curve"
        description: "Plot power vs speed, compare to reference"
        look_for: "Offset direction"
        next:
          if_power_higher: "step_3"
          if_power_lower: "conclude_reduced_load"

      - step: 3
        action: "search_domain_knowledge"
        description: "Check seal friction baseline expectations"
        parameters:
          category: "operational_context"
        look_for: "Post-maintenance friction expectations"
        next:
          if_recent_seal_work: "conclude_seal_break_in"
          if_no_recent_work: "conclude_FM003"

    conclusions:
      conclude_FM003:
        diagnosis: "HP seal friction increasing — possible bore damage"
        confidence: "moderate"
        failure_mode: FM-003
      conclude_seal_break_in:
        diagnosis: "Normal seal break-in after maintenance (7-9 kgf → 4-5 kgf)"
        confidence: "high"
      conclude_reduced_load:
        diagnosis: "Reduced load — possible liquid starvation or low discharge pressure"
        confidence: "moderate"

  - id: RC-006
    name: "Post-Maintenance Performance Verification"
    trigger: "Performance check after maintenance event"
    related_failure_modes: [FM-001, FM-002, FM-003]
    steps:
      - step: 1
        action: "search_domain_knowledge"
        description: "Look up the maintenance event details"
        parameters:
          category: "maintenance_history"
        look_for: "What was done, what to expect"

      - step: 2
        action: "query_sensor_data"
        description: "Pull first test run after maintenance"
        look_for: "Compare to pre-maintenance baseline"

      - step: 3
        action: "run_diagnostics"
        description: "Run full D1-D8 diagnostic sweep"
        look_for: "Any new or resolved diagnostic flags"

      - step: 4
        action: "run_simulation"
        description: "Compare sim prediction to post-maintenance performance"
        look_for: "Has the residual changed after maintenance?"

    conclusions:
      conclude_improved:
        diagnosis: "Maintenance successfully addressed the issue"
        confidence: "high"
      conclude_no_change:
        diagnosis: "Maintenance did not resolve the underlying issue"
        confidence: "moderate"
      conclude_degraded:
        diagnosis: "Performance worse after maintenance — investigate installation"
        confidence: "high"