25. Function Block Programming

• This is a procedural programming language that resembles block diagrams. To date this has been primarily popularized by programs such as Labview.

• This graphical language is part of the IEC 1131-3 standard.

• An example is given below.


• There are different data types for the connection lines.

• Inputs and outputs can be negated by adding a inverting input or output.


• The functions in the diagrams are based on the other functions available. The inputs to a function enter on the left of the block, and the outputs of the function emerge from the right.


• Some functions can have a variable number of arguments. Here there is a third value input to the add block. This is known as overloading.


• The ADD function in the example must always have the same inputs, other functions may have variable numbers of arguments.