17. Questions and Troubleshooting¶
The questions instructors ask most, with the short answer first and the reason after it. Each entry points back to the page that covers the topic.
Installation and licence¶
The Operator Training menu is not there.
The OTS is part of DWSIM Patreon Classic (Windows), level 3. Check three things: the edition (the Avalonia edition does not have it), the subscription (the Patreon Benefits panel must show level 3 and validated), and the file extenders\DWSIM.Extensions.OperatorTraining.dll in the installation folder. After a fresh activation, restart DWSIM. See the index.
A file with a Transmitter block reports an error on loading. Files saved with early OTS builds could fail on reload because the Transmitter lacked a component description. Update the extender; the file itself is fine and reloads correctly with the current build. See page 3.
Two DWSIMs on the same PC: the station says the subscription is not active. Both processes check the subscription on start. A station launched from Stations... waits up to two minutes for that check before it connects; if the second DWSIM still says no, the licence cache is not shared with the account that launched it (a different Windows user). Log in on that user once. See page 10.
Running a session¶
Overruns keep climbing. Each step took longer than its budget, which is the integration step divided by the speed factor. Lower the speed, raise the integration step in the Dynamics Manager (10 s instead of 5 s halves the cost per simulated second), or switch off the Inspector in the settings, which makes every solve about ten times slower. A few overruns after a Start are normal: the first steps flash every holdup. See page 2.
Failed steps, and the session froze itself. After ten consecutive failed steps the session stops running so a broken plant does not run away. The journal's Solver category has the reason from the engine. The usual causes: a fully closed valve on a flow-specified feed (the feed has nowhere to go; give the header a pressure specification and put a valve after it), a holdup that ran empty or overfilled, or a flash that does not converge at an extreme state. Fix the cause, then press Start to resume from the last good state. See page 2.
Nothing happens after the malfunction fires. A stuck valve at steady state changes nothing: the plant was already balanced. Pair it with a disturbance carried by the schedule's event list (a feed surge, a set point change), which is what the extra schedules of the sample plants are for. For a fault that does move things (fail closed, sensor frozen with a moving process), check the Malfunctions tab: the target must be an object the fault applies to (a Transmitter for sensor faults, a Kv valve for valve faults), and the journal must show ACTIVATED at the scheduled time. See page 13.
The valve does not move when the trainee sets it. Either a controller drives it (the tile says so; take the controller to manual first) or a malfunction or a tripped interlock has locked its stem (the tile shows "stuck" in red, the Interlocks window shows the trip). See page 5 and page 8.
Start does not restore the plant to where the scenario begins. The schedule's initial state is what Start restores. Open the Dynamics Manager: the schedule must point at a stored state, and Use current state as initial must be off. Load the scenario again; the journal says which state it restored. If the stored state predates a change to the plant (a valve resized, a controller retuned), run the plant to a new steady state and store it again. See page 1.
Clicking an object on the flowsheet no longer opens its editor. The flowsheet is in control panel mode, either from the checkbox on the Instructor Station or from the toolbar button on the flowsheet. In that mode a click opens the control widget of the object, and editors stay closed. Switch it off to edit. See page 2.
The trip fires as soon as I press Start. Its condition is already true in the initial state: an HH alarm on a gauge whose limits sit below the normal value, or a Compare condition written the wrong way round. Check the Status tab for the first-out. A fresh Start resets every interlock, so a trip you see at time zero is being earned, not inherited. See page 8.
Reset is refused. The conditions still hold; the refusal in the journal names the first-out. Bring the plant back inside the limit first. The instructor's Force reset releases it regardless, for the cases where the lesson is elsewhere. See page 8.
Scoring¶
The OperatorAction objective never passes although the trainee did the action.
The objective looks for text inside the journal's Operator entries. Do the action once yourself, read the journal line, and copy the identifying part into Action text: PID-012 mode -> MANUAL, LV-001 opening, Acknowledged PIT-001 H. Actions taken by an interlock (a controller put in manual by a trip) are not operator actions and do not count. See page 4.
KeepInRange fails although the value was mostly inside. The required fraction defaults to 90 % of the exercise time, counted from Start, and the exercise runs until End exercise and score. A long quiet run after the recovery helps; a long excursion before it hurts. Lower the fraction to 80 % for lessons and keep 90 % for assessments. See page 4.
The score is different from what the objectives add up to. Penalties are subtracted from each objective's points but never below zero, and a pending objective is decided at End exercise: a Reach that has not happened fails, an Avoid that never fired passes. The report lists each objective with what it earned. See page 4.
Screens and stations¶
The screen shows values but the pipes are grey. A pipe coloured by phase, temperature or flow needs a stream bound to it (its Target). Pipes drawn as signal lines have no target on purpose. A stream with no flow is drawn dimmed, which is also what a closed valve looks like. See page 6.
The trend is empty when the screen opens. Trends record from the moment the session starts, one sample per step, for every pen that any trend widget asks for. A widget added to the screen after the session started has no history until the next Start. See page 9.
The station is refused with a list of missing tags. The station's file must have every object the instructor's file has. Copy the instructor's current file to the station PC; screens and interlocks travel in the frames, so they need not be in the copy. See page 10.
The station shows the plant with a delay. One frame, by design: frames are throttled so serialising the plant costs the instructor at most a fifth of the step time. Commands from the station are applied at the instructor's next step. On a large plant, raise the integration step rather than the speed. See page 10.
The OPC UA client rejects the certificate.
The server's certificate is self-signed, created under %LOCALAPPDATA%\DWSIM\OTS\pki on first start. Tell the client to trust it once. For a secured session the client's own certificate is accepted on first connection and stored under pki\trusted. See page 9.
Building your own plant¶
Levels move far too slowly, or pressures far too fast. Pressure in a gas space moves in seconds, level in a liquid pool in minutes, and the ratio is set by the vessel: a tall, narrow vessel gives a lively level and a calm pressure. Choose the vessel for the exercise you want, and choose the scenario speed per scenario (2x for a pressure exercise, 10x for a level one). See page 13.
The valve flows are wrong in dynamic mode although the steady state was right. The steady-state solve uses the pressure drop or outlet pressure you typed; dynamic mode uses Kv and the pressures the holdups produce. Size every valve for about 50 % open at the design flow (the valve's own sizing gives a Kv; the sample plants were rebalanced iteratively). A valve that sits at 5 % or 95 % has no room to control. See page 1.
Two valves in series disagree about the flow. The stream between them has no holdup to set its pressure. The pressure-flow network solver, on by default, finds the pressure at which the two flows match; the status line shows how many junctions it found and whether it converged. A junction fed directly by a holdup with no valve has no equation and is left as specified: put a valve on every holdup outlet. See page 11.
Can the DWSIM Assistant build a case for me?
Yes, from the plant to the first report. The assistant has a family of dwsim_ots_* tools: it surveys the file (inspect, with a list of what is still missing), adds gauges with alarm limits, controllers and transmitters (instrument), writes interlocks (interlock), scenarios with scheduled faults and objectives (scenario), builds a first operator screen from the flowsheet (screen) and runs a scenario without a trainee, once with nobody acting and once with the actions a good operator would take, to measure the alarm times and check that the exercise can be won (run, status). Ask it in plain words: "turn this separator into a training case with a gas blow-by scenario". It works on the open flowsheet, so save afterwards. The tools answer not_installed when the OTS extender is not loaded.
Where do I report a problem? The DWSIM forums and the GitHub issues of the DWSIM repository. Attach the flowsheet file and the journal exported as CSV: the journal's Solver lines and the scenario's name are usually enough to reproduce a problem.