Sensors - Ultramarine.com Sensors

Sensors are things which monitor conditions and when certain values are exceeded, alarms are set. Sensors are defined with the command:


     &DESCRIBE SENSOR, SENSOR_NAME, -OPTIONS

and the available options are:



     -ON, :SEL(1), :SEL(2), ....


     -OFF, :SEL(1), :SEL(2), ....


     -DELETE, :SEL(1), :SEL(2), ....

     -SIGNAL, S_TYPE, S_SOURCE, S_DESIRED, S_VAL, S_B, S_N

     -CONVOLUTION, CVL_NAME

     -DERIVATIVE, YES/NO

     -LIMITS, LIM_L, LIM_U

     -ACTION, A_TYPE, RECEIVER

With the first three options, one does not need a SENSOR_NAME. These are used to turn on, turn off, or delete the sensors selected by :SEL(i). The other options are used to define a single sensor, SENSOR_NAME.

-SIGNAL is used to define the "signal" which the SENSOR will monitor. Here, S_TYPE the type of signal and it must be chosen from TIME, POINT, VECTOR, C_LENGTH, C_FORCE, MIN_WT_DOWN, MIN_NWT_DOWN, or BODY_ANG. S_SOURCE is the source of the signal. For signal types of time, no source is necessary. For a type of POINT, source is the name of the point you wish to monitor, for VECTOR it is the name of the two points which define the vector, for types of BODY_ANG, MIN_WT_DOWN BODY_ANG, and MIN_NWT_DOWN it is the name of the body to check, for either C_LENGTH or C_FORCE it is the name of the connector. For BODY_ANG there are three nominal values: a roll, a pitch, and a yaw. These are not the three Euler angles, but for small angles, they are a good approximation. Types of MIN_WT_DOWN BODY_ANG, and MIN_NWT_DOWN produce the minimum of either WT or NWT downflooding points for the body specified.

For types of TIME, MIN_WT_DOWN, and MIN_NWT_DOWN, this is all the data you need. For other types you need to define how to map the data into a single value. This is done with the remainder of the data. S_DESIRED is the desired value of the signal and may be omitted. It is used when sensors are connected to a control system. Here S_VAL is either NORM, or VALUES and S_B and S_N are integers. What the last three things do is to tell MOSES how to take the general data and transform it into a single number to monitor. For example

     NORM 1 3

says to take a vector signal and to take the norm of the first three values as the signal. This may be useful when monitoring C_FORCE (connector force). Likewise,

     VALUE 3

Says to select the third component of the vector signal. This could be useful for monitoring the height of a point. If the -CONVOLUTION option is selected, then the raw signal is processed by the convolution before it is monitored. Also, the -DERIVATIVE option can be used to define a signal which is the velocity, relative velocity, or change in length of a connector instead of the default position and length.

-LIMITS is used to define a lower and upper bound of the signal. If These bounds are exceeded, then an alarm is sounded. During a time domain simulation, action is then taken based on the -ACTION option. Here A_TYPE must be chosen from NONE, STOP_SIMULATION, STOP_WINCH, DEACTIVATE, or CHANGE_PROP. and the action will be applied to RECEIVER. For example suppose one specified

     &DESCRIBE SENSOR M_LINE1 -SIGNAL C_FORCE LINE1 NORM 1 3 \
     -LIMITS 0 50                   \
     -ACTION DEACTIVATE LINE1

Here MOSES would monitor the tension is connector LINE1 and when the tension exceeded 50, then the line would be deactivated.

Sensors can also be used statically with the &INFO string function. Here, there are two types available: ALARM_SENSOR and VALUE_SENSOR the first of these returns .TRUE. or .FALSE. depending on the alarm setting and the second results the value of the signal itself.