Class IntegratedSafetySystemWithLogicExample
java.lang.Object
neqsim.process.util.example.IntegratedSafetySystemWithLogicExample
Advanced example demonstrating integrated safety systems using the NeqSim process logic framework
and scenario simulation capabilities.
This example showcases:
- Process Logic Framework with ESD Logic
- Automated Safety Instrumented Functions (SIF) with configurable voting
- Multi-scenario simulation with ProcessSafetyScenario
- Transient simulations with process logic execution
- Custom logic actions and conditions
Safety layers implemented:
- SIL-3: HIPPS with 2oo2 voting logic
- SIL-2: ESD with automatic and manual triggers
- SIL-1: Process alarms and operator intervention
- PSV: Final mechanical protection
- Version:
- 1.0
- Author:
- ESOL
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static classCustom action to close a throttling valve.(package private) static classCustom HIPPS logic implementing SIL-3 with 2oo2 voting.(package private) static classScenario runner with process logic integration.(package private) static classCustom action to set separator mode. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static BlowdownValveprivate static PushButtonprivate static ThrottlingValveprivate static ESDLogicprivate static final doubleprivate static TemperatureTransmitterprivate static TemperatureTransmitterprivate static TemperatureTransmitterprivate static Flareprivate static Splitterprivate static final doubleprivate static final doubleprivate static Streamprivate static final doubleprivate static IntegratedSafetySystemWithLogicExample.HIPPSLogicprivate static PressureTransmitterprivate static PressureTransmitterprivate static ThrottlingValveprivate static final doubleprivate static final doubleprivate static ProcessSystemprivate static SafetyValveprivate static final doubleprivate static Separatorprivate static PressureTransmitterprivate static TemperatureTransmitter -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidMain method demonstrating the integrated safety system with process logic.private static voidPerform comprehensive safety analysis using scenario framework.private static voidReset system for next scenario.private static voidRun all safety scenarios.private static voidSetup instrumentation and measurement devices.private static voidSetup process logic sequences.private static voidSetup the process system with all equipment.
-
Field Details
-
NORMAL_OPERATING_PRESSURE
private static final double NORMAL_OPERATING_PRESSURE- See Also:
-
HIGH_PRESSURE_ALARM
private static final double HIGH_PRESSURE_ALARM- See Also:
-
HIGH_HIGH_PRESSURE_ALARM
private static final double HIGH_HIGH_PRESSURE_ALARM- See Also:
-
HIPPS_ACTIVATION_PRESSURE
private static final double HIPPS_ACTIVATION_PRESSURE- See Also:
-
PSV_SET_PRESSURE
private static final double PSV_SET_PRESSURE- See Also:
-
FIRE_DETECTION_TEMPERATURE
private static final double FIRE_DETECTION_TEMPERATURE- See Also:
-
NORMAL_FLOW_RATE
private static final double NORMAL_FLOW_RATE- See Also:
-
processSystem
-
highPressureFeed
-
hippsValve
-
esdInletValve
-
separator
-
gasSplitter
-
bdValve
-
psv
-
flare
-
hippsPT1
-
hippsPT2
-
separatorPT
-
separatorTT
-
fireTT1
-
fireTT2
-
fireTT3
-
esdButton
-
esdLogic
-
hippsLogic
-
-
Constructor Details
-
IntegratedSafetySystemWithLogicExample
public IntegratedSafetySystemWithLogicExample()
-
-
Method Details
-
main
Main method demonstrating the integrated safety system with process logic. -
setupProcessSystem
private static void setupProcessSystem()Setup the process system with all equipment. -
setupInstrumentation
private static void setupInstrumentation()Setup instrumentation and measurement devices. -
setupProcessLogic
private static void setupProcessLogic()Setup process logic sequences. -
runAllScenarios
Run all safety scenarios. -
performSafetyAnalysis
private static void performSafetyAnalysis()Perform comprehensive safety analysis using scenario framework. -
resetSystem
private static void resetSystem()Reset system for next scenario.
-