LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

cin source?

I have a program written on an old version of LV (4.x, I think), and am trying to run it on LV 8.x on a different box. There is a CIN that references some code on the old platform. How do I find this referenced code (so that I can tranfer it)? Thanks a lot.
0 Kudos
Message 1 of 10
(4,101 Views)

Hi,

The reference code (or lsb) is statically linked and already compiled with the VI. So you dont have to transfer any other files/codes apart from the VIs. Are you unable to run the VI in LabVIEW 8.x ?

Tunde

 

0 Kudos
Message 2 of 10
(4,084 Views)
Thanks for responding. No, the VI does not run on LV 8.x. (By the way, the old version of LV is 5.1.) Below are error messages and warnings from trying to run the VI in LV 8.x, and some notes from our undergrad.

Thanks.

Warnings that came up the first time I downloaded and ran the file
C:\Documents and Settings\Dave Erskine\Desktop\8-28-06.vi
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ Create" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\Basics.llb\IMAQ Create".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ Grab Acquire.vi" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\driver\imaqhl.llb\IMAQ Grab Acquire.vi".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ Grab Setup.vi" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\driver\imaqhl.llb\IMAQ Grab Setup.vi".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ ImageToArray" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\Basics.llb\IMAQ ImageToArray".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ Init.vi" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\driver\imaqhl.llb\IMAQ Init.vi".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\IMAQ WindDraw" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\vision\Display.llb\IMAQ WindDraw".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\Read From Spreadsheet File.vi" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\Utility\file.llb\Read From Spreadsheet File.vi".
- The VI expected to be at "C:\Documents and Settings\jge\MYLABVIEW\12-18-99.llb\Write To Spreadsheet File.vi" was loaded from "C:\Program Files\National Instruments\LabVIEW 8.2\vi.lib\Utility\file.llb\Write To Spreadsheet File.vi".


Warning that comes up when I start the file 8-28-06
C:\Documents and Settings\Dave Erskine\Desktop\12-18-99.llb\IMAQ Convert
- The CIN referenced from this VI uses an external subroutine. External subroutines are no longer supported in this version of LabVIEW.

