LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

polymorfic function is broken

The function AI read.vi is a polymorfic vi that can output it's scans as waveforms as well as a scaled numeric array. I found this out because for some reason, mine is no longer polymorfic! Maybe I saved something in it, but whatever the reason is, it is no longer polymorfic. I've seen this happen before and I am not sure how I can restore it. Can I copy the llb form somewhere else, should I learn how to make polymorfic vi's or should I even reinstall Labview (just to make sure..).
Using LV 7.1 under XP
0 Kudos
Message 1 of 4
(2,692 Views)
You didn't say how you know that it's not polymorphic anymore, so I first want to give a few suggestions on how to further verify this. Try either of these:
1) Right click on the AI Read subVI node on your diagram and select "Visible Items > Polymorphic VI Selector". If the Polymorphic VI Selector menu item is there, your VI is polymorphic. Your selector is just hidden and selecting this menu item will show it again.
2) Select File > Open, then navigate to and open "[labview]\vi.ib\DAQ\AI.llb\AI Read.vi" If this is a poly VI, it will open in its poly VI view. If not, you will see a regular VI panel.

If this VI truly did get blapped somehow, then you need to replace your ai.llb. There are 2 ways to do this.
1) If you have another copy of ai.llb somewhere on
your computer or a neighbor's computer, copy it and replace the one in your vi.lib/daq directory.
OR
2) Reinstall the LV-DAQ support files from the Driver CD (not the LV CD). You do not need to reinstall LV or the DAQ driver, just the LV-DAQ support files. If possible, use the same Driver CD that you originally installed the drivers with.

Hope these tips get you going again!
Message 2 of 4
(2,692 Views)
Thanks. I understand things better now.
It was indeed still polymorfic, but it didn't automatically adjust anymore to the numeric array indicator.
I was also experiencing a very weird problem that actually still persists: the backlog will only read multiples of 256 or 0. I think a reinstall may still be required (but maybe the NI-DAQ install will fix it allready..)

Aart-Jan
0 Kudos
Message 3 of 4
(2,692 Views)
> it didn't automatically adjust anymore to the numeric array indicator

The "automatic" poly selection only works when the different poly VI instances have differing input (not output) terminal datatypes, so it doesn't work well with the Read VIs where the inputs of the different poly instance VIs all have the same datatypes. Thus you must use the poly VI selector to select the poly VI for these VIs.

If your backlog problem continues to persist, you may want to post a new question with more details supplied for it.
0 Kudos
Message 4 of 4
(2,692 Views)