Hey everyone, I'm currently interning for a company that uses NI modules. This is my first time using Labview, and I'm still a little weak in some (most) areas.
Sending modules in for calibration takes a very long time, and could actually end up taking 4/6 of my months left working here. This would be very costly and inconvenient for my company, so naturally we're trying to avoid that. Due to this, I am attempting to calibrate the modules myself using the "NI 9205/9206 Calibration Procedure" PDF. (http://www.ni.com/pdf/manuals/372020a.pdf)
Thus far my Self-Calibration and Verification programs work as intended, yet my External Calibration program continues to throw "Error -200112." This seems to indicate that the calibration handle from my initial block is an invalid handle according to my series block. Upon expanding the block, I was unable to determine what a realistic calibration handle would be.
If anyone could shine some light on this situation, I'd be grateful.
Solved! Go to Solution.
Can you please post your external calibration program? Are you referencing the correct device with the DAQmx Initialize External Calibration VI (the name should match in NI MAX)?
Attached are the .vi file and the schematic created for the external calibration program.
The device I'm choosing is named "dev1" which was the generic name detailed in the documentation from NI.
Is it possible to leave the device input generic? We have many NI 9205/9206 modules that may require calibration down the road, and to create 30+ programs seems inefficient.
Thanks for sending that over. I'm not sure why LabVIEW would think the handle is invalid, so I think it may be referenced incorrectly. What happens if you delete the control and recreate it again, or delete the initialization VI entirely and rewire another one? What happens if you rename the module to a different alias and reference that?
Hey, I think we've figured out at least one of my problems. I also wanted to thank you for your help on this.
Turns out "Dev1" pointed my device to two locations. In NI MAX, the "My System" location denoted by "Dev1" is not a 9205. I can only infer that this device was the one pointed to, resulting in errors -200445 and -200112.
I have since altered the handle of my device to "Dev3" as there is a deactivated "Dev2" already in use. "Dev3" does not populate the list of devices under controls indicating that the NI-DAQ drivers are only installed on "My System."
This brings me to my next problem, the file locations for the NI-DAQ drivers according to the "My System" setting of NI-MAX are empty. Due to this, I'm lost as to how to import them to "Remote Systems" and any help would be appreciated.
If you know of a way to import these drivers to the "Remote Systems" setting I would be grateful. Thank you.
Ohh I think I may know what the issue is. I thought you were using a cDAQ chassis, but you're actually using a cRIO. It is expected that you will not see the C Series module (the 9205), only the cRIO chassis in NI MAX. The reason for this is because C Series I/O modules interface with the FPGA, so MAX won't be able to tell which C Series modules are in the cRIO chassis. For more details: http://digital.ni.com/public.nsf/allkb/69A8C4DD97BDED3B8625735D005BDF19
Additionally, the NI DAQmx drivers supports our multifunction DAQ devices, which does not include the cRIOs. For cRIOs, you use the NI-RIO driver. Because of this, you unfortunately would not be able to use the DAQmx API for a C series module in a cRIO chassis. Have you seen the NI 9205 Self Calibration example in the NI Example Finder? It does a self calibration as well as restores the last external calibration constants. To find it, navigate to LabVIEW's Help tab >> Find Examples >> Search "9205 Calibration" and it should be the first example to pop up.