[TIA Portal] Show Data as a table?

sargan26

Member
Join Date
Nov 2015
Location
Wels
Posts
5
Hello, I have an array [1..40] where the last 40 steps of a sequencer are saved. I need a table:

Step number | Step name | Runtime step | Runtime sequence|

gFt2VXU.png


Is there any table element where you can, for example. the fields filled with a for loop via script? Would be good if you can save the table in a faceplate. I want to transfer my array variable to the faceplate, otherwise I don't have to link anything (I need the table about 20 times in the project).

A couple of ways I heard:

IO fields: very cumbersome, link each field individually with the variable, cumbersome when making changes
Recipe view: does not work with multiple columns
ActiveX / .net element: none could be dragged into the project
Archives: not tried yet but looks awkward, here I have to create each variable individually again?



CPU: 1516.3 PN / DP
HMI: KTP700F Mobile
TIA Portal V15.1
WinCC Advanced V15.1
 
Hello Sargan,

Just to clarify so I understand correct.

You won't do display the 4 elements your struct contains in your array.
In total, you want to display elements [1] to [20] in the array?
 
v6Sr8l9.png


Hello, I hope this picture helps. I need 40 rows with:
Step number | Step name | Runtime step | Runtime sequence|
 
If the location is the same on each page you could use a template with a set of IO fields that display data.

Have 5 or 10 rows of IO fields and they just 'page' through your array displaying the page selected.

With the template you create it once and just select to use that template on the page.

Might be simpler than faceplates, I have used them since flexible 2008...
 
Hypothetically, you could make a faceplate where you pass the whole sequence in as a structure and pass in an index of where to start display. As you said, you could have a script in the faceplate that parses out the large structure and writes appropriate values to fields. You might need to create a number of internal tags inside the faceplate, You'd still need to create each IO field manually in the faceplate, but then you can just drop the faceplate onto the as many screens as you want, with the only work on each screen being linking the two tags.


Making the faceplate structure isn't as straighforward as it seems like it should be though. You need to manually create it in the project library, you can't just re-use the PLC type. My understanding is that the HMI structure is flat, which means you need step number1, stepname1, RTstep1, RTsequence1, stepnumber2, stepname2, etc, all as separate tags.
 
As it is panel, you can't use picture window with tag prefix.


Still it is possible to make faceplate with UDT struct.
Then it would only be making 40 UDT stuctures with different start address to DB and one 4 row line faceplate which is copied 40 times. Every faceplate "table line" have linking to different UDT struct.

Then copy these to different page and change all 40 UDT linkings. (Well, you can also make one big table, and link it to whole DB-block, and then you only need change starting address of DB)
But if only one big faceplate, little modifications to only one page would be difficult :unsure:


https://support.industry.siemens.co...me-advanced-and-comfort-panels?dti=0&lc=en-WW
 
Last edited:
The way I would solve it:

1) Make one faceplate that has 10 rows with your values.
2) Connect the Faceplate to an HMI UDT variable. Make an equivalent UDT in your PLC program as a 'placeholder' variable. Important is that in the PLC your DB which has the placeholder variable cant be optimized. We later want to do a pointer from the HMI to an offset value in the DB.
3) Put in a small arrow up and down button in the HMI. While toggling this button you will shift 10 rows of code into the placeholder.

This can, of course, be done with a script in the HMI as well. But I would put the small code in the PLC instead.

It is quite hard to explain this with words.
I helped a student with a similar problem some time ago and recorded it for him. Maybe you can get some ideas from my video:

https://www.youtube.com/watch?v=dSD7cd-9luc

Please note in the application everything is done very rough both the coding and editing of HMI. I just wanted to point in a direction on how to use a single faceplate with different data.


Oh yeah. In this case, I said. You will in total be using the following:

1) 1 Faceplate in total
1) 1 User-defined data type.
2) Some PLC logic'
 

Similar Topics

Hi Guys, what could cause HMI Button names in runtime to be showing 'text' instead of their real names. (TIA Portal - Comfort Panel)? I will...
Replies
4
Views
1,665
Hi All, Someone at work has put a PLC system on my desk, that's just been taken off an idle production line. He said "It's an S7 PLC. We don't...
Replies
10
Views
252
Hi guys , I'm new with Allen Bradley, but I have experience with Tia portal (s7 1200 ,s7 1500) I want to convert my project from Tia portal to...
Replies
2
Views
208
Hi, I have had problem with upgrading some projects from v16 to v18. I tried it on 3 diffrent computers. I want to post this so that anyone that...
Replies
3
Views
173
Hello gentlemen, Im working on a small project on TIA Portal, about establishing a Modbus TCP connection between my ET200SP plc and a socomec...
Replies
12
Views
310
Back
Top Bottom