VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Channel Calibration and scaling programmatically

Hi, 

I managed to programmatically set my hardwre I/Os like described here. Essentially, what this does, is creating hardware channels in the System Definition File.


Now I'd like to set the calibration and scaling programmatically. So in a small test VI,  I took my channels list, and used the ICalibration method under Factory... however it does not work and I get the Error message "Could not Find channel 'blabla' " out of the Error property... (not a LabVIEW error).

 

Calibration.jpg

Not sure what I am missing...

 

 

It seems that the Calibrations and Scaling are not stored in the System Def File (?), as the workspace tool allowing to enter calib and scaling manually require the target to be running....

 

Thx.

Laurent.

0 Kudos
Message 1 of 4
(5,920 Views)
unfortunately you're right. The calibration interface is in the execution API. the system must be running and settings are stored on the engine execution target... Not in the system definition.

Since calibration and scaling are currently the same thing in NI VeriStand... This has obvious drawbacks. This is something we hope to improve in future releases.

workarounds are to use something in your system definition to do scaling instead like models, calculated channels, or custom devices.
Stephen B
Message 2 of 4
(5,908 Views)

But why is the code shown above not working then?  Shouldn't it be setting the cal/scaling channels when the target is up and running?

L

0 Kudos
Message 3 of 4
(5,905 Views)
it should. I would have to know what is in that array of channel names and the error being reported
Stephen B
0 Kudos
Message 4 of 4
(5,897 Views)