Delta ISPSoft — 7.2.7 Memory Configuration of Function Block

ISPSoft User Manual Users are allowed to declare function block instances in the local symbol table in a function block in a project for an AH/AS series CPU module. If an inferior function block instance which is called by a function block is not called by another POU, the inferior block instance can be declared in the local symbol table in the function block. Besides, in a project for an AH/AS series CPU module, the memory block the system assigns to a function block instance depends on the position where the function block instance is declared.

7.2.7 Memory Configuration of Function Block When internal function blocks has local symbols declared to auto-configure address, the system will configure an independent memory section for these local symbols during the process of compiling and creating the instance; if the internal function block declare that the local symbol has assigned device address by themselves, then the symbol variable is referred as an absolute address and a memory section is not configured to the variable during compiling. Even in different function block instances, as long as the process is related to this variable, the system will view as user-defined device content to operate.

When the system is configuring resources, DVP series, DVPxxMC series, AS5xx series, AH5X0 series, AH5X1 series, AH560 redundant system, AHxxEMC and AS series all have different mechanisms. Please refer to the following explanations.  DVP series PLC When a DVP series PLC assigns memory blocks, every function block instance is automatically assigned a P device. If the POU name of a function block begins with “P0_” or “P1_”, P0 or P1 will be assigned to the function block instance after the program is compiled. If more than one instance of the function block is declared, an error occurs when the program is compiled. The error occurs because the same P device is used repeatedly.

The system assigns corresponding devices to the local symbols declared in a function block according to the data types of the local symbols. For example, the system assigns a data register to a local symbol whose data type is WORD, and an auxiliary relay to a local symbol whose data type is BOOL. As a result, the size of function block instance in a DVP series PLC depends on the local symbols declared, and different instances occupy different devices. Two function block instances produced in a DVP series PLC are shown in the figure below.

After the windows for the two function block instances are opened, users can see in the local symbol tables that the system assigns different devices to the two instances. 7-24