LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Communication between cRIO 9068 and ethernet expansion chassis 9146

Hello,

I have a system with three Ethernet Expansion Chassis 9146, one cRIO 9068, and my PC all connected to the LAN network. I want to stablish a communication between the cRIO and all three 9146s for sending data back and forth. The only way I was able to do that was having a VI on my PC running all the time that can communicate with both cRIO and 9146s and then read/write the data from/to them. See the following link.

 

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000YGx7CAG&l=en-US

 

I would like to have direct communication between the cRIO and 9146s. I appreicate if anyone has any experience that can help.

 

Thanks,

Ali

0 Kudos
Message 1 of 15
(6,803 Views)

My experience was with an EtherCAT expansion chassis.  But all you should have to do is use the User Defined Variable on the cRIO just like you do for the PC code.



There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 15
(6,737 Views)

Hi Ali,

 

I would recommend reading this tutorial:

Connect an Ethernet RIO Expansion Chassis to a Secondary Ethernet Port on a Real-Time Controller

 

Near the bottom (Part 3, Step 8), they address the channels on the expansion chassis as PSPs. I'd recommend trying that. Please let us know if works, so others with this question can find this post.

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

Hi Ali,

Additionally, if you want to program the FPGA and use FPGA References with the NI 9146, the following help documentation and KnowledgeBase shows how you can address the correct FPGA target. This isn't necessary when using Shared Variables or User Defined Variables, but I wanted to throw it here in case people stumble across this in the future as Andrew mentioned. 
https://www.ni.com/docs/en-US/bundle/labview-fpga-module/page/accessing-remote-fpga-targets-across-n...
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000004BIiSAM&l=en-US

Charlie J.
National Instruments
Message 4 of 15
(6,724 Views)

Hello crossrulz,

I really appreciate your help.

 

I can add the User Defined Variable to my cRIO but the question is how can I connect it to the variable on the expansion chassis NI 9146? On my PC I use the Open FPGA VI Reference to have access to the VI on the 9146 and then Read/Write Control to have access to all the variables.

 

Thanks,

Ali

0 Kudos
Message 5 of 15
(6,713 Views)

Hello a_clucker,

Thank you for your help.

 

When I right click on the block diagram of the VI in my cRIO device, there is no Data Communication » Shared Variable » PSP Variable » Read Variable with Timeout.

 

In the first sentence of the link you provided, it says “The Ethernet RIO expansion chassis is intended to be connected to a switch, router, or existing Ethernet network;” which applies to my case. Then it continues “HOWEVER, you can connect it to the secondary port of a real-time controller.” which is described in your provided link. I did not connect the NI 9146 to the secondary port of cRIO 9068.

 

Thanks,

Ali

0 Kudos
Message 6 of 15
(6,711 Views)

Hello GatorBait,

Thank you for your help.

 

When I right click on the front panel of my cRIO VI, there is no IO palette. I can not find the RIO Device control. How can I add it here?

 

Thanks,

Ali

0 Kudos
Message 7 of 15
(6,710 Views)

When I right click on the front panel of my cRIO VI, there is no IO palette. I can not find the RIO Device control. How can I add it here

 


The easiest way would be to right-click the input of the Open FPGA VI Reference on the block diagram and choose "Create >> Control." I don't believe that control is in any specific palettes as it is kind of a unique type def.

Charlie J.
National Instruments
0 Kudos
Message 8 of 15
(6,706 Views)

I mean it is not supported in this type of device. I can find it on the VIs on my PC but not on the cRIO device. It is not supported and gives me an error.

 

Ali

0 Kudos
Message 9 of 15
(6,701 Views)

Are you programming the FPGA of your 9146, or using it in Scan Mode?

 

Also, you will not be able to access variables hosted on the 9068 from the 9146 (the 9146 doesn't allow you to run a RT VI on it).

I think you might be able to access variables hosted by the 9146 from the 9068 (e.g you'd put down the Shared Variable API access VIs on the 9068's RT VI)

Andrew T.
"His job is to shed light, and not to master" - Robert Hunter
0 Kudos
Message 10 of 15
(6,687 Views)