Slow Transaction Group Update Rate

I have a trial version of ignition 7.5. The issue that I am running into is that transaction groups take a very long time to execute. The setting “OPC-UA -> Settings -> Minimum Sampling Interval” is set to 100ms. The group’s execution rate is 300ms and the processor is using less than 2% of its capacity. When I change a tag in the PLC I immediately see the changed value in the ignition designer. It takes ignition approximately 40 seconds to transfer the tag’s value to Run-Always Expression that is a copy of the tag. What am I doing wrong? Is there a setting that I need to change?

Could you export the group the attach it here? (Right click, Export>Export to XML) That should help me get a better idea of how the group is set up. Shouldn’t the tag just be an OPC tag, or is there other logic going on?

Also, what do the group statistics at the bottom of the window say? When it finally does run, what does the “last duration” say?

Regards,

I have exported one of the groups so that you can look at it. This phenomena happens to all of the transaction groups in this project.


Thank you.
Transaction Group.xml (26.2 KB)

Hi,

In that export, the group is set to run at 20 seconds. Is that normal, or did you happen to change it in order to try to fix things?

How often does the trigger go high? One problem with the way you have it set up (and a bit of a shortcoming of the trigger system in general) is that group must execute and see the value as a 0 before it will execute again and see the one. In other words, it’s not sufficient for the value to go to 0 and back to 1 inside of the group’s execution rate. This means that in order for this exported group to run correctly, it would take 40 seconds.

You probably need to run the group quite a bit faster, and make sure you have some delay in the PLC (or natural in the process) that allows the group to see the trigger low. This type of “on one, one shot” triggering is always a bit tricky. I generally prefer a different trigger method: instead of a 0 or 1, use a counter, and set the group to trigger “on change” of that number. That way, you can increment it as quickly as you want after you see the handshake come back.

Hope this helps,