Automated Safety Assesments in an early development Stage based on standardized DEXPI P&IDs 1 and DWSIM process simulation exports 2.
Jonas Oeing, Tim HoltermannTU Dortmund University, [Laboratory of Equipment Design](https://ad.bci.tu-dortmund.de/cms/en/laboratory/)
The preHAZOP application is available as python application.
-
Install Python (anaconda) from https://www.anaconda.com/products/individual
-
Load the following python libraries
-
Open the folder preHAZOP_Application.
-
Running the script preHAZOP-ad@TUDO.py starts the preHAZOP tool.
- The preHAZOP tool consists of an Graphical User Interface for an easy application.
- Load the DEXPI-P&ID as well as the DWSIM simulation export into via the BROWSE buttons.
- Push the button START. The preHAZOP is running until its finish by showing the message Run was successful! Results in Output.
- The results (HAZOP-table) are stored into the folder ./Output. Additionally you find a file range_check_results.txt,
which shows the results of an inconsistency check in design pressure and temperatures.
Idea of the preHAZOP:
The preHAZOP is able to detect the following HAZOP-scenarios automatically in an graph based P&ID (DEXPI). If necessary, the user can add more scenarios by extending the preHAZOP-database using the predefined drop-down menu.
Index | Description | Guideword | Parameter | Cause | Consequence | Safeguard_1 | Safeguard_2 | Affected Equipment | Propability | Requirements | Equipment_1 | Specification_1.1 | Specification_1.2 | Equipment_2 | Specification_2.1 | Specification_2.2 | Equipment_3 | Specification_3.1 | Specification_3.2 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Pump effects vacuum cause of inert failure, resulting in vessel demolition | Lower | Pressure | Inert system failure | Damage | Pressure Low Shut down | Equipment_1 | F1 | Check min. operation pressure of vessel | Vessel | Inert | Pump | |||||||
2 | Pumping against wrongly closed valve results in damage of pump | Higher | Temperature | Valve wrongly closed | Damage | Bypass | Equipment_1 | F1 | Pump | Valves (operation) | |||||||||
3 | Pumping against closed level control valve results in damage of pump | Higher | Temperature | Valve closed by control | Damage | Bypass | Equipment_2 | F1 | Column | Level Control | Pump | Valves (operation) | Level Control | ||||||
4 | Substance leaks out of pump cause of mechanical seal wear | Other | Flow | Mechanical seal wear | Seal leakage | Maintenance | Equipment_1 | F1 | Pump | ||||||||||
5 | Mechanical failure of the pump | No | Rotation | Mechanical failure | Damage | Maintenance | Redundant | Equipment_1 | F1 | Pump | |||||||||
6 | Mechanical failure of the centrifuge | No | Rotation | Mechanical failure | Damage | Maintenance | Equipment_1 | F1 | Centrifuge | ||||||||||
7 | Stirrer damages vessel | Other | Rotation | Mechanical failure | Damage | Maintenance | Equipment_1 | F2 | Vessel | Agitator | |||||||||
8 | Cooling circiut failure leads to a higher inlet temperature, resulting in a seal leakage of vessel | Higher | Temperature | Cooling circuit fails | Seal Leakage | Inlet Temperature High Alarm | Equipment_1 | F1 | Compare max. operation temperature of vessel with inlet temperature | Cooler | Vessel | ||||||||
9 | Too much heating leads to a higher inlet temperature, resulting in a seal leakage of vessel | Higher | Temperature | Too much heating | Seal Leakage | Inlet Temperature High Alarm | Equipment_1 | F1 | Compare max. reachable temperature with max. operation temperature of vessel | Heater | Vessel | ||||||||
10 | Pump is turned on when there is no medium in vessel, so it runs dry | No | Flow | Wrongly turned on | Damage | Level Low Alarm | Equipment_2 | F1 | Vessel | Pump | |||||||||
11 | Pump is turned on when there is no medium in Column, so it runs dry | No | Flow | Wrongly turned on | Damage | Level Low Alarm | Equipment_2 | F1 | Column | Pump | |||||||||
12 | Level Control failure leads to an empty vessel, so pump runs dry | No | Flow | Control failure | Damage | Level Low Alarm | Equipment_2 | F1 | Vessel | Level Control | Pump | Level Control | |||||||
13 | Level Control failure leads to an empty column, so pump runs dry | No | Flow | Control failure | Damage | Level Low Alarm | Equipment_2 | F1 | Column | Level Control | Pump | Level Control | |||||||
14 | Pump runs dry cause of a wrongly closed valve in front | No | Flow | Wrongly closed valve | Damage | Temperature High Shut down | Equipment_2 | F1 | Valves (operation) | Pump | |||||||||
15 | An external fire effects a vessel rupture | Higher | Pressure | External fire | Rupture | Safety valve | Equipment_1 | F3 | Check content and max. operation pressure | Vessel |
The folder ./preHAZOP_Application/Input containts example file for an distillation process of Ethanol/Water.
- Vizualization of the example DEXPI-P&ID10:
- Vizualisation of the example simulation10:
Footnotes
-
DEXPI Initiative, DEXPI Specification 1.3, https://dexpi.org/, accessed on 07-28-2022
↩ -
DWSIM process simulator, https://dwsim.org/, accessed on 07-28-2022
↩ -
NetworkX developers, online documentation, https://networkx.org/, accessed on 07-27-2022
↩ -
Matplotlib development team, online documentation, https://matplotlib.org/, accessed on 07-28-2022
↩ -
Pandas development team, online documentation, https://pandas.pydata.org/, accessed on 07-28-2022
↩ -
NLTK project, online documentation, https://www.nltk.org/, accessed on 07-28-2022
↩ -
PySimpleGUI, online documentation, https://pysimplegui.readthedocs.io/en/latest/, accessed on 07-28-2022
↩ -
lxml development team, online documentation, https://lxml.de/, accessed on 07-28-2022
↩ -
Charlie Clark, online documentation, https://openpyxl.readthedocs.io/en/stable/, accessed on 07-28-2022
↩ -
A. Behr, D. W. Agar et al., Einfuehrung in die Technische Chemie, Springer Spektrum, 2016
↩ ↩2