cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Derived Tag Is Not Calculating

psp316r
16-Pearl

Derived Tag Is Not Calculating

In Derived Tag, Expression was given, and an Tag is also mentioned in Trigger, but the issue is Derived Tag is running it's Expression only on KepServerEx Reinitialization.

Even though the Tag mentioned in Trigger data is get's changed every second but the Derived Tag Expression is not getting calculated.

End Goal: Run Derived Tags Only on Data Change of Another Tag. (Isn't the Trigger Option is for same usage ?)

@slangley @CarlesColl @c_lowy @paic @VladimirN @AnnaAn

Thanks,
Shashi.

1 ACCEPTED SOLUTION

Accepted Solutions

Hi there,

This use case can't be performed using Derived tags as per @sam_kepware, therefore going with another Option in Derived Tags i.e, Running Expression for every one minute.

Thanks,
Shashi. 

View solution in original post

4 REPLIES 4
sam_kepware
6-Contributor
(To:psp316r)

Hi Shashi, 

 

Derived Tags only calculate via trigger when the trigger transitions from zero to non-zero. This means that the trigger must then move back to zero and then again to a non-zero value before the Derived Tag will calculate again. The Derived Tag is not triggered on simple data changes of any value; the only condition that triggers the calculation of a Derived Tag is a zero to non-zero transition.

 

Do you think that your trigger is perhaps NOT resetting back to zero before transitioning to a non-zero value?

 

Thanks, 
Sam

Hi @sam_kepware ,

May be this is the issue, we are facing. Is there any way to change to Zero to non-zero or vice-versa, because need to trigger the Derived Tag for every data change in our use case, can we do this ?

Thanks,
Shashi.

sam_kepware
6-Contributor
(To:psp316r)

Hi Shashi, 

 

Unfortunately no, it is not possible for a Derived Tag to operate on every data change event. The Derived Tag's trigger MUST be a tag that changes from zero to non-zero whenever the trigger event is to occur. 

 

An alternative way to handle this logic in Kepware is to use different Kepware tools - our Universal Device Driver and our IoT Gateway Plugin. Our Universal Device Driver is a scriptable environment where you can process this logical operation, and our IoT Gateway would "feed" or send the raw unprocessed data to the Universal Device Driver. At the end of your work, the Universal Device Driver would present you with a tag with a value that right now the Advanced Tag is using; the logic written by you using Javascript rather than by using our graphical Advanced Tags engine.

 

This alternative may require you to purchase additional licensing (Universal Device Driver and IoT Gateway) but if you're interested in exploring this option, please feel free to send an email to presales.support@kepware.com.

 

Thanks, 

Sam

 

Hi there,

This use case can't be performed using Derived tags as per @sam_kepware, therefore going with another Option in Derived Tags i.e, Running Expression for every one minute.

Thanks,
Shashi. 

Announcements