Our full technical support staff does not monitor this forum. If you need assistance from a member of our staff, please submit your question from the Ask a Question page.


Log in or register to post/reply in the forum.

RTMC No data alarm within multi state alarm


jarlu Dec 22, 2016 04:32 PM

Hi,

I am interested in having a no data alarm be one of the states within a multi state alarm.  This type of alarm is working for another application in my building, and uses the following expression to successfully produce a no data alarm after 4 minutes:

IIF(SystemTime()-TimeStamp("RAI14_RAI1min:RAI1min.Alarm_State")+("Virtual_Variables:values.RNo"*0)>4*nSecPerMin,-1,"RAI14_RAI1min:RAI1min.Alarm_State")

I attempted to use this expression for my application by substituting in the data source currently used for a basic alarm on the site I am updating, but didn't understand the Virtual_Variables portion and deleted it as it seems to be multiplied by 0.  This resulted in the no data alarm being triggered much sooner than expected for my system (automatically for alarms I attempted to set for 15 minutes, and after ~20 minutes for an alarm I attempted to set for 45 minutes).  I then blindly added the same virtual variables statement above which resulted in the no data alarm not being triggered at all even when the data was old.

Can someone explain what the virtual variables record number is and how it is relevant to this statement? 

Is there a simpler way of including a no data alarm within a multi-state than the conditional if statement?

Thanks!


JDavis Dec 22, 2016 09:14 PM

It might be easier to just compare the timestamp on the most recent record to the Loggernet clock. If the data timestamp is too old, either the datalogger stopped recording data or communication is down. There is a separate communication state value reported by the Loggernet server.


jarlu Jan 3, 2017 11:06 PM

Where is the communication state value reported by the Loggernet server stored within RTMC Pro?  Would using this over the system time eliminate the confusion I currently have surrounding the virtual variables?


Thank you


JDavis Jan 3, 2017 11:54 PM

When you browse the data sources, look in _Statistics_ .


jarlu Jan 5, 2017 11:07 PM

I was able to get this working properly today.  I did end up using the system time over the loggernet time.  The key to getting it to work was the virtual variable line.  I didn't originally have any defined on the system I was working with.  The virtual variable was set to a random number using the RND variable.  I still have no idea why adding the product of a random number and zero would allow this to work. Do you have any insight?


tmecham Jan 6, 2017 08:43 PM

The virtual variable is what triggers the expression to be re-evaluated.  So, the expression is re-evaluated based on the virtual data source output interval even though the actual value is just zeroed out and doesn't affect the actual result of the expression.


jarlu Jan 9, 2017 02:29 PM

Thank you both for your help.  That makes sense.  I should be able to utilize that moving forward.

Log in or register to post/reply in the forum.