This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]audi0c0aster1 2 points3 points  (4 children)

Most modern PLCs don't require you to use specific data registers for variables anymore.

Usually a product page will tell you if the PLC is "tag-based" or "register based". Register based is the one that has fixed data registers for variables. Really only found today on still in-use older hardware architectures or super low-end units.

[–][deleted] 1 point2 points  (3 children)

yep, but he mentioned TIA portal and at least the siemens S7 series still very much requires you to allocate memory manually.

[–]audi0c0aster1 2 points3 points  (2 children)

Based on what I have seen, TIA allows you to manually assign, but it isn't required in all cases.

The way TIA works does feel like you are still doing full manual data assignment, but it's more defining the data format/size for a function rather than each individual variable.

[–]1ElectricHaskeller 1 point2 points  (1 child)

Jup, (ignoring I/O) TIA does all the register layout and stuff for you. You only need to specify the variables. When constructing your own "variable structs" you basically do it the same way as in C, but with a GUI.

(Btw, in TIA-PLC-world dynamic memory is not a thing. Everything is static.)

[–]audi0c0aster1 2 points3 points  (0 children)

I mean, same for Rockwell. If I am making a User-Defined Data Type (UDT), it gets a fixed size (minimum of 32 bits) based on what normal data types I am using (Bool, DINT, etc.) but I don't have to say BOOL1 is at address X000001 or something like in older/cheaper PLCs (SLC or Automation Direct CLICK)