Data
Measurement series, key figures and test scenarios
The data basis of the bachelor thesis: every measurement series in full, nothing trimmed and nothing smoothed. Each dataset comes with a column description, statistics, an interactive chart, the value table and a CSV download.
The measurement series
Five runs of the heated-tank model, one dataset per scenario. Each row is one calculation step; the columns contain process variables and the four sensor bits B1 to B4.
- Rows
- 3,000
- Time range
- 0.05–150.00 s
- Columns
- 9
- Rows
- 6,000
- Time range
- 0.05–300.00 s
- Columns
- 9
- Rows
- 25,809
- Time range
- 300.05–1,590.45 s
- Columns
- 9
- Rows
- 2,200
- Time range
- 0.05–110.00 s
- Columns
- 9
- Rows
- 1,200
- Time range
- 0.05–60.00 s
- Columns
- 9
Key figures of the platform
Cycle time, signal paths, monitoring and components used in the test rig.
| Metric | Value |
|---|---|
| Target cycle | 20 Hz, fixed step size Δt = 50 ms (measured mean 17.9 Hz on the Windows development computer) |
| Integration | explicit Euler method, x(k+1) = x(k) + f(x(k), u(k))·Δt |
| Signal path controller → model | 12 channels |
| Signal path model → controller | 10 channels |
| Monitoring | heartbeat every 0.5 s, three-stage watchdog (2 s) |
| Controller | Siemens LOGO! 12/24RCE + expansion DM16 24R |
| Level conversion, forward path | PC817 optocoupler, 24 V → 5 V, galvanically isolated |
| Level conversion, return path | relay boards 5 V → 24 V, potential-free contact |
| Signal bridge | Arduino Mega 2560, serial protocol over USB, 115200 baud |
| Gateway | FastAPI, port 8100: bridge serial ↔ HTTP |
| Orchestrator | FastAPI, port 8050: simulation cycle and distribution of results |
| Model interface | compute_step(inputs, dt) → plant, sensors, outputs_logical |
| Control panel | 12 push buttons, 12 indicator lights, in parallel to the controller |
| Tank volume | 0.5 m³ (500 l) |
| Heating power | up to 150 kW, PT1 lag with τ = 12 s |
| Alarm thresholds | sensor B3 from 95 °C, sensor B4 from 2.8 bar; safety valve at 3.5 bar |
Source: Eigene Zusammenstellung aus der Bachelorarbeit (2026) · CSV ↓ · as its own page · Chapter 6 · Chapter 7 · Chapter 8 · Chapter 9
Five test scenarios — expectation versus measurement
All five scenarios ran directly against the model function (unchanged model code, without a connected controller). The raw data of each run is available as its own table.
| Scenario | Expectation | Measurement | Result |
|---|---|---|---|
| 1 Filling | rise 2.55 l/s | 2.551 l/s; B1 at 136.5 s | passed |
| 2 Heating | heating rate 0.0814 K/s; PT1 63.2 % at τ, 95.0 % at 3τ | 63.3 % at τ, 95.1 % at 3τ; mean deviation 0.040 % of maximum power | passed |
| 3 Pressure build-up | B4 when 2.8 bar is exceeded | B4 in the first step thereafter (t = 1470.45 s); 0.0 bar after 120 s of venting | passed |
| 4 Draining | hand calculation 96.1 s | 95.4 s to 1 l, 96.2 s to empty; temperature drift 0 K | passed |
| 5 Edge case: empty tank | no runtime error, no exception | 1200 steps without runtime error; B1 = 0, B2 = 1 | passed |
Source: Versuchsprotokolle der Bachelorarbeit (2026) · CSV ↓ · as its own page · Chapter 10 · Chapter 11
The statement concerns the internal consistency of the model: the expected values come from hand calculation and the analytical solution with the parameters of the model. A comparison with a real tank is missing. Chapter 10 — Five test scenarios
How were the data produced?
The measurement series are recordings of the model function of the heated-tank model. The procedure as described in chapter 10: Chapter 10
- A test script calls the calculation
compute_stepwith Δt = 0.05 s. Nothing was adjusted or improved in the model. - In every step the script records the process variables (level, temperature, pressure, heating power) and the sensor bits B1 to B4. Each step yields one row.
- This is possible without a connected controller because the model is meant to be testable independently of hardware and user interface (NFA-03). The communication path is therefore not the subject of the scenarios. (Chapter 4)
- Each measurement is set against an expectation, mostly from a hand calculation or an analytical solution; the result “passed” or not follows from that (table above).
Limits of what the data show
- Without measurement data from a real tank, validation is limited to internal consistency: what is verified is that the model calculates what the equations demand, not that the equations describe a specific real tank. (Chapter 11)
- Each scenario covers only a single run with fixed boundary conditions; a passed run does not show that every conceivable scenario works. (Chapter 10)
- The published series contain only model quantities and sensor bits; the fidelity of the visualisation cannot be checked with them.
File format and citation
The CSV files use a semicolon as separator and a comma as decimal mark (UTF-8 with BOM so that Excel recognises the umlauts). The values are unchanged; only the comment lines at the start of the file are omitted in the download.
Data source: Own measurement series by Arthur Hardy Kotsch, recorded on the model function compute_step according to the test log of the bachelor thesis (2026); see Chapter 10 — Five test scenarios. Suggested citations: Cite.