Read last good valid value with issuing new query by IOServer on MODNET protocol

Dear All,

I have a devices which communicate on MODNET protocol. I am generating report with lots of tags using default report-device feature. So i do not want to read (do not want to query all tags as all devices are on serial) all tags when i generate report. Means i want data which is available last.

Is there any option for this ?

I tried TagName.V , Tagname.Valid, Tagname.Valid.V etc but in every case IOServer is polling to serial device.

Parents
  • Hi Bhadresh,
    The IODevice cache time is what controls how and when a request is sent to your serial device. It defaults to 300ms. The behaviour is such that the I/O Device cache will service requests for the duration of the cache time, however, if a request is made for data that has been in the cache for more than half the cache time, then it will also refresh the cache by requesting the data from the I/O Device.
    I don't think this will help your use case, as you are executing a report, and just want the last known value to be returned.
    The only option I think you should consider looking into, is enabling background polling, and set the poll period to a large value. I believe when background polling is enabled, it changes the behaviour to return the last known value instantly (which ignores the cache time). Please do a test on this and let me know if it helps.
    The tag extensions won't help in this case either, since they will still touch the device cache, and trigger a poll being sent to the IODevice.
    Kind regards
    Olivier
Reply
  • Hi Bhadresh,
    The IODevice cache time is what controls how and when a request is sent to your serial device. It defaults to 300ms. The behaviour is such that the I/O Device cache will service requests for the duration of the cache time, however, if a request is made for data that has been in the cache for more than half the cache time, then it will also refresh the cache by requesting the data from the I/O Device.
    I don't think this will help your use case, as you are executing a report, and just want the last known value to be returned.
    The only option I think you should consider looking into, is enabling background polling, and set the poll period to a large value. I believe when background polling is enabled, it changes the behaviour to return the last known value instantly (which ignores the cache time). Please do a test on this and let me know if it helps.
    The tag extensions won't help in this case either, since they will still touch the device cache, and trigger a poll being sent to the IODevice.
    Kind regards
    Olivier
Children
No Data