Showing results 1 to 5 of 5

Thread: Storing every value not on change

  1. #1

    Default Storing every value not on change

    Hello,
    I am using zenon opc client driver with external opc server. The trend is every minute and the sessions communicate on every 5 minutes with the opc server. In zenon I want to store every value received from the opc server not only the changed values with their external timestamps. I suppose in historian I can turn on event-triggered recording but how to create trigger variable which to trigger the reading of every value received and storing it. The other way maybe to turn on change by timestamp from the driver variable.
    Last edited by vpartinov : 17th August 2017 at 12:56

  2. #2

    Default Re: Storing every value not on change

    Hello vpartinov,

    Can you confirm whether you are using the OPC2Cli32 driver (Classic OPC DA) or the OPCUA32 driver (OPC UA)?

    Both these drivers use spontaneous communication. Only when there are changes, the driver sends an update to the runtime. When you use "on change" recording in the historian, you should be able to capture all changes. When viewing in the trend, you can use the option "extend curve" to draw a virtual curve up to the current point in time for the last received value.

    Best regards,
    Mark

  3. #3

    Default Re: Storing every value not on change

    Hi Mark,
    I am using OPC2Cli32 driver (Classic OPC DA).

    "Only when there are changes, the driver sends an update to the runtime."
    Changes of the value or timestamp or both? Because I need all the values, not only when the value changes. Values comes with their external timestamps so maybe change of the timestamp is what I need.

    "When you use "on change" recording in the historian, you should be able to capture all changes."
    Yes, but not all values, only the changes. I received session every 5 minutes, with 5 recorded values on every one minute in one session. But when the previous value is the same as the current value then the current value is not recorded in historian.

    "When viewing in the trend, you can use the option "extend curve" to draw a virtual curve up to the current point in time for the last received value."
    Okey, but what about historian? I want to store in table reports.
    Last edited by vpartinov : 17th August 2017 at 13:05

  4. #4

    Default Re: Storing every value not on change

    Hi vpartinov,

    Forwarding a value with only an updated timestamp (and same value and same status) to the runtime, is something that only very few drivers actually implement. It also needs to be supported by the protocol. For those drivers that do, it is often in combination with a changed internal status, in order to be able to react e.g. in the alarm list or the chronologic event list.

    The OPC DA 2.05a standard does not specify a DataCallback::OnDataChange when only the timestamp changes. If the server would call OnDataChange, with only a changed timestamp, it would probably not be compliant. In other words, with OPC DA and the OPC2Cli32 driver, this is not possible.

    With OPC UA this would be possible. The OPCUA32 client driver allows configuration of the DataChangeFilter for monitored items. An option defines whether the OPC UA client instructs the OPC UA server to send a notification on change of value or quality or also on change of timestamp only.

    Best regards,
    Mark

  5. #5

    Default Re: Storing every value not on change

    Thank you for the information Mark,

    The protocol in the external OPC server (not zenon) that I am using is DNP3. I am waiting the 3G data sim cards with static ip address to make the connection with DNP3_TG. Until then I am just testing zenon because its something new to me.

    The OPC server is polling all the values in the right way. I am not so sure but the OPC client must be able to take all the records (values) form the OPC server.

    What about event-triggered recording. I create a trigger variable from driver (import) variable which triggers the recording when there is polling from class 1(which I am using for trending the points) and from 5 values I am receiving only 2-3 values but not all. The problem with the "on change values" is solved. The next problem is if zenon has the option to create internal trigger variable which to rise when every new value is received (maybe with reaction matrix)?

    And what about DNP3_TG? With the unsolicited messages this could be possible right? I am asking if this is possible in zenon because this is DNP3 all about. How zenon is recording in historian with the unsolicited messages where one of the options of the polling is with exactly external timestamps and not only "on value change"?
    Last edited by vpartinov : 17th August 2017 at 16:38

Similar Threads

  1. how to vsta mode change
    By backjahyun in forum VSTA
    Replies: 3
    Last Post: 16th May 2016, 01:08
  2. Change RT Path
    By jwick8801 in forum VSTA
    Replies: 1
    Last Post: 22nd December 2015, 16:35
  3. react on value change
    By rgv0021 in forum VBA
    Replies: 2
    Last Post: 14th November 2013, 23:41
  4. flashing when value change
    By focus in forum zenon Supervisor
    Replies: 3
    Last Post: 23rd January 2012, 00:11
  5. Replies: 0
    Last Post: 21st August 2007, 08:15

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •