08-17-2015 10:14 PM
My PC spec
Processor: Intel i7-4770
RAM: 8GB
OS: Windows 7 64-bit
LabVIEW 2014 Service Pack 1, LabVIEW Professional Development System.
I was getting the below error.
LabVIEW: Memory is full.
The top-level VI "excess_trend.vi" was stopped at unknown on the block diagram of "ERR_MergeErrors.vi".
Refer to the VI Memory Usage topic in the LabVIEW Help for suggestions on monitoring and improving VI memory usage.
May I know why this error occur? The error was not appear everytime.
thanks
08-17-2015 10:56 PM
@CHEN0220 wrote:
My PC spec
Processor: Intel i7-4770
RAM: 8GB
OS: Windows 7 64-bit
LabVIEW 2014 Service Pack 1, LabVIEW Professional Development System.
I was getting the below error.
LabVIEW: Memory is full.
The top-level VI "excess_trend.vi" was stopped at unknown on the block diagram of "ERR_MergeErrors.vi".
Refer to the VI Memory Usage topic in the LabVIEW Help for suggestions on monitoring and improving VI memory usage.
May I know why this error occur? The error was not appear everytime.
thanks
Are you running the 32-bit version of LabVIEW or 64-bit?
08-17-2015 11:04 PM
Hi,
I was running 32-bit version of LabVIEW.
The error occur when i was running the full compile exe file but i can't confirm when the error will pop out.
thanks
08-17-2015 11:25 PM - edited 08-17-2015 11:25 PM
Have you looked at the LabVIEW help yet (like the error suggests)?
I can't see your VI because I don't have access to LV at the moment. Do you manipulate large arrays?
08-18-2015 12:40 AM
Hi Chen,
some remarks:
- cleaning up a VI (or better: its BD) will help to understand what it does!
- when you copy part of codes you should think about using subVIs and loops!
- having several controls with exactly the same label in a VI is bad. Using events on all those controls is very bad…
To answer your question in a general way: building histograms of data can be very memory consuming. (I don't have the DSC toolkit installed, so cannot comment with more details.)
08-18-2015 12:54 AM
Thanks for the reply.
By the way, may i know why the error mention about ERR_MergeErrors.vi?
thanks
08-18-2015 01:09 AM
08-18-2015 01:29 AM - edited 08-18-2015 01:36 AM
This sort of error is almost always a programming error. I can't look at your code right now but look for places where LabVIEW is allocating memory in loops. That includes loops where output values are being autoindexed into arrays. Also look for places where an error might result in a loop operating as you expect.
Mike...
08-18-2015 02:07 AM
You should really try to understand LabVIEW before attempting such a project. Your VI is full of race conditions (writing to a terminal and reading from a local variable of the terminal in parallel. No way to tell what happens in what order (Sel 1, Sel 2, Sel 3, etc)) and meaningless constructs (e.g. wiring a local variable directly to the control terminal of itself. (e.g. you are writing pen6 to a local varaible of itself then read the value of the local in the next frame. Why not eliminate the two locals and just wire the terminal where it is needed? There are dozens of cases like that!
Why are you writing the same diagram constants to the same hidden indicators wit every iteration? I don't see anything that would ever change the values.
What determines the loop rates?
Sorry, my laptop screen is not big enough to efficiently inspect the program any further. I also don't have your toolkits.
08-18-2015 02:35 AM
Yes, you are right, i basically doesn't have LabVIEW knowledge at all.
All the vi is very messy and a lot of meaningless constructs. It is very hard for people to throubleshoot.
My error handler was terrible. When error appear, even after the user acknowledge, the error will still keep poping out and user need to force shutdown LabVIEW to stop the error.
To prevent this, i connect all the error handler to a signal error handler, and disable the error message. For now, no error will pop out and it is bad because i do not know when the system got error.
I create the project by having one of my resigned senior's works.
I take his project and modify.
My project is basically get the real time reading from OPTO22 hardware and using Labview as a OPC Client to get the data. After that display it in schematic, trending and data logging.
And the overall structure contain totally seven PC connected in a star topology network structure, one act as an engineering workstation and the rest as an operating workstation.
I facing a lot of problem previously, for example, when first PC start the pump, and when the second PC is switch on, it auto turn off the pump, because the default value it false, at the same time, the first PC send true to the pump, so the pump will keep on and off. I manage to solve it by adding in event handler, so it won't send any signal when user doesn't go and change the button.
I manage to get all the things done by myself without any LabVIEW knowlege and a little bit of scada knowledge at the same time support from NI Application Engineer.
Actually for now, all the things looks fine and workable, just sometime the "not enough memory" error will pop out. I do not have time to study Labview for now and the project is urgent. We going to have T&C next week. I hope able to solve this error at the meantime.
thanks.