Class MeasurementDeviceBaseClass
java.lang.Object
neqsim.util.NamedBaseClass
neqsim.process.measurementdevice.MeasurementDeviceBaseClass
- All Implemented Interfaces:
Serializable, MeasurementDeviceInterface, NamedInterface
- Direct Known Subclasses:
CompressorMonitor, FireDetector, FlowInducedVibrationAnalyser, GasDetector, LevelTransmitter, OilLevelTransmitter, PushButton, SevereSlugAnalyser, StreamMeasurementDeviceBaseClass, WaterLevelTransmitter
public abstract class MeasurementDeviceBaseClass
extends NamedBaseClass
implements MeasurementDeviceInterface
Base implementation for measurement devices supplying values to controllers
and process equipment. The class offers unit handling as well as configurable
Gaussian noise and discrete sample delay to mimic realistic transmitter
behaviour.
- Version:
- $Id: $Id
- Author:
- ESOL
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate AlarmConfigprivate final AlarmStateprivate booleanprivate doubleprivate Stringprivate intprivate booleanprivate booleanprivate doubleprivate doubleprivate doubleprivate doubleprivate Stringprivate OnlineSignalprivate Randomprivate static final longSerialization version UID.protected StringFields inherited from class NamedBaseClass
name -
Constructor Summary
ConstructorsConstructorDescriptionMeasurementDeviceBaseClass(String name, String unit) Constructor for MeasurementDeviceBaseClass. -
Method Summary
Modifier and TypeMethodDescriptionacknowledgeAlarm(double time) Acknowledges the currently active alarm if one exists.protected doubleapplySignalModifiers(double rawValue) Apply configured noise and delay to a raw measurement value.voiddisplayResult.booleandoConditionAnalysis.evaluateAlarm(double measuredValue, double dt, double time) Evaluates the alarm state using the supplied measurement value.Returns the alarm configuration, ornullif alarms are disabled.Returns the mutable alarm state for the device.doubleGetter for the fieldconditionAnalysisMaxDeviation.Getter for the fieldconditionAnalysisMessage.intGet the configured delay in number of samples.doublegetMaximumValue.doublegetMeasuredPercentValue.doublegetMeasuredValue(String unit) Get Measured value in specified unit.doublegetMinimumValue.doubleGet the configured noise standard deviation.doubleGetter for the fieldonlineMeasurementValue.getOnlineSignal.getUnit()getUnit.booleanisLogging.booleanisOnlineSignal.voidrunConditionAnalysis.voidsetAlarmConfig(AlarmConfig alarmConfig) Associates an alarm configuration with the measurement device.voidsetConditionAnalysis(boolean conditionMonitor) Setter for the fieldconditionAnalysis.voidsetConditionAnalysisMaxDeviation(double conditionAnalysisMaxDeviation) Setter for the fieldconditionAnalysisMaxDeviation.voidsetDelaySteps(int delaySteps) Configure discrete delay in number of samples.voidsetIsOnlineSignal(boolean isOnlineSignal, String plantName, String transmitterame) Setter for the fieldisOnlineSignal.voidsetLogging(boolean logging) setLogging.voidsetMaximumValue(double maximumValue) setMaximumValue.voidsetMinimumValue(double minimumValue) setMinimumValue.voidsetNoiseStdDev(double noiseStdDev) Set Gaussian noise standard deviation for the measurement.voidsetOnlineMeasurementValue(double value, String unit) Setter for the fieldonlineMeasurementValue.voidsetOnlineSignal(OnlineSignal onlineSignal) Setter for the fieldonlineSignal.voidsetQualityCheckMessage(String conditionAnalysisMessage) setQualityCheckMessage.voidsetRandomSeed(long seed) Set the random seed used for noise generation to achieve deterministic measurements when required.voidsetUnit.Methods inherited from class NamedBaseClass
getName, getTagName, setName, setTagNameMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface MeasurementDeviceInterface
equals, getMeasuredValue, getOnlineValue, hashCodeMethods inherited from interface NamedInterface
getName, getTagName, setName, setTagName
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
unit
-
maximumValue
private double maximumValue -
minimumValue
private double minimumValue -
logging
private boolean logging -
onlineSignal
-
isOnlineSignal
private boolean isOnlineSignal -
onlineMeasurementValue
private double onlineMeasurementValue -
onlineMeasurementValueUnit
-
delayBuffer
-
delaySteps
private int delaySteps -
noiseStdDev
private double noiseStdDev -
random
-
conditionAnalysis
private boolean conditionAnalysis -
conditionAnalysisMessage
-
conditionAnalysisMaxDeviation
private double conditionAnalysisMaxDeviation -
alarmConfig
-
alarmState
-
-
Constructor Details
-
MeasurementDeviceBaseClass
-
-
Method Details
-
getOnlineSignal
getOnlineSignal.
- Specified by:
getOnlineSignalin interfaceMeasurementDeviceInterface- Returns:
- a
OnlineSignalobject
-
setOnlineSignal
Setter for the field
onlineSignal.- Parameters:
onlineSignal- the onlineSignal to set
-
isOnlineSignal
public boolean isOnlineSignal()isOnlineSignal.
- Specified by:
isOnlineSignalin interfaceMeasurementDeviceInterface- Returns:
- a boolean
-
setIsOnlineSignal
-
getUnit
getUnit.
- Specified by:
getUnitin interfaceMeasurementDeviceInterface- Returns:
- a
Stringobject
-
setUnit
setUnit.
- Specified by:
setUnitin interfaceMeasurementDeviceInterface- Parameters:
unit- aStringobject
-
getMaximumValue
public double getMaximumValue()getMaximumValue.
- Specified by:
getMaximumValuein interfaceMeasurementDeviceInterface- Returns:
- a double
-
setMaximumValue
public void setMaximumValue(double maximumValue) setMaximumValue.
- Specified by:
setMaximumValuein interfaceMeasurementDeviceInterface- Parameters:
maximumValue- a double
-
getMinimumValue
public double getMinimumValue()getMinimumValue.
- Specified by:
getMinimumValuein interfaceMeasurementDeviceInterface- Returns:
- a double
-
setMinimumValue
public void setMinimumValue(double minimumValue) setMinimumValue.
- Specified by:
setMinimumValuein interfaceMeasurementDeviceInterface- Parameters:
minimumValue- a double
-
getMeasuredPercentValue
public double getMeasuredPercentValue()getMeasuredPercentValue.
- Specified by:
getMeasuredPercentValuein interfaceMeasurementDeviceInterface- Returns:
- a double
-
isLogging
public boolean isLogging()isLogging.
- Specified by:
isLoggingin interfaceMeasurementDeviceInterface- Returns:
- a boolean
-
setLogging
public void setLogging(boolean logging) setLogging.
- Specified by:
setLoggingin interfaceMeasurementDeviceInterface- Parameters:
logging- a boolean
-
getMeasuredValue
Get Measured value in specified unit.
- Specified by:
getMeasuredValuein interfaceMeasurementDeviceInterface- Parameters:
unit- aStringobject- Returns:
- a double
-
setAlarmConfig
Description copied from interface:MeasurementDeviceInterfaceAssociates an alarm configuration with the measurement device.- Specified by:
setAlarmConfigin interfaceMeasurementDeviceInterface- Parameters:
alarmConfig- configuration to apply, ornullto disable alarms
-
getAlarmConfig
Description copied from interface:MeasurementDeviceInterfaceReturns the alarm configuration, ornullif alarms are disabled.- Specified by:
getAlarmConfigin interfaceMeasurementDeviceInterface- Returns:
- alarm configuration
-
getAlarmState
Description copied from interface:MeasurementDeviceInterfaceReturns the mutable alarm state for the device.- Specified by:
getAlarmStatein interfaceMeasurementDeviceInterface- Returns:
- alarm state
-
evaluateAlarm
Description copied from interface:MeasurementDeviceInterfaceEvaluates the alarm state using the supplied measurement value.- Specified by:
evaluateAlarmin interfaceMeasurementDeviceInterface- Parameters:
measuredValue- measured valuedt- simulation time steptime- current simulation time- Returns:
- events generated during the evaluation
-
acknowledgeAlarm
Description copied from interface:MeasurementDeviceInterfaceAcknowledges the currently active alarm if one exists.- Specified by:
acknowledgeAlarmin interfaceMeasurementDeviceInterface- Parameters:
time- simulation time of the acknowledgement- Returns:
- acknowledgement event, or
nullif nothing was acknowledged
-
applySignalModifiers
protected double applySignalModifiers(double rawValue) Apply configured noise and delay to a raw measurement value.- Parameters:
rawValue- unmodified measurement value- Returns:
- value after noise and delay are applied
-
setNoiseStdDev
public void setNoiseStdDev(double noiseStdDev) Set Gaussian noise standard deviation for the measurement.- Parameters:
noiseStdDev- standard deviation of measurement noise
-
getNoiseStdDev
public double getNoiseStdDev()Get the configured noise standard deviation.- Returns:
- noise standard deviation
-
setDelaySteps
public void setDelaySteps(int delaySteps) Configure discrete delay in number of samples.- Parameters:
delaySteps- number of samples delay
-
getDelaySteps
public int getDelaySteps()Get the configured delay in number of samples.- Returns:
- number of delayed samples
-
setRandomSeed
public void setRandomSeed(long seed) Set the random seed used for noise generation to achieve deterministic measurements when required.- Parameters:
seed- random seed
-
displayResult
public void displayResult()displayResult.
- Specified by:
displayResultin interfaceMeasurementDeviceInterface
-
setOnlineMeasurementValue
-
getOnlineMeasurementValue
public double getOnlineMeasurementValue()Getter for the field
onlineMeasurementValue.- Returns:
- a double
-
doConditionAnalysis
public boolean doConditionAnalysis()doConditionAnalysis.
- Returns:
- a boolean
-
setConditionAnalysis
public void setConditionAnalysis(boolean conditionMonitor) Setter for the field
conditionAnalysis.- Parameters:
conditionMonitor- a boolean
-
runConditionAnalysis
public void runConditionAnalysis()runConditionAnalysis.
-
getConditionAnalysisMessage
-
setQualityCheckMessage
-
getConditionAnalysisMaxDeviation
public double getConditionAnalysisMaxDeviation()Getter for the field
conditionAnalysisMaxDeviation.- Returns:
- a double
-
setConditionAnalysisMaxDeviation
public void setConditionAnalysisMaxDeviation(double conditionAnalysisMaxDeviation) Setter for the field
conditionAnalysisMaxDeviation.- Parameters:
conditionAnalysisMaxDeviation- a double
-