Note:
Whenever I open the file 8-28-06 it always searches for all the sub vi's, and I don't know where they are so I just hit cancel, and it continues to load as many more of the vi's as it can on its own. I think if I knew the location of the sub vi's (which I don't think exist), then it would load just fine, but I don't know that for sure.


Warnings that come up when the program is run

Error list
IMAQ Copy
Block Diagram Errors
Code Interface Node: LabVIEW subroutine link error
The external subroutine could not be found
Code Interface Node: object code is not loaded
This Code Interface Node has no code to execute. Right-click the node, select Load Code Resource from the shortcut menu, and select the object code file (.lsb)
Note:
The error list that comes up for IMAQ Copy also comes up for a bunch of other VI's, like IMAQ Add, AO Buffer Config., IMAQ Convert, etc.

There is only one location in the block diagram that has errors in the wires and that is located around IMAQ Copy, IMAQ Add, and so forth.
0 Kudos
Message 3 of 10
(4,080 Views)
Hi,

In regards to the missing IMAQ functions, what version of IMAQ do you have?  Did you install the IMAQ driver after you upgraded to LabVIEW 8.x so that it populates the IMAQ/Vision palette correctly?  Also, do you have NI-Vision?  If so, it is recommended to use Vision 8.0 with LabVIEW 8.x.  Since you are upgrading over several major versions of software, you might also want to take a look at the following document, in particular the Missing VIs section (even though the versions discussed are different than this circumstance).

Upgrading IMAQ with LabVIEW FAQ

Hopefully this helps with the IMAQ portion of this issue.

Regards,

Vu
0 Kudos
Message 4 of 10
(4,053 Views)


@Vudoo wrote:
Hi,

In regards to the missing IMAQ functions, what version of IMAQ do you have?  Did you install the IMAQ driver after you upgraded to LabVIEW 8.x so that it populates the IMAQ/Vision palette correctly?  Also, do you have NI-Vision?  If so, it is recommended to use Vision 8.0 with LabVIEW 8.x.  Since you are upgrading over several major versions of software, you might also want to take a look at the following document, in particular the Missing VIs section (even though the versions discussed are different than this circumstance).

Upgrading IMAQ with LabVIEW FAQ

Hopefully this helps with the IMAQ portion of this issue.

Regards,

Vu


I think someone saved the application to a LLB and somehow included some IMAQ functions to the LLB too. Try to look in the LLB to find any IMAQ.... function and delete them. LabVIEW will then resort to searching them inside the LabVIEW distribution and hopefully find it inside the IMAQ Toolkit. Possibly there are other functions inside the LLB that are actually LabVIEW provided and should/could go away too. But try step for step and of course keep a backup. Someone might have saved self developed functions as IMAQ.... Vis too, and then you might need to get them back somehow. But in general you should get rid of any standard VI that comes with LabVIEW or its Toolkits inside that LLB.

Or maybe you installed IMAQ Vision 5.1 in LabVIEW 8. Then that won't work since IMAQ Vision 5.1 used CINs but has been ported to use DLLs since and I would think you need at least IMAQ Vision 7.0 for it to work in LabVIEW 8.

Rolf Kalbermatter

Message Edited by rolfk on 03-20-2007 10:26 PM

Rolf Kalbermatter
My Blog
0 Kudos
Message 5 of 10
(4,044 Views)

Thank you.  I loaded NI Vision Acquisition ver. 8.2.1 from a CD also labeled with: NI-IMAQ 3.7, NI-IMAQdx 3.0, IMAQ I/O 2.0.1.  I did this after upgrading from LabVIEW 8.0 to 8.2.

After deleting the IMAQ functions from the old code, LabVIEW did not find them in the new IMAQ toolkit.  I then loaded those old IMAQ files from the old source into a directory on the new platform, and pointed there when LabVIEW prompted for each routine.  There was one VI that I could not find on the old platform (somewhat mysteriously), but otherwise the only errors I got were for ".lsb" routines, like "ADD.lsb" which somehow goes with "IMAQ Add".  I saved the result.  I then ran "Convert VI to use LabVIEW 7 Image Datatype.llb" from the FAQ to fix the broken wires.  The code is still broken, but appears to be somewhat improved.  Any other suggestions?

Thanks.

0 Kudos
Message 6 of 10
(3,998 Views)

Oh, those "*.lsb" files were not found on searches of either platform, although other .lsb files were found on the old platform.

0 Kudos
Message 7 of 10
(3,994 Views)


@cave man wrote:

Thank you.  I loaded NI Vision Acquisition ver. 8.2.1 from a CD also labeled with: NI-IMAQ 3.7, NI-IMAQdx 3.0, IMAQ I/O 2.0.1.  I did this after upgrading from LabVIEW 8.0 to 8.2.

After deleting the IMAQ functions from the old code, LabVIEW did not find them in the new IMAQ toolkit.  I then loaded those old IMAQ files from the old source into a directory on the new platform, and pointed there when LabVIEW prompted for each routine.  There was one VI that I could not find on the old platform (somewhat mysteriously), but otherwise the only errors I got were for ".lsb" routines, like "ADD.lsb" which somehow goes with "IMAQ Add".  I saved the result.  I then ran "Convert VI to use LabVIEW 7 Image Datatype.llb" from the FAQ to fix the broken wires.  The code is still broken, but appears to be somewhat improved.  Any other suggestions?

Thanks.



You will have to upgrade to a recent version of the IMAQ Vision Toolkit! NI-IMAQ is the driver for NI image acquisition cards. In order for those cards to be usable in LabVIEW, NI-IMAQ also installs a few functions from the IMAQ Vision Toolkit into LabVIEW. But that are only the absolute bare IMAQ Vision functions to get an image into LabVIEW and display it on screen.
IMAQ VIsion is a much broader product with image analysis, calculation, editing etc functions of all sorts and IMAQ Add and similar functions belong definitely to IMAQ Vision. IMAQ Vision in the old days used CINs (which are still supported in LabVIEW), and external code resources (that are not anymore supported since about LabVIEW 6.0) that were used to share code between multiple CIN's.

And if you think they did that on purpose to make IMAQ Vision break you are certainly not right. Code resources were a fragile thing to support on new platforms such as what has been added to LabVIEW for Linux and actually three times already for the Macintosh (PPC, MacOS 10, Mac Intel, with the last being a work in progress), the various real-time platforms such as LabVIEW RT for several hardware platforms, LabVIEW FPGA, LabVIEW Embedded and what else there will be in the future ;-).
With the shared library node being a good and since about LabVIEW 6 almost perfect alternative that incidentially has a much better maintainability for large C source projects such as IMAQ Vision is, the choice was obvious to invest the resources into this area rather than try to maintain a proprietary, and badly understood alternative, which at the time of LabVIEW 3.0 that had to run on Windows 3.1 and MacOS 6.x was the only solution that allowed inclusion of external code in a somewhat unified manner.

So the old IMAQ Vision Toolkit can't run on newer LabVIEW platforms but those functions are not free unlike the few basic functions you can get when installing NI-IMAQ. Talk to your local sales representative about an upgrade for IMAQ Vision. If you have the original license somewhere you should be able to get a good upgrade deal.

Rolf Kalbermatter
Rolf Kalbermatter
My Blog
0 Kudos
Message 8 of 10
(3,988 Views)
Thanks.  We now have the Vision Development Module and that got rid of the IMAQ Add, Copy, and Convert errors.  LV still can't find "AO Buffer Config", "copy.lsb", and a couple of other files with similar extensions.
 
Thanks.
0 Kudos
Message 9 of 10
(3,850 Views)


@cave man wrote:
Thanks.  We now have the Vision Development Module and that got rid of the IMAQ Add, Copy, and Convert errors.  LV still can't find "AO Buffer Config", "copy.lsb", and a couple of other files with similar extensions.
 
Thanks.


Those are traditional NI-DAQ VIs. You will need to install the driver CDs, that came with your LabVIEW CD too, and make sure that you select the traditional DAQ instead of DAQmx.

Rolf Kalbermatter

Message Edited by rolfk on 04-07-2007 08:39 AM

Rolf Kalbermatter
My Blog
0 Kudos
Message 10 of 10
(3,843 Views)