LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to trigger an event

I have an application in which I do two things:

1. Monitor 8 data channels (all analog) and write the data to file at a sample rate of about 100Hz.

2. Play an AVI movie in a LabView ActiveX control for Microsoft Media Player.

I wrote the VI, and it works fine, so far. The movie shows up in a window on the front panel, along with some graphs that display the data being collected from the 8 data channels (while it is simultaneously written to file).

I need to add the following feature, and I am not sure of the best way to do it.

CURRENTLY:

Right now, when I run the VI, it asks me for a name for the data file (to which to write data collected by the VI), and also the name of the AVI movie file to play. It then loads the AVI movi
e file in Media Player. If I click the Play button in the Media Player window in the VI front panel, the movie begins playing.

WHAT IS NEEDED:

One of the 8 channels of data being collected is a trigger channel. The noise on this channel is about 0.2 volts. It receives trigger pulses periodically of around 4.5 volts (100 mS duration). I have code in place that checks to see if the voltage is over 3.0 volts (trigger ON) or below 3.0 volts (trigger OFF). The trigger is activated hundreds of times during the the 8-10 minute period the movie plays.

I need to detect the FIRST trigger and use it to automatically start playing the movie. The requirements are:

1. The movie should begin to play with the first trigger ON state detected.

2. The movie should not be interrupted by further ON/OFF activity on the trigger channel.

Can anyone offer a neat solution for that?

I am relatively new at LabView, so please be as explicit as possible.

Thank you.
0 Kudos
Message 1 of 3
(2,886 Views)
This is pretty simple by using a shift register. Look at the attached example and see if this is what you need. Good luck.
Message 2 of 3
(2,886 Views)
Rather than try to explain, I drew a little vi with comments that I think
will help you with your problem.
http://w3.one.net/~marksowa/newsgroup1.vi

Mark

"JNR" wrote in message
news:5065000000080000001A300000-1004225886000@exchange.ni.com...
> I have an application in which I do two things:
>
> 1. Monitor 8 data channels (all analog) and write the data to file at
> a sample rate of about 100Hz.
>
> 2. Play an AVI movie in a LabView ActiveX control for Microsoft Media
> Player.
>
> I wrote the VI, and it works fine, so far. The movie shows up in a
> window on the front panel, along with some graphs that display the
> data being collected from the 8 data channels (while it is
> simultaneously written to file).
>
> I need to add the following feature, and I am not sure of the best way
> to do it.
>
> CURRENTLY:
>
> Right now, when I run the VI, it asks me for a name for the data file
> (to which to write data collected by the VI), and also the name of the
> AVI movie file to play. It then loads the AVI movie file in Media
> Player. If I click the Play button in the Media Player window in the
> VI front panel, the movie begins playing.
>
> WHAT IS NEEDED:
>
> One of the 8 channels of data being collected is a trigger channel.
> The noise on this channel is about 0.2 volts. It receives trigger
> pulses periodically of around 4.5 volts (100 mS duration). I have code
> in place that checks to see if the voltage is over 3.0 volts (trigger
> ON) or below 3.0 volts (trigger OFF). The trigger is activated
> hundreds of times during the the 8-10 minute period the movie plays.
>
> I need to detect the FIRST trigger and use it to automatically start
> playing the movie. The requirements are:
>
> 1. The movie should begin to play with the first trigger ON state
> detected.
>
> 2. The movie should not be interrupted by further ON/OFF activity on
> the trigger channel.
>
> Can anyone offer a neat solution for that?
>
> I am relatively new at LabView, so please be as explicit as possible.
>
> Thank you.
0 Kudos
Message 3 of 3
(2,886 Views)