Siemens TIA Portal V13 SP1 HMI Buttons

bagged2drag

Member
Join Date
Mar 2011
Location
Milwaukee
Posts
37
I am hoping someone can help me.

I have a siemens system in our facility that was built by a 3rd party. It arrived in less than stellar fashion, and doesn't work as it should. After 10 months of being here and not getting any resolve, I am going after it myself to tackle what should be relatively mundane issues to fix. That said, I have an AB background, and have worked with Automation direct, eaton, and fanuc controllers. I am new to siemens. I have made my way around the ladder pretty well, but I am having some issues with the HMI. Specifically, the vendor programmed in manual controls for our system, but they do not all work. I checked the HMI tags; they appear to match the plc tags as I expect, but when I press the HMI buttons on the screen, in online mode, I cannot see the tags become energized in the ladder. The corresponding manual controls subsequently do not work. The manual controls that do work, I can see the bits energize when I press the HMI buttons.

Is there anything specifically I should be looking at that I am overlooking possibly? Typically, the HMI is an easy part of a project, but I am a bit dumbfounded by my inability to figure out something so seemingly simple.



Thanks,

KK

ST30 Reject Open 2.jpg ST30 Reject Open Rung.jpg ST30 Reject Open.JPG
 
Also look to see that the M bit used is not being overwritten in the logic. For instance, M30.3 could be getting stepped on by the usage of MB30, MW29-MW30, etc.
 
Set the addressing to "absolute" and not symbolic..

(It works with symbolic too, but you have to recompile and download both plc and hmi everytime you add a tag in the m-memory. If you don't random tags work)
 
Also look to see that the M bit used is not being overwritten in the logic. For instance, M30.3 could be getting stepped on by the usage of MB30, MW29-MW30, etc.

How would I search for usage of the word M30 to see if it is overwriting M30.2? The search function in TIA doesn't seem to work as smoothly as Logix. Even searching for %M30.2 nets me no results, which I am obviously using...

I don't recall seeing any 0's being moved to any words in the logic, just about everything is bit-wise.
 
Where do I do this?

Thank you


Ok, I believe I found what you are speaking about. I went to the HMI project --> HMI tags --> Show all tags, then I scrolled to the tags in questions. They are all set to <absolute access>. When I select properties for that tag, Access mode shows the same, and it is grayed out and unable to change. Absolute is what I need anyway. Also, when going into the PLC tags, both "accessible from HMI" and "Visible in HMI" are both checked.
 
How would I search for usage of the word M30 to see if it is overwriting M30.2? The search function in TIA doesn't seem to work as smoothly as Logix. Even searching for %M30.2 nets me no results, which I am obviously using...

I don't recall seeing any 0's being moved to any words in the logic, just about everything is bit-wise.

Long shot then, but look for %MB30 or %MW30, etc.
 
Not sure what the problem is...

But I would try:

- use settag (to 0 or 1) instead of setbit and resetbit
- use the toggle button, just to see if that works

Crossreference is "info"-"crossreference" and click on the tag again...
 
Not sure what the problem is...

But I would try:

- use settag (to 0 or 1) instead of setbit and resetbit
- use the toggle button, just to see if that works

Crossreference is "info"-"crossreference" and click on the tag again...


I tried changing the tags to settag (1 on click, 0 on release). I recompiled the hmi project, then sent the whole project to the HMI. When I go into my HMI tag database and turn on monitor, I still cannot watch the tags switch (I expected to see them maintain (set to true) while holding them).

A couple of the tags do work now; however they seem to be working as 1 shots - I can't see them change state, but I am able to use a couple of them. The logic is very messy. I am thinking of just re-writing the logic altogether, but I am thinking of making new tags and starting from scratch. Do I need to make separate tags for both the HMI and the PLC? I saw the setting to allow the HMI access. Also, is there a way to make sure the buttons maintain while holding them? Or is using the setbit on click, and resetbit on release the correct way to do this?

Thanks for the help.
 
Also, is there a way to make sure the buttons maintain while holding them? Or is using the setbit on click, and resetbit on release the correct way to do this?

I typically see Setbit used on Press, and Resetbit on Release. There is also a SetBitWhilePressed (or something similar) that combines the two, but I think using Set and Reset is the most common.

I see two paths for you:

1) See ensure the PLC program isn't overwriting it. I know it was discussed above, but I'd really take a look at the PLC program to see if/where the HMI bits are overwritten. It really sounds like this is what is happening, if you sometimes see them acting like a oneshot.

2) Is there anything on top of the button, preventing it from being pressed?

3) If that brings up nothing, check the system alarms. Create an alarm view, and set it to look at the alarm buffer as well as every alarm type. This should give you a log of every error or status from the HMI or PLC. Look for system errors regarding PLC status to make sure it is connected properly, and then look for errors that occur when you press the buttons, to see if the system detects an error.
 
Last edited:
Also, is there a way to make sure the buttons maintain while holding them? Or is using the setbit on click, and resetbit on release the correct way to do this?

Thanks for the help.

Well, I usually use the toggle button, or "switch" element. No need for events, it is click->1 click->0 ... Just link it with the tag.. But it is not the same, depends on the function.

You can use the function "set bit while key pressed" it's under properties->events->press

Never saw that one :eek: Thanks.

I typically see Setbit used on Press, and Resetbit on Release. There is also a SetBitWhilePressed (or something similar) that combines the two, but I think using Set and Reset is the most common.

I see two paths for you:

1) See ensure the PLC program isn't overwriting it. I know it was discussed above, but I'd really take a look at the PLC program to see if/where the HMI bits are overwritten. It really sounds like this is what is happening, if you sometimes see them acting like a oneshot.

I agree. It really seems like the most propable reason.
 

Similar Topics

I am currently am in a PLC class and need urgent help on how the ladder logic would be laid out. I understand how to get the traffic lights to...
Replies
19
Views
452
Hello, If the date on the license manager of tia Portal has expired, can I still work with it? or is this just to keep the program up to date...
Replies
7
Views
217
Hi everyone I've created an FC that includes the blocks TCON, TDISCON, TSEND and TRCV. This block has to be as generic as possible across...
Replies
15
Views
1,536
Hello, i can find the CPU when searching for it. But when I go Online i just get the icon for "Not compatible" everywhere. I get no additional...
Replies
4
Views
1,204
Hi, I want to initialise some tags on first scan only. As they are related to wall-clock time, I want to do the initialisation when the PLC first...
Replies
4
Views
1,186
Back
Top Bottom