07-30-2015 08:58 AM - edited 07-30-2015 08:59 AM
Hi.
My VI started crashing repeatedly after I upgraded from Labview 2013 to 2014. After some detective work, I found which part of my code was causing the trouble (see attached file "prob.png").
After some work, I was able to find a solution (see attached file "sol.png") which involves more VIs and is a bit less elegant. However, the final result is the same.
I wanted to share this with others who might be experiencing the same thing, and ask whether or not this is a known issue...? Maybe there is a better way to fix this...
Thanks,
Orel.
Problematic code:
Solution:
07-30-2015 09:04 AM
07-30-2015 09:19 AM - edited 07-30-2015 09:22 AM
Hi GerdW,
1. "Crashing" is getting the attached "LabVIEW Crash Reporter" window, after Labview closes.
2. The data is just a regular waveform, for example:
3. Using a wire instead of a local variable seems to work. Any explanation for this?
Thanks,
Orel.
07-30-2015 09:23 AM
07-30-2015 09:24 AM - edited 07-30-2015 09:25 AM
Are you looping as fast as possible? A waveform is a weird thing to have as a local variable because usually you want data points one by one without repeated points.
Like GerdW said, dataflow. If you can, share your code so we can take a look. This could be something weird with that local variable and a race condition.
Cheers
--------, Unofficial Forum Rules and Guidelines ,--------
'--- >The shortest distance between two nodes is a straight wire> ---'
07-30-2015 09:25 AM - edited 07-30-2015 09:25 AM
Yes, but it used to work in Labview 2013 and it works if I change around some VIs... For some strange reason, only this VI combination crashes it.
07-30-2015 09:27 AM - edited 07-30-2015 09:28 AM
There are compiler differences between 2013 and 2014, so if something wasn't coded in the best way it could cause a problem with one compiler and not another. Dataflow is a big deal.
Cheers
--------, Unofficial Forum Rules and Guidelines ,--------
'--- >The shortest distance between two nodes is a straight wire> ---'
07-30-2015 09:30 AM
Thanks, James.
It's no problem using a local variable. I have one infinite loop which acquires the waveform using an FPGA and a second loop which analyzes the data. There shouldn't be any repeated points because the acquisition is done so that the variable is updated only when a full waveform is output. I would rather have both loops running independently. If I use a wire, then that's not the case.
07-30-2015 09:31 AM
OK thanks.
I'll keep thinking about it.
07-30-2015 09:31 AM