09-16-2005 04:16 AM
09-16-2005 08:18 AM
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
09-16-2005 09:01 AM
09-18-2005 11:07 AM
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
09-19-2005 09:44 AM
Hello Lost and Found,
I want to note a few other things about your VI. I notice that you are using an Express VI (Elapsed Time) in your VI. You should stay away from using Express VIs with Fieldpoint because they are memory intensive. You can use the Tick Count function to perform the same measurement.
Instead of using property nodes to keep your boolean control at the same value in certain cases, you could use shift registers. Or, if you prefer you could setup functional global variables.
Hopefully some of our suggestions will help you get this VI running!
Laura
09-20-2005 08:44 PM
Titou needs a bigger screen I am also guilty of vi's that extend beyond the screen size. I found yours nicely organized even if expansive.
The comments about property nodes are valid. I use as lot of property nodes in my RT programs, but mostly in the initialization routines, not in the critical stuff, where I use lots of shift registers and "global Vi's".
Without diving deeply into your architecture, I see a lot of array'ed functionality. While highly parallel is touted as a LabVIEW feature, remember you really only have one CPU which is flitting between the paths. An all of these require simultaneous memory allocation. For this reason I suspect that wrapping some of this functionality up in a loop (reusing the intermediate data structures) so the sequencing of the tasks is less chaotic could help a lot.
Another hint: I don't try to export the front panel to the PC at all! Instead I pack up the key control and status and pass it to a separate front panel VI running on the PC. This is probably too involved for a class assignment, but it lets me build a front panel VI as glorious as I want without bogging doen the '2020. It also lets me connect the front panel via phone dialup half a planet away!
Here's the top level of the RT program I'm currently playing with to run a water plant. The block diagram is virtually as big and a lot more cluttered than the one you posted. I keep a messy desk, too It runs great on a cFP2020, and there is a lot of functionality buried in all those sub-vi's you can't see -- file I/O, big data structures, the works. By the way, you can see the (server) interface to the front panel VI at the bottom of the VI.
hope this helps a bit. I make no claims to being a professional wireworker, but I'm pretty adept at architecting for computational efficiency. I thought about the computational cost of every scrap of main-loop functionality before I implemented it.
Bob
09-21-2005 04:47 AM