06-27-2016 09:36 AM - edited 06-27-2016 09:36 AM
I've also now tried placing a seperate sequence structure inside my timed loop, but the same problem exists.
06-27-2016 09:37 AM
Looks like Norbert is right on this one, not an issue with the VI specifically, just an issue with frames inside of a timed loop. With the code below, if you clean up the Add primitive and the attached controls the whole structure will move right slowly.
06-27-2016 09:38 AM
@altenbach wrote:
@Norbert_B wrote:
Select your affected VI and execute this on it. I would expect the BD to be totally out of bounds....
Left=24, Top=-140, Right=7340, Bottom=2051
If i recall correctly "out of bounds" is >32768 or <-32767.... but haven't found any official notes on that.
Norbert
06-27-2016 09:40 AM
@big5824 wrote:
I've also now tried placing a seperate sequence structure inside my timed loop, but the same problem exists.
NEVER replace one problem with another one! SOLVE the problem.
Get rid of overused variables and remove all sequence structures/frames.
Norbert
06-27-2016 09:41 AM
@Norbert_B wrote:
If i recall correctly "out of bounds" is >32768 or <-32767.... but haven't found any official notes on that.
Norbert
http://digital.ni.com/public.nsf/allkb/62D66358BBF8A87186256FC50077FA17
From my experience it's not a very solid wall though. Strange things begin to happen as you get larger and larger.
06-27-2016 09:46 AM
My project didn't used to use the sequence structures, however as I added more features and complexity the diagram became rather ridiculous and unreadable due to a high degree of interconnection. Seperating the timed loop into three frames of data acquisition > signal processing > control with local variables to share information between frames made the diagram far easier to work with. I strongly feel this is a better approach than having no sequences and instead a hugely interconnected messy diagram.
Don't judge the current project too harshly, what you see now has been massively hacked around to try and get to the bottom of this bug.
06-27-2016 09:49 AM
If things get too big on the block diagram, use subVIs. Easy solution, good to read (if you create nice icons) and very well to handle (if subVIs are well modularized).
So this is a win-win....
Norbert
06-27-2016 09:50 AM
So probably a bug if there isn't a CAR already but here is a janky workaround for you. If you put a flat sequence structure around the the code you want to cleanup, then select all of the code in the sequence (do not select the sequence frame itself) then cleaning up that code works as intended. Then you can just remove the frame after.
Definitely unecessary but not too bad with QD shortcuts.
06-27-2016 09:59 AM
Norbert, trust me, having previously approached this problem in the way you are suggesting the flat sequence structure is an appropiate tool for my application. Could we please focus on the Labview bug I'm trying to find a fix for instead of coding style? No amount or lack of local variables will fix the bug.
06-27-2016 10:12 AM
Pressing cleaup on the entire diagram actually does a pretty good job here.