Arithmetic instructions
79
Part II IEC Instructions
LN
Natural logarithm
To add an enable input and enable output to the instruction, select [With EN/ENO] from the
"Instructions" pane (LD, FBD or IL editor). To reuse an instruction select "Recently used" from the
context menu or press <Ctrl>+<Shift>+<v> in the programming window.
The number of steps may vary depending on the PLC and parameters used, see
also Table of Code Intensive Instructions in the online help.
PLC types
Availability of LN (see page 1328)
Data type I/O Function
REAL input input value
REAL output as input natural logarithm of input value
No. IEC address Set If
R9007 %MX0.900.7 permanently
R9008 %MX0.900.8 for an instant
input variable does not have the data
type REAL or input variable is not > 0.0
R900B %MX0.900.11 permanently output variable is zero
R9009 %MX0.900.9 for an instant processing result overflows the output
variable
This example uses variables. You can also use a constant for the input variable.
Description
LN calculates the logarithm of the input variable (value > 0.0) to the base e (Euler’s number =
2.7182818) and writes the result into the output variable. This function is the reversion of the EXP
(see page 80) function.
Data types
Error flags
Example
In this example, the same POU header is used for all programming languages. For an example
using IL (instruction list), please refer to the online help.
POU header
All input and output variables used for programming this function have been declared in the POU
header.
Body
The logarithm of input_value is calculated to the base e and written into output_value.
LD
ST
When programming with structured text, enter the following:
output_value:=LN(input_value);