Insert row in DB in Step7

J

Thread Starter

jon

In one project when I insert an varieble in a DB, all FCs are updated (after saving) with the new absolute address for all following variables in the DB.

This is the desired operation. Ideally I would also like to recompile a DB-source (with additional variables) and keep the "old" references as well as having new ones.

The problem the post is really about is that in all other projects I have, the absolute addresses are not updated in FCs when the DB has new lines in the middle.
 
L

Luca Gallina

Despite their symbolic name shown in the STL/LAD/FBD editor, within a Step7 project the variables (input, outputs, flags, DB vars) are always stored as absolute addresses. This means that you cannot insert a DB row without messing up the reference to all subsequent variables of the DB.

The correct procedure is the following:
1. Generate the source (text) file for the entire program (all blocks), selecting the Symbolic Addresses option
2. Open the source file and insert the DB row you need
3. Compile the source file, all blocks will be regenerated with the correct references

If the new addresses need to be updated also in HMI devices developed with Protool or WinCC Flexible, you can easily have them updated automatically by using the "Reconnect" function in Protool/WinCC (use the "integrated with S7 project" mode).

The above procedure is also useful for a very quick and complete rewiring of the program, e.g. in case you need to assign new addresses to the
project's inputs and outputs: once you have the generated the source file, you can modify the absolute address of the operands in the symbol table without having to use the rewiring function provided in Simatic Manager.

regards
Luca Gallina
 
D

Dobrowolski, Jacek

Hi, I'm not sure if I understand corectly. But if you have problems in project in which you use symbolic addresses after changing their absolute address then it means that you have to change the project settings. Open the project in SIMATIC Manager, right-click the Block folder, go to Edit>Object properities..., bookmark "Address priority:", select "For all accesses".

Regards,
Jacek Dobrowolski
 
Top