How to access Hart signals using OPC?

I've been asked to add Hart signals that come into DeltaV, to our OSIsoft PI Historian. Our current DeltaV-PI link is via OPC, but I have no idea how to access the Hart data. Do I have to create a reference in a DeltaV module and then link to that, or can I link directly to another OPC sever on the DeltaV system that allows access to the Hart signal?

Any help much appreciated!

Thanks

Col

  • Colin,  you simply need to know the path to the HART variables.  If you have referenced these in a Control Module, then you can reference these via the module path, using whatever parameter name you configured.

    You can also reference the HART variables directly from the IO channel.  DeltaV calls this a SCADA reference and the IO parameter can be communicated without passing through a Control Module.  for instance, I have an AI channel assigned to my controller. To configure this into DeltaV History Collection, use Explorer, right click on the Controller and select history Collection.  Then select the IO container, in my case "assigned IO" as it is a CHARM.  you can select IO and a local Card.  Than I select the channel and browse to the HART variables.  You will want to select HART_PV, HART_SV, HART_TV and/or HART_FV, and the .CV field. 

    You should be able to do the same using the OPC browser and browsing IO parameters rather than Modules.  There is no "scaling" information available on these references. 

    If you add an AI block to a control module, you can references these same IO parameters and add scaling information in the block.  Then you would configure the OPC DA reference to the module/block/OUT.CV and retrieve the scaling information from the AI1/OUT_SCALE.  Note that XD Scale does not apply and that the L_Type would be direct.  that is, the value is already scaled from the HART variable.  The Scale parameter simply provides context for the data.  If you don't care about scaling info on these parameters, you could simply use an External reference parameter in the module to read the HART variable and use this for OPC DA reference.

    There are other parameters available on some devices (output devices) such as HART_DV_SLOT0.  HART_ERRORS, LONG_TAG etc.  They are documented in BOL.

    Andre Dicaire