09-02-2010 08:03 AM
I have a fieldpoint setup to query all channels on a DO401. This is so I can get feedback on the state of all channels.
However, when I read the output, it returns 32 instead of 16 values.
What would be causing this? I have a workaround of taking the first half of the array
Solved! Go to Solution.
09-02-2010 09:01 AM
Open up the FP Read subVI and you'll see why.
At the heart of the subVI is a dll call that returns a Double floating point for the values. It gets converted to a U32 integer, which is then converted to a boolean array. Thus you wind up with a 32 element boolean array, even if your IO module doesn't have that many inputs/outputs.
The other thing to consider is that there are some 32 input modules out there and the same subVI has to be able to handle them. For whatever reason, the subVI's don't try to figure out how many inputs/outputs there might be in the module to truncate the array to have only that many elements.