# Inside a simulated batch — activity sheet

Version 1.0 · October 2026 · Dan Fisher / danfisher.dev
CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/

Open https://danfisher.dev/examples/batch-explorer (or the same path on your local preview). Older /lab/batch-explorer bookmarks redirect to this example.
This is a fictional browser-only model, not a connection to a PLC or a safety design.
The timing and recipe are teaching choices, not the real lab configuration.

## Exercise 1 — Follow a normal batch
1. Choose Reset example, then Start batch.
2. Pause and use Advance 1 second to inspect individual steps, or select 4× playback.
3. Follow Filling → Heating → Mixing → Holding → Draining → Complete.
4. Identify the level, temperature, output requests, HMI sample age, and event history.

Discuss: Which component owns the sequence? Does a heater request prove a physical heater worked? What remains warm after draining?

## Exercise 2 — A responsive screen with stale data
1. Reset and start a batch. During filling, choose Freeze HMI feed.
2. Let at least four model seconds pass (or pause and advance four times).
3. Compare the process-engine values with the frozen HMI values and their sample age.
4. Restore HMI feed. Look at the gap in the HMI trend.

Discuss: What does a successful page load establish? Why is sample age useful? Can reconnecting recover missed samples automatically?

## Exercise 3 — Clearing a cause is not restarting
1. Reset and start a batch. Apply simulated stop during filling or heating.
2. Observe that output requests are off and the trip is latched. The contents do not vanish.
3. Reset trip is unavailable while the stop is applied. Clear stop cause first.
4. Notice that the trip remains latched until you choose Reset trip.
5. The model returns to Idle. Choose Start batch deliberately to start again.

Discuss: Why separate cause, acknowledgement, and restart? Would turning off every output always be the right action for real equipment?

## Suggested answers
- The controller model owns the sequence. Output requests are commands, not proof of physical actuation. This simplified model treats a nonempty vessel's temperature as retained and does not simulate equipment thermal mass after emptying.
- A page load proves page availability, not process data validity. Sample age identifies a collection gap. Restoring this feed collects the current value; it does not backfill missed observations. The process-engine comparison is a teaching aid, not a second independent sensor.
- Clearing a fault cause does not clear a latched trip; reset does not automatically restart. Real equipment requires an engineered response to hazards, stored energy, and operating conditions. This model is not an emergency-stop implementation.

## Record your conclusions
Use the observation worksheet and evidence register at /resources. Record the narrow observation and what it does not establish. All displayed data and downloaded CSV samples are generated examples; refreshing the page discards the current session.
