Touch Screen Problem

Hello,

We are currently working on an HMI solution for an automation cell we have created.
The screen we are using is an Industrial All in One Beckhoff PC and we are encountering a single issue with it as of now.

We have multiple momentary buttons on this HMI for manual control functions and have ran into an issue of needing to double tap in order for the mousePressed event to trigger. I’m not sure if it’s a problem that can be solved through Ignition or would it be better to try to reach a solution with Beckhoff instead?

We’ve noticed that when we tap on the buttons they don’t register that they are pressed until the user has moved their finger as well. Thanks for the help!

The mousePressed Event can behave strangely sometimes.
Have you tried using the actionPerformed event instead?
This should trigger reliably every time the button is pressed.

Take a look at settings in the touch driver. You may find something there helps it behave as expected.

Also note momentary control via HMI with non-deterministic communication has issues. Search this forum for “momentary button” and you’ll find some good discussions of the issue and potential workarounds.

I would also ask yourself, does this even need to be a momentary press?

If you have access to the PLC, why not just make the PLC reset the command, rather than relying on the SCADA to do that?

It unfortunately needs to be a momentary press, it’s used to control a VFD jog signal and the user needs to be able to let go of the button and have the VFD stop the motor. If we could handle it in the PLC we definitely would have.

1 Like

I have the same problem with touch screen devices. I try to setup a simple timer on my button.
define a timer on custom property of button.
bind it to now(1000)
add transform script.
In script increment timer and check if value pass your Limit, if so use system.tag.write to reset your tag.
return the new timer value.
In button click event script reset self.custom.timer each time.
in script check the value timer if it is

You absolutely need PLC code to handle lost releases for any momentary button. If you are using Perspective, I don't think there is a solid solution yet. If you are using Vision, you probably should start here:

For a more detailed (and heated) discussion, this old thread might be helpful:

2 Likes

Hi Nader,

Please share that script or little bit more information about how to develop timer script.
i am also facing the same problem
Thank you

Why use the mousePressed event? Bind to control value.

Your issue and "stuck bits" to me are not the same issue. Yes, you need to have something on the PLC side as a watchdog so you don't have commands stuck on. But, needing to touch the button twice is something else.

Yay, Microsoft. Sarcasm implied.

2 Likes

We are binding to control value. Momentary buttons trigger on mousePressed and turn off on mouseReleased. Our bits don’t get stuck, they straight up don’t trigger on for a long enough period for the manual controls to work.

This is a problem that people have been having with Windows 10 OS for touchscreens so we’re trying to see if maybe Beckhoff has a solution to offer, I’ll post an update if I hear anything back.

Yeah if we were using literally any other OS this wouldn’t be a problem for us to try to solve for ourselves.

You can try some of the registry edits in the thread I posted. No warranty. :wink:

1 Like

I understand, that was my point, some of the comments in this thread are not on point. I have used several win 10 touch panels and they all worked great, with mom. PBs. As stated, try a different driver.

1 Like

Can I ask whose panels you have used?

We’re using Beckhoff’s panels right now, it’s the plant standard for us so it’s the only ones we’ll bring into the plant.

Sorry, that was supposed to have been to @jlandwerlen.

1 Like

advantech and teguar

1 Like

We have come up with a weird solution for the problem that I am not a huge fan of but it works. We installed a single-touch driver from Elo Touch and set the visibility of the cursor to 0 when in the program. It’s a strange solution but it worked for us. Make sure click lock is disabled when using this solution. If anyone can think of a less strange way to get this done, please feel free to post your thoughts.

2 Likes

Yeah, I don’t remember all the details, but we are using Elo Touch drivers and had to tweak some settings to get things working as desired as well (Beckhoff Windows 10 Embedded PC with Hope Industrial panels). Elo Touch driver version mattered.

1 Like