SignalExpress

cancel
Showing results for 
Search instead for 
Did you mean: 

signal express - coherence

Hi-
 
I am trying to run signal express to collect a bunch of datasets and determine their coherence (the coherence of the transfer function -- frequency spectrum). The problem is, that I want to be able to collect one sample, then view the coherence, then take another sample, view the coherence, etc (until I see that the coherence is "good"); then I want to stop sampling and have the averaged data ready. I know that there is a conditional repeat (ie. until you have done x averages), but I am wondering if there is the ability to look at the coherence "real-time". Any help would be greatly appreciated.
 
Thanks,
Kaitlyn
0 Kudos
Message 1 of 3
(6,079 Views)

Hi Kaitlyn,

The only way I could think to do this was to write a LabVIEW VI (that I'm including below) which you can call using the "Run LabVIEW VI >> Run LabVIEW 8.2 VI". All it does is display a dialog box and returns a boolean back to SignalExpress. When in combination with a Conditional Repeat step, it will allow you to force SignalExpress to wait until you dismiss the dialog before repeating the loop. This should allow to inspect the Coherence and exit the repeat loop when you are ready.

I wrote the VI's UI to allow you to change the message text of the dialog as well as both the "Next" iteration button and the "Exit" button, under the Run LabVIEW VI's "Configure VI" tab.

When configuring your project, set the Conditional Repeat to stop when the Run LabVIEW VI returns "Exit?" = True. When you do this, the Run LabVIEW VI will automatically be pulled into the Repeat loop, but also make sure that you manually drag your other measurement steps into the loop as well. You could also configure your Conditional Repeat to exit on both (Exit? = True OR averaging done = True).

One warning when using a Run LabVIEW VI which generates a pop-up dialog like this one. It is sometimes possible that the dialog will appear behind the main SignalExpress window; this is very rare however. So if you are ever expecting a dialog which isn't there, check behind the main Application window.

I hope this helps.

Phil

Message 2 of 3
(6,073 Views)
Hi Kaitlyn,
 
I'm including a new version of the VI (which is now inside an LLB because it has a subVI). This version has an input so that you pass your coherence output it. This will do 2 things:
 
1) Force SignalExpress to execute your dialog VI after your coherence result has been generated. The problem with the previous version I posted, was that SignalExpress could choose to execute the dialog VI before the coherence result was generated, which is what the "Execution Separator" indicated.
 
2) The steps' UIs are not updated until the iteration completes. Since the Dialog halts the execution, looking at your coherence while the dialog is up would display the previous iteration, not the current one. To solve this issue, the new VI creates a dialog which contains a Graph to display your coherence. That value will be the current value.
 
Please use the VI of the same name inside the LLB in your Run LabVIEW VI 8.2 step.
 
On that note, I've filed a Suggestion Report so that this behavior can be addressed natively inside SignalExpress in a future release.
 
Sorry for the inconvenience.
Phil
 
0 Kudos
Message 3 of 3
(6,051 Views)