By Óscar Gómez
In a few days my team and me will start a project and I'm a little anxious because I've never work with PXI Systems... If anyone want to tell me a tip, recommendation or something about your experience with this systems, you'll welcome. I'm one of the developers in the crew!.
I've experience with cRIO and cDAQ.
Hello fellow LabVIEWers,
I am trying to get a self developed PXI chassis up and running - with some problems.
As this is this my first time developing a chassis, some general questions about 3rd party chassis:
If I want to get a 3rd party PXI chassis up and running with MAX I just need to add the right description files into the right folder? otherwise the chassis will be recognized as "undefined"? but will still work - except triggers?
Whats my status right now?
Chassis is connected via PCIe 8361 - PXIe 8360 and the Connection seems to work Chassis seems to work and inserted cards get recognized by MAX and "self test" works Chassis seems to get recognized with the Keysight Resource Manager (I installed it and selected it in NI MAX) no unknown devices in windows device manager (so the NI SMBus Controller gets recognized correctly)
btw my actual SW installation:
PXI Services 17.5.1
I am open for any suggestions and tipps!
My company has been developing and maintaining its own SCADA software in LabVIEW for a few years. It is fairly comprehensive: datalogging, graphing, alarm monitoring, automation, loops for equations and PIDs, and so on. It is a PC-based solution and communicates with many different kinds of hardware through the COM(RS232), USB, and Ethernet ports of the PC. This solution works well and allows keeping the costs low for most of our customers. Most of the loops run around 10Hz (100ms).
However, more and more we are running into customer specifications that require high control rate (few milliseconds), high determinism (to the millisecond), and high reliability. Not surprisingly, the PC solution becomes unacceptable. We feel it is time to look into a real-time, embedded solution for those customers. That's why I'm currently investigating the different NI embedded RT solutions (namely PXI and cRIO).
I can find plenty of resources on each of them, but close to nothing when it comes to comparing the 2 solutions and choosing which one to go with. Would you mind giving me some guidance? I guess you'll need more information, which I'll be happy to provide.
A few elements already:
- There is no request for MHz loops, so the FPGA side of the cRIO is not required I believe
- Our application contains many VIs that are both the engine and the HMI, so there will be some decoupling effort if we need to split it into an HMI application on the PC and an RT application on the cRIO. Would a PXI solution avoid this issue by plugging a monitor directly to the display port of the controller? But then if I have all the code in the PXI controller, is it likely that I will lose my control rate and determinism?
I am developing a PXI system and thought I would use OOP to do all the DAQmx calls for all the different cards in my chassis. It all looks nice and neat and works a treat when running in LabVIEW 2013. All my Network Shared Variables are updated on my host application and the host can happily control the PXI chassis.
However, as soon as I try and create an executable to run at startup the code stops working, it simply appears not to deploy. There are no errors or warnings, the PXI executable simply no longer works.
I presume I am missing something simple, like a missed check box or an automated deploy command.
If anyone can see what I might be doing wrong then I'd be mighty grateful.
My class structure is fairly simple
LabVIEW Class >> DAQmx Class >> PXIe 6363 AI, PXIe 6363 DI, etc
Basically i have 2 VIs, one running on a PXI, lets call it PXI.vi and one on the pc, GUI.vi
I started testing my application some days ago and after 3 hours of running i got the error in the picture.
Error -1073807339 occured at VISA Write in PXI.vi
Reason: Timeout expired before operation completed.
Then immediately also this error:
Unable to locate variable in the shared variable engine. Deployment of the variable may have failed.
I restarted the PXI and started the test and it happened again after 2 hours.
The third time even sooner.
It is always 2 variables that cause this problem.They are used to pass information about error happening on a instrument.
So actually they are not even used when giving the message.
I check them in a loop every second.
They are not buffered. I initialize them when the vi starts
I am using Labview 2011 and windows 7
Thank ou in advance for your time.