From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

Retrieving data found in Distributed System Manager via GET requests

I am looking for a way to retrieve information from devices such as a NI 9792 and cRIO-9063. The information I am wanting to retrieve is pretty much the same as what is found in distributed system manager.

  • What Nodes/Cards are attached to a controller.
  • What a particular channel is currently reading

 

I couldn’t find much documentation regarding this, but I did find this page (in Japanese): https://zone.ni.com/reference/ja-XX/help/371361M-0112/lvhowto/vws_reading_a_variable/

 

I tried running the GET requests with the URI format specified, but kept getting HTTP 404s. For example, I am sending the below GET request which is one of my NI 9792 gateways and is resulting in a 404. If I go to http://10.210.6.27:3580 in my browser I get the silverlight application that runs on the device. So I know I am trying to access the right address.

 

http://10.210.6.27:3580/nivariable/VariableValues('ni.var.psp://10.210.6.27/Node4/TC0')?$format=json

0 Kudos
Message 1 of 4
(2,504 Views)

Hi Colleague

I am not pretty sure that you can access the data from the DSM using the GET command, however, I would like to know if you have access to LabVIEW, I think that you can publish that information using Network Public Shared Variables, here I leave a link with the information:

 

http://zone.ni.com/reference/en-XX/help/370622R-01/lvrtbestpractices/rt_bp_svars/

 

Regards

0 Kudos
Message 2 of 4
(2,481 Views)

Hi duelingcats,

 

Are you trying to accessing this information via LabVIEW? If not, please let us know which language.

Pretty much all of the items in Distributed System Manager are Shared Variables, which can be easily accessed in LabVIEW.

 

I browsed some other posts, and this thread links to the English version of the help page you found in Japanese. The post also contains links to other pages that might help you. They were using a text-based language. If you are as well, most of the threads I've seen (internal and external) conclude that sending values of TCP might be the easiest way to access variables. Here's one of the better threads.

 

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 3 of 4
(2,478 Views)

I am not using LabVIEW to access the variable. I am making a internal web site using .NET with C# and ASP.NET and I want one of the pages on the site to show data such as this is the current reading of 10.210.6.27/Node4/TC0. So to answer your question, I am trying to access it through a .NET application.

 

This data is viewable on Distributed System Manager, so I assume there is some sort of API out there. I have spent all day trying to figure out how to get this data easily, but it seems way overly complicated. So far I have tried using the the System Configuration API, but I don't think it is providing the information I need.

0 Kudos
Message 4 of 4
(2,454 Views)