I have to create a overview documentation for a simple PLC (programmable logic controller aka industrial automation controller) program (happens to be written in Step 7 but not really important).
The structure of the program is simple. The functions i.e. "activities" are run one after another. Each activity reads a specific portion of the local memory. I want to represent those memory-portions as "input" signals because other Functions may/will write to the memory and it is not "just" memory but some sort of data transfer. The result is then again written into the memory for following functions. It is basically the Output signal of the function.
I tried to create a simple UML activity diagram. To represent this in the program i used the "Accept Event Action" and "Send Signal Action". Figure is shown below. I wanted to use the activity diagram because i then could also model the inner functions with the same type of diagram.
But it seems a bit confusing with the arrows downwards (from activity to activity) and left to right (data process output) And how should multiple readings be handled ? ( e.g. Function 1 and 2 read from the same source)
Do you have a recommended scheme for modeling this behaviour or ideas to "clean" the diagram?