Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Digital I/O error with PCI-6229

Hi
 
We are using a PCI-6229 card under the real-time module (LV 8.2).  So far we've been successfull with the analog I/O.  However, when we try to send/receive any D I/O, we get the error message posted in the screenshot.  I did a quick research on NI and didn't find anything related to the code -200477.
 
What is weird is when we configure our DAQmx assistant and go to the testing tab, we do have a good lecture on a voltmeter (for example, 5V for a DO set to 1).  Same thing if we send in 5V, we get a TRUE value (always under the testing tab in the DAQmx applet).
 
Anyone has any idea?
 
Regards,
 
MChartrand
0 Kudos
Message 1 of 9
(5,482 Views)
Hi MChartrand,

Does the program work on a windows machine, instead of an RT target? It is good to hear that the test panels work in the DAQmx assistant because this shows that the card is working properly. I would like to ask that you please create a small and simple VI which re-creates this problem, and post it? Also, please take a screenshot of your DAQ assistant configuration page so that I can see what inputs are being used.
David L.
Systems Engineering
National Instruments
0 Kudos
Message 2 of 9
(5,464 Views)
Alright here's the few things I tried.
 
First of all, the program (a simple while loop with a boolean button wired the DAQmx assistant) works fine on a windows machine - that is without the Real-Time module.  Every port respond in output; we verified this with a voltmeter, as previously mentionned in my first post.
 
When we switch to RT, only the first 8 ports work in numeric, and only in the testing tab of the DAQmx assistant.  When we launch the program, nothing is happening.
 
A ss of the host and target programs are attached.
 
A ss of the DAQmx assistant is also provided.
 
 
Download All
0 Kudos
Message 3 of 9
(5,437 Views)
Mchartrand,

Can you please further explain 'Nothing is happening'? Does the program open, but not run? Run, but not give the correct outputs? What exactly happens and does not happen? Also, can you please post a ss of the DAQ assistant showing the device being used? (please see my ss example attached)

In the DAQ Assistant testing tab, only 8 lines are allowed to be simultaneously selected and the first 8 lines are automatically selected by default. Do the lines work whether high or low, or are they always outputting a constant and not changing? Do lines other than 0-7 work when selected? Do your digital output lines work in the program, outside of the DAQ assistant?

Please try running a shipping example (Help » Find Examples... » Hardware Input and Output » DAQmx » Digital Generation) Write Dig Chan.vi.
David L.
Systems Engineering
National Instruments
0 Kudos
Message 4 of 9
(5,378 Views)
Sorry for the lack of precision here.  When I say nothing is happening, I mean that the program runs fine but I do not get the correct voltage output when I mesure it with a voltmeter.
 
The ss test.jpg shows the results of the tests I ran on my machine.  Basically everything works fine in standard LabView.  In the testing tab and when the program runs, I mesure the correct amount of tension (5 V) when the boolean variable is set to TRUE.  And that's for all the lines (0-31).
 
When I switch to the Real-Time module, the lines work fine in the testing tab of the DAQmx applet.  I then launch the program and it also runs fine.  But when I change the value of my boolean variable, the voltage stays to 0 V.  I probed the signal before it enters the DAQmx applet and it showed the correct value.  But it's like it doesn't get through the applet.
 
The analog output is OK in both environments.
Download All
0 Kudos
Message 5 of 9
(5,369 Views)
MChartrand,

What are you using (PXI, ETS, etc) as your RT target? Please create a simple VI like in the attached picture and let me know if you receive any errors. Please make sure to attach an error cluster from the DAQ assistants’ error out connector. I did not receive any errors when I ran the code in the picture posted.

Also, can you please add error handling to your code and see if this results in any different errors than the first one posted (-200477). The previous error tells us "Specified operation cannot be performed when there are no devices in the task", which leads me to believe that your 6229 may be a different device number on your RT system than your Windows system. Although your 6229 is called "Dev1" on your windows system, is it called the same on your RT system?

David L.
Systems Engineering
National Instruments
0 Kudos
Message 6 of 9
(5,350 Views)
I'm using ETS as my RT target.  Although when I check with the Help >> About Real-Time Module, I get "LabView Real-Time Module is not installed properly", which to me is troubling because I did not receive any error message when I installed the module.  Maybe I should reinstall everything if the problem persist.
 
As for the VI, I did not know if I had to put the DAQmx assistant inside a timed loop or not... So I did both and received 2 differents kind of error.
 
First, error1.jpg shows the same code as previously mentionned.
 
Then, I tried without a timed loop and got a different error code (error2.jpg).
 
Needless to say, the 2 methods worked under the Testing Tab in the DAQmx applet.
 
And my PCI-6229 is named "Dev1" on both my RT target and my windows system.
 
 
Download All
0 Kudos
Message 7 of 9
(5,342 Views)
Hi MChartrand,

First, I'd like to point out using the DAQ Assistant is not recommended with Real-Time because of the overhead associated with the Express VI. I strongly suggest you use standard DAQmx programming VIs when working in Real-Time.

The cause of error -200811 appears to be clearly explained when I review the Possible reasons section:
"Specified string contains characters that cannot be interpreted by DAQmx due to installed language support and system locale settings.
If possible, do not use this character. Otherwise, ensure that the appropriate language support is installed on the system, and that the system locale is set correctly. For most Windows operating systems, this is done through the Regional Settings option in the Control Panel. For a LabVIEW RT target, you should install "Language Support for LabVIEW RT" and change the locale setting for the remote system under the "System Setting" tab in MAX."

My best recommendation is to keep the Timed Loop but replace the DAQ Assistant with DAQmx coding. Learn 10 Functions in NI-DAQmx and Handle 80 Percent of Your Data Acquisition Applications is a fantastic resource to start with.

Cheers.

Michael K. | Applications Engineer | National Instruments

| Michael K | Project Manager | LabVIEW R&D | National Instruments |

0 Kudos
Message 8 of 9
(5,289 Views)
I installed the "Language Support for LabVIEW RT" and it solved the problem.  I'll keep an eye on your recommandation about DAQmx though.  Thanks!
0 Kudos
Message 9 of 9
(5,283 Views)