LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Tab Control freezes but VI is still working

Hi,

I have a 1.9 MB VI. In a state machine I have an initialization, some configuration (large event case, ~30 events) and data adquisition. All controls and indicators are inside a Tab Control with five tabs. When I start the data adquisition, pressing a button on the first tab, tabs dissappear and I can see the data in a table and in a graph, everything works fine, I have another button to finish the data adquisition and return to the configuration, showing all tabs and the stop button of the VI. It works.

Then I need to make a second version of this VI, I need to configure some tables and graphs, the user can choose which channels to display, and so on. This second VI size is 3.1 MB. But there is a problem with this version, when I start the data adquisition the VI is working, and the data is being recorded, but the tab control freezes, I can't press the stop button but I can see (sometimes) the data in the configured arrays, what's the problem?

I am using a PXI-8171 Series with win2000 SP4, 256MB RAM. I don't understand why the first Vi works and not the second, any ideas?
Kindest regards,
Néstor

LabVIEW 2022 + DIAdem 2020 + Windows 11
0 Kudos
Message 1 of 5
(3,422 Views)
Is the daq in a different loop? (Producer/consumer).

Does one of the event case have code that takes very long to execute or doesn't finish at all? (If lock front panel is selected with event the front panel becomes unresponsive until it finishes executing the event case)

Do you automatically generate events? (User events/Value signal, these could lead to circular signalling filling the event structure queue)

André
Regards,
André (CLA, CLED)
0 Kudos
Message 2 of 5
(3,408 Views)
The DAQ is in another state of the state machine (standard state machine, case inside a while). The states are "Initialize", "Interface", "DAQ" and "stop". The VI starts with the initialize state, makes some stuff and when it finishes we go automatically to the next state, interface. Interface state has the event structure inside a while loop. The button that starts the DAQ is inside this event structure. This button is the stop for the while that contains the event structure, so all the code on it finishes before starting the DAQ. When in DAQ state, user can only press the stop button that ends the DAQ and moves the program to interface state. The only way to stop the VI is in this state, with another button (we must stop the DAQ before stopping the VI) that moves the program to stop state, where the main while of the state machine is stopped.
Kindest regards,
Néstor

LabVIEW 2022 + DIAdem 2020 + Windows 11
0 Kudos
Message 3 of 5
(3,403 Views)
Ok, I have found that the front panel freezes when I clic on the graphs or arrays that show the data. In the Interface state I have some "Mouse down?" events with these graphs and arrays, but this should not be working in the DAQ, because the event structure loop is finished, what happens?
Kindest regards,
Néstor

LabVIEW 2022 + DIAdem 2020 + Windows 11
0 Kudos
Message 4 of 5
(3,369 Views)
I finally fixed this changing "mouse down?" events for "mouse down", unchecking "lock front panel until the event case for this event completes" and disabling run-time pop-up menus in the LabVIEW options.
Kindest regards,
Néstor

LabVIEW 2022 + DIAdem 2020 + Windows 11
0 Kudos
Message 5 of 5
(3,354 Views)