05-07-2008 02:53 PM
05-12-2008
09:11 AM
- last edited on
03-05-2025
10:04 AM
by
Content Cleaner
Hi daringen,
Network variables are recommended for FieldPoint. The Network Variable Technical Overview is a great starting point. Also, you can find Measurement Studio specific information in the Measurement Studio help topic "Using the Measurement Studio Network Variable .NET Library".
There are network variable shipping examples that come with Measurement Studio as well. They typically are located on your machine at the following path: C:\Documents and Settings\All Users\Documents\National Instruments\MStudioVS2005\DotNET\Examples\NetworkVariable .
05-12-2008
07:44 PM
- last edited on
03-05-2025
10:06 AM
by
Content Cleaner
private NetworkVariableReader<double[]> _reader;
You could then say _reader.Connect(timeout) where this overload takes in a TimeSpan object.
Anyway, let me know if you have any other questions, or if something isn't clear.
Best Regards,
05-15-2008
05:13 PM
- last edited on
03-05-2025
10:06 AM
by
Content Cleaner
Jonathan,
Thanks for your reply. How is the performance of talking to FieldPoint modules using OPC via network variables and the LabView DSC runtime? My application must support real-time control and monitoring of the values on several FieldPoints at a sampling rate of about 0.25-0.5 seconds. Also, are you suggesting that I use DataSockets in concert with Network Variables if I don't purchase the DSC Runtime or as a standalone solution? Would you reccomend using DataSockets to perform the low level data aquisition and then publishing the data to Network Variables for use by my client application? If so, how should DataSockets publish to the Shared Variable engine/Variable manager? Something the approach suggested here? i.e. write the data to an existing variable like so: psp:\\localhost\[Library]\[VariableName] Which method would provide the best performance and reliability when communicating with FieldPoints?
Thanks for your assistance.
05-15-2008
07:10 PM
- last edited on
03-05-2025
10:07 AM
by
Content Cleaner
Hi daringen,
DataSocket and Network Variable use different underlying protocols and its a known fact that the new protocol (PSP) is much faster. I'm not an expert on OPC servers and FieldPoint and from what I understand, there is a variety of ways to connect to OPC servers. I found several documents that discuss options (most of which are with respect to LabVIEW but they are good references) with regards to performance. If you want an exact answer on performance, you probably want to post that question either on the LabVIEW forums or FieldPoint forums. The documents I found that might help include:
DataSocket Performance is slow - Forum post
LabVIEW DSC Module OPC Client Performance Considerations - KB
Now, I can say a few extra comments from the Measurement Studio side of things. The NetworkVariable is the preferred method for transferring data between applications. You can use NetworkVariable and DataSocket to exchange different types of data between OPC servers. Exchanging data between Measurement Studio applications and OPC servers with NetworkVariable requires LabVIEW DSC. Use DataSocket to communicate directly with an OPC server.
There is a variety of benefits to using the NetworkVariable including the fact that it provides server-side buffering, its a more elegant API, there isn't any COM interop, and you receive higher throughput. The benefit to using DataSocket is that you can connect directly to the OPC data point without going through the Shared Variable Engine as an intermediary, including the implied manual configuration in the Variable Manager, or purchasing the LabVIEW DSC Runtime.
You could use DataSocket to communicate to the OPC servers directly, gather the data and and then write that data to some Network Variable. That KB you mentiond shows how to do that.
Hope this helps!
Best Regards,