FieldPoint Family

cancel
Showing results for 
Search instead for 
Did you mean: 

Using Fieldpoint cFP-1808 from LabVIEW RT on a PXI System

What is the best (fastest) way to acquire data from a cFP Ethernet controller (cFP-1808) to a PXI RT system?  Thank you.


Chris White
ThinkG Consulting LLC
0 Kudos
Message 1 of 9
(7,225 Views)

Hello ThinkG,

You are limited in accessing the data by the update rate of the modules - but what I think you are actually asking is the faster way to transfer data from the ethernet module to the RT machine.  Basically, you have two physical options for communication:  ethernet or serial.  Ethernet, of course, has the potential to be multiple magnitudes faster than serial.

Once deciding to use ethernet, we have to choose a protocol - OPC, FieldPoint API/driver, or Modbus.  Although I am not 100% certain, I believe that Modbus is the fastest.  There are many discussion forum posts about FieldPoint and Modbus to help get you started.

Happy programming!

Janell R | applications engineer

0 Kudos
Message 2 of 9
(7,212 Views)
You probably don't want to use OPC, because you cannot host OPC servers on RT.  You would need a PC in the loop to host the OPC servers.  You don't want that.  So, you can use Modbus, as Janell suggested - but you can also use shared variables over Ethernet and you can bind your shared variable to I/O points published from the 180x.  This is probably the easiest way to get the cFP-180x I/O into your PXI RT application.

-Tommy
0 Kudos
Message 3 of 9
(7,205 Views)
Thanks for the suggestions.  We would like to acquire all channels for a module with a single call.  We did this using the FieldPoint API on a cFP-2100 (cFP real-time controller) to acquire data from a cFP-1808 (cFP Ethernet interface).  We found that reading all channels on a module using an 'All' data item performed better than reading individual channels with multiple read calls.  We would like to acheive the same degree of simplicity and performance when acquiring data with a PXI RT from the cFP-1808.  The problems with that goal are that the FieldPoint API does not work on PXI RT (correct?) and Shared Variables cannot bind to more than a single channel in this hardware scenario (correct?).  Thanks in advance.

Chris White
ThinkG Consulting LLC

0 Kudos
Message 4 of 9
(7,201 Views)
You are correct, accessing all the I/O on the module in one transaction does help your application performance, and you are also right that the FieldPoint API is not supported on PXI and Shared variables cannot bind to multiple channels at a time. 

Using Modbus VIs to do this would work, but you do lose a lot of the niceties of the FieldPoint API or even Shared Variables when you use the Modbus VIs.  NOTE: Don't use the Modbus I/O Server for the same reasons that you don't want to use Shared Variables - you will not be able to access all the I/O from a module because you will be unable to bind to more than one channel.

-Tommy
0 Kudos
Message 5 of 9
(7,181 Views)
Hi,

I am following the discussion. I use a Fieldpoint cFP-1808 from LabVIEW RT on a PXI System. Right now the easiest solution seems to be to bind shared variables to Fieldpoint channels. Given this solution I have a question about the Advise Rate. If I add the Fieldpoint hardware in my project and then modify the Advise Rate of the channels,  what I am actually doing is modifying the rate at which each module updates the data to the Fieldpoint Server hosted in the cFP-1808. Is this correct?

Raimon
0 Kudos
Message 6 of 9
(7,166 Views)
Thanks, Tommy, for such a thorough response.  It seems like the Modbus VIs really are necessary when there are more than just a handful of data channels to acquire.  It is surprising that Modbus VIs are needed to effectively communicate between a PXI RT and the cFP-180x.  The need for such a low-level API to exchange data between two NI devices really is quite surprising.  It seems that this area needs a little more development attention.  Thanks again for the clarification.

Chris White
ThinkG Consulting LLC
0 Kudos
Message 7 of 9
(7,128 Views)

 

Checking back on this topic, 4 years later.  Is it still the case, after 4 years, that the best (fastest) way to acquire data from a cFP Network Module (cFP-180x) to an RT PXI is with low-level Modbus?  Is it still the case that FieldPoint API does not work on RT PXI?

 

Chris White
ThinkG Consulting LLC

0 Kudos
Message 8 of 9
(4,975 Views)

Hey Chris,

 

It looks like there has been no development in that direction, unfortunately. On the other hand, there have been some advances in shared variables, and it may be that the programmatic shared variable API is going to be easier to use with similar performance.

 

There have also been some improvements to modbus, and the RT module gives you access to these features:

http://zone.ni.com/devzone/cda/tut/p/id/7210

http://zone.ni.com/reference/en-XX/help/371618F-01/lvmve/dsc_modbus_using/

 

Let me know if you have any questions.

 

Thanks,

0 Kudos
Message 9 of 9
(4,968 Views)