01-18-2018 06:13 AM
Hello everyone.
Please explain what is actually asked in the question especially what is 'buffer underrun'.
Thanks .
01-18-2018 08:55 AM
Ok, it sounds like you just want clarification on the question so I won't reveal the answer.
"Buffer underrun" can happen on an output task when the board is ready to generate the next sample, but the application software hasn't delivered it yet. (The analogous "buffer overrun" happens when an input task is ready to add a sample into a buffer, but the application software hasn't retrieved prior samples to make room for it yet.)
It's significant that regeneration is set to 'none'. If regeneration were allowed, the aforementioned "buffer underrun" wouldn't happen, the task wouldn't be trying to *avoid* generating the same data a 2nd time, it would happily regenerate the buffer over and over forever.
In short, all tasks shown do not allow regeneration, so all are *eligible* for a buffer underrun. So now see if you can work out which code will lead to one.
-Kevin P
01-18-2018 12:49 PM
In other words , does buffer under run mean that the application is not writing data quickly enough?
01-18-2018 12:53 PM - edited 01-18-2018 12:53 PM
Yep, that's right. Typically solved by some combination of writing larger chunks and/or more often. Or, when appropriate, allowing regeneration.
-Kevin P
01-19-2018 06:41 AM
In option D , there is a boolean conditon under autoindexed tunnel.
Can you tell me what is it exactly?
How to use it in labview?
01-19-2018 07:22 AM
Right-click on the output tunnel and there will be an option for the conditional input. When false, that value is not added to the output array. So it is a way to filter an output array.
01-19-2018 07:29 AM
Sir, I right clicked the output tunnel but there is no option for the conditional input.
Is there any other way?
Thanks.
01-19-2018 07:50 AM
It's in a sub-menu under "Tunnel Mode->". The first set of options (indexing, last value, concatenating) are exclusive and only 1 can (and must) be selected. The conditional option can then be optionally applied as a separate decision.
-Kevin P
01-19-2018 07:53 AM
I tried , but still can't find it.
Does it have anything to do with labview version?
01-19-2018 11:09 AM
I think I have figured out the correct answer.
It should be option D.
As mentioned in one of the responses , conditional tunnel is used to filter out an array.
In option D any value outside the range mentioned should be filtered out.
So 'write function' won't get samples as per the rate it is working.
Hence we will get buffer underrun error.
Am I correct?