← Lab bench
EXP-060Live

Finishing every step and still failing the isolation

5/5steps

completed on a run that still fails, because locking a live line is recorded rather than blocked

An isolation panel with two open valves on a pipe, a pressure gauge reading high, a red lamp and a padlock on a shelf
1/4The line at 6 bar: both valves open, the lamp red, the padlock still on its shelf.
  1. 1 · Live
  2. 2 · Effort
  3. 3 · Pass
  4. 4 · Fail

We built a lock-out/tag-out trainer on a pressurised line, where valves take sustained effort and spring back if released early, and the line only bleeds down once both ends are shut. Unsafe acts are recorded as faults instead of being prevented. A trainee can therefore complete every step of the procedure and still fail it.

What we tried

  • We modelled the panel rather than capturing one, because a procedure needs parts that move and read out, which a capture cannot provide.
  • We made valves need about 1.6 s of sustained effort, so closing one is work rather than a click.
  • We let unsafe actions happen and recorded them, on the view that a trainer which prevents mistakes teaches nothing.
  • We scripted four runs through the scoring to check that faults actually change the outcome.

What we measured

MeasureResultNote
Valve travel, sustained effort1.62 s
Spring-back from half-turned to open0.45 s
Bleed-down, 5.98 bar to the 0.2 bar safe mark4.28 s
Correct run5/5 steps, passes7.6 s end to end in the browser
Locked a live line5/5 steps, fails
Recorded a false verification5/5 steps, fails
Skipped the lock4/5 steps, fails

What went wrong

  • A fully shut valve sprang back open when released, so the line never isolated and never bled down. Shut valves now latch, which is also how a gate valve behaves.
  • The briefing panel was built before the confirmation panel but referred to it, so initialisation aborted part-way and the scene came up with no agent and no started procedure. It failed silently.
  • Our first scoring counted a run as passed if every step was completed, which let a trainee lock a live line and still pass.
  • In the first browser build, signing off a live line was recorded but not allowed, so the demo's "lock a live line" run logged the same fault on every frame, about 230 times, and then locked the line safely once it bled down. Each unsafe act is now recorded once and then allowed to happen.
  • The simulation advanced one step per screen refresh, so on a 120 Hz display the valves and the bleed-down would have run at double speed. It now steps at a fixed 1/60 s whatever the display.

What happens next

  • Add an alarm and a detent click; the panel currently has no audio, which costs more in feel than anything visual would.
  • Confirm the spoken confirmation path with a real microphone; we could only verify the fallback.
  • Try the reach, gaze and speech version in a headset, not only the button page.

Built with

  • XR Blocks SDK 0.21.1 Apache-2.0
  • three.js 0.184.0 MIT