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.

Components

cancel
Showing results for 
Search instead for 
Did you mean: 

cRIO System Configuration Information (CRI) Library

Hi.

 

I gave a try to the CRI Library using a 9068 configured to be used in FPGA interface mode.

I am using LabVIEW FPGA with LabVIEW 2015 Japanese and NI-RIO 15.0.

 

For a minimal test I dropped the "Get cRIO System Info.vi" and run it from the RT controller.

I get values back for the controller and chassis information, but no module information and at the same time there is error -63040.

Diving into the contents of "Get cRIO System Info.vi" I noticed that the problem was due to the 'Resource Name" terminal of "Get cRIO Modules Info.vi".

"Get cRIO System Info.vi" assigned it a value as follows: rio://NI-cRIO-9068-190CAEE/RIO0

If instead I wire a value of rio://<ip_address>/RIO0 or simply RIO0 to this terminal, then "Get cRIO Modules Info.vi" finishes without errors and returns the modules information.

 

Should "Get cRIO System Info.vi" work fine as included in the library?

 

Thanks.

0 Kudos
Message 81 of 85
(3,560 Views)

Ernesto,

 

I cannot reproduce error -63040 ("A connection could not be established...") on an NI cRIO-9068 using CRI v2015.0.0.1. Assuming that you do have the latest RIO driver and CRI versions, it may be the case that you have uncovered a localization issue (LabVIEW 2015 Japanese, versus English) for the NI System Configuration component.

 

In the meantime, your workaround is the appropriate one, and I will investigate the underlying cause further.

 

Thanks,

Lee

0 Kudos
Message 82 of 85
(3,549 Views)

Hi Lee,

 

I am using NI CompactRIO Information (CRI) Library v2015.0.0.1 and NI-RIO 15.0.

 

Ernesto

0 Kudos
Message 83 of 85
(3,528 Views)

Hello.When I Deploy the Get Remote cRIO Modules Info.vi(Version 2014.0.0.2), there is an error saying 'LabVIEW:  Memory is full' occurs.I am not sure what the root cause is, but I try to modify the block diagram to make the case struture to have much less cases,2 cases for example. The error is gone and everything goes well.Please make me know what the cause is and how to fix it.Thank you.

Download All
0 Kudos
Message 84 of 85
(3,504 Views)

This is a shortcoming of CRI. In order to support all NI RIO devices in the particular driver version, an FPGA bitfile is compiled for each device type. The VI you mentioned has a case structure which contains them all, and if loaded, it represents a sizeable memory usage. Your workaround is absolutely correct, in terms of limiting the memory usage of the "Get Remote cRIO Modules Info.vi," however this method will modify the shipping CRI library.

 

An alternative method, which would preserve the CRI library integrity, is to use controller specific CRI palette member VIs for those cRIO controller types that you expect to use (example: Get cRIO-9068 Modules Info.vi). You could conditionally select (using a case structure) which of these controller-specific VIs to use based on a detection of controller model name, from Get cRIO Controller Info.vi.

0 Kudos
Message 85 of 85
(3,467 Views)