The FUPLA editor is used for controller programming in the function blocks language. It is a simple tool with rich functionality, suitable for programming mostly continuous processes. However, it is less suitable for some applications, and every project should be considered and decided if FUPLA is the right language for it, or rather ST (structured text) should be used. Programming in FUPLA and ST can be combined together in a single project.
The proceedings are as follows: the input variables ladder (left-hand side) is populated by variables to read from, or by new global variables that are defined. These variables are brought to inputs of function blocks using wires. From the function blocks outputs, the wires are brought to another blocks inputs, or to output or global variables placed in the right-hand ladder. Apart from function blocks in the standard libraries, user function blocks can be created, or use imported blocks from other (shared) function block libraries.
Create a new program in the „thermostat“ project, see „Variables definition“. The program shall have following properties:
Double click the newly created program in the Solution explorer. This will launch the FUPLA editor. It has a following structure: on the left-hand side, there are fields for inserting the variables (also known as left ladder) which are read, in the middle part there is an area for function blocks placement, and at the right-hand side another field for inserting variables to write (right ladder), in order to create the variable after compiling the report, it must be brought to the input resp. output another variable. In the corners there are grip points which are used to increase or decrease the working area size.
The work starts by placing the variables to read into the left ladder. Right-click a field in the ladder and select a command to insert a global variable into the field.
Right-click into the working area to select „Add library box“ and use filter and/or arrow keys to locate the required function block. Then click OK. Function blocks have the same or similar naming as "old" SoftPLC IDE blocks, there are also new blocks according to the norm in the library. If a required block is not in the list, most probably the library containing it is not referenced in the project.
Click the function block to display block properties in the property grid. Visibility of inputs, parameters and outputs may be toggled, and inputs and parameters fixed (default) values may be entered here.
Link the output ports of variables in the ladder to the input ports of the blocks (by clicking on the output port in the left ladder, and dragging and dropping the wire to the input port of the block). Similarly, the output ports of the blocks shall be connected to output variables in the right ladder.
Now, we have a executable program. Click the „Build solution" button to compile the program. Check for errors in the result window, and after fixing them, deploy the program to the controller.