SystemLink Forum

cancel
Showing results for 
Search instead for 
Did you mean: 

OPC UA Connector - batch create monitors only for read

Solved!
Go to solution

Hi,

 

I was just exploring a use case to expose SL tags to an OPC UA server (using the NI OPC Server product for now).

 

My tag list for the test is 270 tags, so I thought I'll just select all and create monitors.

 

The issue is that it now assumes that I want to have read access to the OPC tags, which is not what I want. I need write access.

Selecting a single OPC tag to create a monitor provides me a dialog for selection.

 

Is there an easy way (work-around, not being manually) to add all 270 tags as write access monitors? I need to add way more for my proof-of-principle.

 

I can provide details through DM or email in case this use case needs further exploration.

 

Ultimately this solution will not probably not work out for the customer, since the monitored communication interface have a cycle time between 200 and 500 ms and the OPC UA connector has a maximum update rate of 1000 ms. The NI OPC Server is capable the required update rates.

Regards,
André (CLA, CLED)
0 Kudos
Message 1 of 3
(2,366 Views)
Solution
Accepted by topic author andre.buurman@carya

It looks like you're right. It doesn't seem to give you the option to create them as Reads or Writes. 

 

As a workaround, if it was me, and I have access to the OPC UA Toolkit (in order to programmatically get all the information from the OPC UA server), I would probably write up a quick VI that queried the OPC Server to get the information necessary to use the HTTP API, and then I would call the API to create monitors for each item. 

-----------------------------------------------
Brandon Grey
Certified LabVIEW Architect

Message 2 of 3
(2,346 Views)

I was afraid that this was going to be the work-around Smiley Sad

 

Even if it was to work through the interface, the fact that the OPC server would get the lead in the SL tag names is not what I ultimately would want.

 

For me the SL tag naming is the basis (initial solution would probably be deployed SL only) and the OPC server would be a means to have other OPC UA enabled services access the SL tag values (current value). This would mean that I would like to have the OPC UA connector create OPC tags dynamically based on the SL tags I want to have monitored (it's opposite to what the OPC UA connector is currently designed for).

 

I would probably end up with programming my own OPC UA server with the OPC UA toolkit and somehow figure out a way to update the values from SL tags on value change.

Is there a way to hook into something like that? E.g. how does the alarm rule engine detect tag value changes (is by polling)?

 

Another way would be to notify my server via a Skyline message that contains all new tag updates as they are sent to SL. The data source application would then send SL tags updates and the Skyline message to 2 destinations simultaneously.

 

I would be very interested in other approaches that could be simpler that what I suggest.

Regards,
André (CLA, CLED)
0 Kudos
Message 3 of 3
(2,338 Views)