Supported platforms: CODESYS 3.5, CODESYS 3.5 SAFETY
This section describes how to use a single channel sensor without validation. A pressure sensor is used as an example, but it can be applied to other sensor types.
This example uses the following libraries: SafeConversion library SafeSensorCalibration library
SafeDataValidation library
SafeSSeriesHardware library
, or alternatively non-safe library: SensorsAndActuators library
|
S_ADCToVoltageOrCurrent and S_AIOverCurrentProtection POUs are included in the code template generated by MultiTool. |
This architecture applies to any mA sensor measurement.
|
Single channel architecture for a voltage sensor is otherwise the same except for the over current protection is used only with a mA signal. |
Architecture examples for sensor measurement:
SafeSSeriesHardware versions up to 1.3.2.7SafeSSeriesHardware versions up to 1.3.2.7
SafeSSeriesHardware version 1.4.0.0 or laterSafeSSeriesHardware version 1.4.0.0 or later
When the following example is used with non-safety I/O, the I/O variables are generated in Inputs program instead of S_Inputs. |
For examples of the code template code, see also Reviewing I/O. |
In the following example, the AI pin "PressureSensor" in mA mode is defined in MultiTool Creator.
First, the mA value is scaled to pressure value and then the pressure value is monitored.
Safety PRG: |
Init |
IF NOT initDone THEN PressureValueDiagnostic.Init( S_i_HighErrorLimit:=380, // 380 bar S_i_LowErrorLimit:=0, S_i_EnableHighError:=TRUE, S_i_EnableLowError:=FALSE, S_i_DiagnosticDelay:=100, // 100ms S_i_SafeOutputValue:= 0, i_pEventCode:=ADR(S_Inputs.o_EventCode_PressureSensor) );
initDone:=TRUE; END_IF
|
In the following example, an AI pin named PressureSensor in voltage mode is defined in MultiTool Creator.
The read AD-value is first converted to voltage in Inputs PRG.
The voltage value is scaled to pressure value and then the pressure value is sent to CAN.
The following example code uses alternative non-safe wrapper POU.
Code at non-safe PRG: |
|
S_LinearSensor (FUN)
S_ValueDiagnostic (FB)
SensorsAndActuators library
KTYSensor (FB)
LinearSensor (FB)
ResistanceSensor (FB)
Source file topic100382.htm
Last updated 19-Dec-2024