Baner Ivan

S7 Matrix generator

This Excel macro package can save you a lot of time in making of a batch/step process program within Simatic Step7/TIA. Batch process, cause and effect matrix, or step process always assume matrix representation of actions through different stages. Software engineer has to retype this to code. It is boring, it is slow and it generates a lot of errors. Use this package to solve all these problems and to automatically generate Step7 code! See the video or read more here.

If you ever have a contact with the batch, you should consider standard ISA S88. This gives fundamentals and language for all batch issues. I can remember my first batch, the complete team was totally lost how to express ideas, but when we found ISA S88, it was as if god himself gave us new language and all clicked into its place.

So, let's come back, the general characteristic of the batch process is presence of plenty phases/actions/steps/sequences (the name depending of S88 model you like). The phase is basic action in which several output elements are active until step end condition is reached. The matrix with all phases should make technologist, but the reality is that they usually explain in some kind of text their wishes and after that software engineer loses his time to make monster matrix. One way or another, you need it.
Retyping those data to code is even worst, but this tool will do all the things to you.

 Convert large amount of data from Excel to Step7 code

In the picture above you can see what this package can do. Macros will generate from the matrix:
DB with all sequence names, FC with all actions/effects and optionally DB with all "mirrors" of digital outputs.

When you make format of matrix, you can manually type names of digital outputs to header row, or you can copy data from Step7 Symbol table, paste to sheet "DO list" and use macro to automatically write data to matrix header.
You can decide whether you want to create FC with "realistic outputs" (Qx.y) or with some "mirror" variables (macro will first generate DB with variable names equal to your digital outputs).