LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Parallel While Loops (One Firewire Aquisition, One Acquired Data Processing)

Hi All,
 
I post in the hope that someone out there can help me with a problem I cannot fix...
 
The library attached contains the program Basic12Video3.vi that should do the following...
 
It should allow image (video) aquisition from a firewire camera at a reasonable frame rate (30fps). While doing this it should also let the user interact with the image display such that it overlays markers on the video and also use the coordinates of these markers to calculate a grayscale image (kinoform) using a secondary process. This 'kinoform' is then displayed on a second monitor.
 
I have a VI that aquires images from a firewire camera and allows their display and also a VI that will calculate the kinoforms and display them. However, my problem occurs when trying to combine these two separate VIs.
 
When this program is run, no image is displayed from the firewire camera (and the loop only executes at ~1fps when it should really display at 30fps) and when the display is used to obtain coordinates for a parallel while loop this section of the program also fails to work.
 
I've been using LabVIEW for nearly a year now and thought that I would be able to combine the two working programs into a parallel loop system. However, it seems I don't quite know enough yet... Would I be better using two separate VIs that ran at the same time but used Global Variables? (Of note is that the program needs to be as fast as possible as ideally it would be a real time interactive piece of software).
 
Finally, when running the Basic12Video3.vi a dialog box will appear asking the user to choose certain parameters. To make it work properly please select '256' in the first option, '1152' in the second, and '-3' in the final.
 
Thank you for any help anyone can provide, it is much appreciated.
 
Daniel Burnham
0 Kudos
Message 1 of 3
(2,537 Views)
Hi Daniel,

I have had a look at your code and made a few changes, added timing to your loops for one. Also changed your local varaible to stop your loops to  use the stop button, and changed the mechanical action.

I moved the Overlay subVI to the case structure as there is no point clearing and reapplying the overlay every 20ms (timing I added). There might be a problem with this as I could not test the code after this change in that the overlay may only appear for the iteration of the loop that adds another point.

I have saved the code in LabVIEW 7.1 format as you did not state what version you were using.

I have seen the code work under LabVIEW 8.0 as my computer does not have firewire I can not test this in 7.1

Regards
JamesC
NIUK and Ireland

Message Edited by JamesC on 09-01-2006 10:24 AM

0 Kudos
Message 2 of 3
(2,512 Views)
JamesC,

It is easy to determine the version of a downloaded VI. Open the VI. If you get the * in the title bar showing that something has changed (almost always because the file path has changed), close the VI. In the dialog which pops up, select "List Unsaved Changes..." One of the changes will be the version in which the VI was last saved if it is different from the one you are using to open the VI. If you do not get the *, change something, for example move a control, then follow the close procedure.

Even though this is fairly easy, if would be nice if the Forum would automatically list the version of attached VIs.

Lynn
0 Kudos
Message 3 of 3
(2,504 Views)