Re: LV7 under Linux and buttons
My problem still existst :-( If I do al ldd myapplication I get the following: libdl.so.2 = /lib/libdl.so.2 (0x40022000) libpthread.so.0 = /lib/libpthread.so.0 (0x40025000) libc.so.6 = /lib/libc.so.6 (0x40076000) /lib/ld-linux.so.2 = /lib/ld-linux.so.2 (0x4000) Nothing about Mesa... Then I searched for the mesa library and found it in different places: /usr/local/lv70/linux and /usr/local/lib/LabVIEW7.0 After that - I made a symbolic link to /usr/lib .. but without success... I also tried to edit the LD_LIBRARY_PATH .. without success The reference to the mesa library will not be from your application, but from the runtime engine. I believe in /usr/local/lib/LabVIEW 7.0, you should have a file named something like lvrtlib.lib, a mesa.lib, and some directories like resources and models. if you look at the libraries of the lvrtlib, it will reference mesa, and your application should reference this library, though it might do so dynamically. Anyway, if you have a mesa library near the runtime, it is probably being loaded, how about the mesa directory. It should contain about forty items with .ptc extension. If you don't have any luck with a simple example VI made into an application, I'd try reinstalling your runtime engine. I think you can find the installer on your CD, or you can download it from NI for free. Greg McKaskle
RE: NI Week 2003 presentation: Managing Large Data in LabVIEW
It's here: http://digital.ni.com/niweekpresentations.nsf/a3153572d74a4dd686256a8e00799 a3c/d367799bdf83d38c86256cf3006235dd?OpenDocument -Jim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Neville Dholoo Sent: Wednesday, January 28, 2004 2:12 PM To: Info-LabVIEW Mailing List Subject: NI Week 2003 presentation: Managing Large Data in LabVIEW Hi, Anybody have a copy of this presentation? Couldn't find it on the NI website. Thanks, Neville Dholoo Test Services Engineer Cellex Power Products Inc. 220-13155 Delf Place Richmond BC Canada V6V 2A2 604 248 3683 604 270 4304 fax www.cellexpower.com
Re: NI Week 2003 presentation: Managing Large Data in LabVIEW
Neville,Here is Jim Kring answer to the very same question I asked last december.PJMThe download is located here: http://digital.ni.com/niweekpresentations.nsf/a3153572d74a4dd686256a8e00799 a3c/d367799bdf83d38c86256cf3006235dd?OpenDocument If you go to http://ni.com/info and enter the info code "niweek03" it will take you to the listing that ***includes downloads***. The normal listing only includes the abstracts. -Jim Do you Yahoo!? Yahoo! SiteBuilder - Free web site building tool. Try it!
Re: Which delimiter to use for TCP functions?
Eric, you asked on Thu, 29 Jan 2004 15:16:56 -0800: Hi all, maybe someone has run into this problem before: I have a program that uses the following code: Several arrays (numeric) are flattened to strings, then the strings are concatenated (with a delimiter between each string) before it is sent to a TCP write function. On the other end, I parse the TCP read string using the match pattern with the delimiter being the same as the write side (currently a tab constant). Pretty basic, and works fine most of the time. However, it seems that sometimes a tab shows up as part of the flattened string, and confuses the match pattern into thinking this is the delimiter. This causes all kinds of havoc with the program. Is this a possible situation? Does anyone know of a good delimiter that is not one of the flattened string characters (if it exists)? Thanks in advance,=20 Eric Scott Christian Altenbach [EMAIL PROTECTED] answered Eric, Your problem has really nothing to do with TCP per se. Instead of a delimiter, prepend each flattened substring with its flattened string lenght before concatenating them. When you unflatten, just clip the first 4 chars of the string, unflatten to I32, then clip a string with that lenght, clip another I32, and so on. If the strings are shorter than 256, you could use an U8 for length. There is another possibel aproach that does a transparent exchange of your delimiter chars in the original data with some extra code. This may be faster ore more code effective than Christians aproach, but as always. It depends... How to do it? You define an escape character (maybe really Esc=0x1B or even better a char that is unlikely to show up in your data). Than replace any occurance of this char in your original data with a sequence of escape0x1 and afterwards all occurances of delimiter with escape0x2. Send this data and perform the inverse operation before using your delimiter. Both transcodings can be transparent. I do not have VIs at hand, but exactly this is what is done when transfering our medical measurements between different 'nodes' (may those be instances of operational units, devices or even machines). A side note: You should test a set of your raw data and do a histogram of all chars therein. Use the two chars that do show up least often as escape and as delimiter. Greetings from Germany! -- Uwe Frenz ~ Dr. Uwe Frenz Entwicklung getemed Medizin- und Informationtechnik AG Oderstr. 59 D-14513 Teltow Tel. +49 3328 39 42 0 Fax +49 3328 39 42 99 [EMAIL PROTECTED] WWW.Getemed.de
Re: Teststand 3.0 question
Scott, You wrote: Does anyone know how to set up teststand in order to pass parameters into and out of a VI? I just evaluating it right now to see if it is worth buying. I have a lot of VIs that I wrote previously and wanted to try to insert them into teststand with a minimum amount of effort. Any suggestions? I'm trying and working with TS3 since about a year. Constantly switching between 'Woow, what a great product' and 'What the heck do they mean with that' resp. 'What was the name of that damned variable?'. It is quite easy to call a VI and to pass data between both sides. There are two ways. 1. You can pass an activeX ref to the VI and use SubVIS to pass data between LV TS. There are several examples in TS. 2. You can define locals, parameters and different types of globals in TS and 'connect' those with fitting data types on the connector pane of the VI. This works only in the cooperation of TS3 and LV7, AFAIK. But an update to Dev Suite Test Edn is higly recommended as it costs not soo much more than simply buying TS alone and you get amoung others a one year SSP. I still can not tell you if TS is worth its costs _for_us_. It is a really complex product. But is is for sure not as easy to handle like NIs marketing tells us. The best 'poor comparision' I have found is TS is like a helicopter - a very powerfull tool, but one needs a lot of expertise to operate it. And, what I am troubled most with, is, it is much more C-related than LV-related. So often I end transfering even simple processing into a simple VI rather than doing it in TS, because of my missing C competence. There is a rather dead Info-TestStand and a more frequented forum on NIs pages for TS. But until now I was unable to find anyone here in Germany that is using TS and is willing to share competence like here on this list. I hope for the German NI Days VIP2004 in March... Greetings from Germany! -- Uwe Frenz ~ Dr. Uwe Frenz Entwicklung getemed Medizin- und Informationtechnik AG Oderstr. 59 D-14513 Teltow Tel. +49 3328 39 42 0 Fax +49 3328 39 42 99 [EMAIL PROTECTED] WWW.Getemed.de
RE: Report in PDF Format
I have been using CutePDF to generate PDF files for a while. It is a free utility and it works pretty well. It installs as a printer, so all you have to do is print to the CutePDF printer. It will prompt you for a file name to store the PDF file in. To find it, search the internet for CutePDF. I haven't tried this on a LabVIEW panel, so I don't know how well it will work. It does a great job with Word and a few others, though. Bruce -- Bruce Ammons Ammons Engineering www.ammonsengineering.com (810) 687-4288 Phone (810) 687-6202 Fax -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of BCD - Jérôme Orteu Sent: Friday, January 30, 2004 3:03 AM To: [EMAIL PROTECTED] Subject: Report in PDF Format Hello everyone, Is someone known if it's possible to generate a report in pdf format from LabVIEW? And this one without install the Acrobat (professional or standard) software. I imagine a vi front panel saved in a pdf format file, similar of the report tools in LabVIEW to create html files. Thanks Jerome Orteu BCD microtechnique SA Switzerland
RE: Teststand 3.0 question
Thanks for the info Uwe. I'm still debating whether to use this tool or not. I do like many aspects of it but with only 30-days to evaluate it and being pressed for time on my other projects, I just can't tell. Since one has to have certain variables coming out of the VI in order for teststand to communicate with the VI, I have to modify a lot of my previously written code. Also very time consuming. Can you elaborate more on this statement of yours below. So if I understand you correctly, I cannot use LV6.1 to do this? I have some old machines that don't have the harddrive space to accomodate LV7.1. I would have to update their harddrives which is simple to do but do I want to pump more money into an ailing machine or just go out and get a few new ones. After a while, it doesn't make sense to put money into an outdated machine. 2. You can define locals, parameters and different types of globals in TS and 'connect' those with fitting data types on the connector pane of the VI. This works only in the cooperation of TS3 and LV7, AFAIK. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Uwe Frenz Sent: Friday, January 30, 2004 3:25 AM To: Scott Serlin Cc: LV-Info, list Subject: Re: Teststand 3.0 question Scott, You wrote: Does anyone know how to set up teststand in order to pass parameters into and out of a VI? I just evaluating it right now to see if it is worth buying. I have a lot of VIs that I wrote previously and wanted to try to insert them into teststand with a minimum amount of effort. Any suggestions? I'm trying and working with TS3 since about a year. Constantly switching between 'Woow, what a great product' and 'What the heck do they mean with that' resp. 'What was the name of that damned variable?'. It is quite easy to call a VI and to pass data between both sides. There are two ways. 1. You can pass an activeX ref to the VI and use SubVIS to pass data between LV TS. There are several examples in TS. 2. You can define locals, parameters and different types of globals in TS and 'connect' those with fitting data types on the connector pane of the VI. This works only in the cooperation of TS3 and LV7, AFAIK. But an update to Dev Suite Test Edn is higly recommended as it costs not soo much more than simply buying TS alone and you get amoung others a one year SSP. I still can not tell you if TS is worth its costs _for_us_. It is a really complex product. But is is for sure not as easy to handle like NIs marketing tells us. The best 'poor comparision' I have found is TS is like a helicopter - a very powerfull tool, but one needs a lot of expertise to operate it. And, what I am troubled most with, is, it is much more C-related than LV-related. So often I end transfering even simple processing into a simple VI rather than doing it in TS, because of my missing C competence. There is a rather dead Info-TestStand and a more frequented forum on NIs pages for TS. But until now I was unable to find anyone here in Germany that is using TS and is willing to share competence like here on this list. I hope for the German NI Days VIP2004 in March... Greetings from Germany! -- Uwe Frenz ~ Dr. Uwe Frenz Entwicklung getemed Medizin- und Informationtechnik AG Oderstr. 59 D-14513 Teltow Tel. +49 3328 39 42 0 Fax +49 3328 39 42 99 [EMAIL PROTECTED] WWW.Getemed.de
Re: debugging reentrant executions
Uwe, You wrote: ...1. Those reentrant daemons have a non-reentrant subvi as a LV2-style global. Will this LV2Global run just in one instance as expected, e.g. can I rely on its display? A non-reentrant subVI behaves normally even when called by a reentrant subVI. While the reentrant subVIs can run in parallel, any portions data dependent on the non-reentrant subVI will be serialized. This can be used to protect resources from multiple simultaneous access, for instance. Its panel display is reliable. ...3. If, as in my case, a reentrant daemon does not stop as expected, is there a save way to shut it down? How about the OpenG Kill All VIs tool. -- EnWirementally, Paul F. Sullivan SULLutions (781)769-6869 when a single discipline is not enough visit http://www.SULLutions.com
Re: Subpanels in 7.0
At 08:47 -0700 01/30/2004, Jim West wrote: It is a mystery to me why the VI cannot be open or running. This eliminates several useful scenarios. It also eliminates the confusion of having two different frontpanels active at the same time. The open one or the sub-panel one! They can be running. The examples show several running VIs. examples/general/controls/subpanel.llb Item 2, is possible. If I am thinking of what you are describing, then I have done that. Item 3,just means removing it from the subpanel before opening its front panel. Or vice-versa. Keep the reference to it open so it stays in memory. -Scott
Re: Managing VISA Resources
At 06:08 PM 1/29/2004, you wrote: What is a VISA reference? I assume it points to a memory location containing relevant information about the particular VISA resource. How large is this memory space? It's not strictly a pointer, but you can think of it like that. It's a few bytes big, probably tens of bytes. If you really need an exact value, I can look it up for you, but I'd want to know why. The relevant information contains things like the name of the resource, the C viSession value, etc. I'm not sure what you're getting at with this line of questioning. Is it just a memory/performance issue? It is only a performance issue, though not just speed. The exact size of the memory is not important. The question behind the question is that I have noticed a considerably higher failure rate if I open and close the reference every time I use a particular instrument. If I have a Get Waveform that opens and closes the ref on each call sooner rather than later I get failures, some as LV errors, but more often as system hangs. This was the original motivation for this project. I'm pretty sure it's not allocated until used. I'm pretty sure it's left allocated, to make it easier to detect stale references. This should make repeated open/close calls pretty efficient... or is there a lot more work in open than just memory allocation? Can you say more about what happens in a call to Open? This might be a case where you want to open up different sessions to the same device, and use the VISA Lock and Unlock functions to protect them from each other. I don't see a need for more than one ref/device. But I can imagine two one-icon VIs trying to operate on the same instrument at the same time and interleaving their read/write operations. I am imagining a semaphore with the name of the VISA ref. BTW, I didn't mean for this to become an exclusive conversation, but for some reason my Cc's to info-labview have started bouncing :( George
Re: Multiple functions in one SubVI
The aim is to have a SubVI with a name for the topic (e.g. mathematics) and a list of functions this SubVI provides by selecting one (e.g. through an unbundle cluster by name). I think you want to use an enumerated numeric control. It will give a popup menu, sort of like the unbundle cluster by name does, and that input will go into the subVI. The user can popup on the subVI and create a control or constant that is already wired in. Greg McKaskle
Re: Subpanels in 7.0
At 09:12 -0800 01/30/2004, PJ M wrote: Another strange thing (to me) is why don't I *automatically* get a subpanel refnum when I create a subpanel (instead of that insert VI method) ? Also, because of that, whatch out for these tranparent supanel with no scrollbar (it is so easy to get more that one on the FP without any indication on the BD). Because the subpanel accepts a vi ref number and not generates it. The ref number is for whatever vi you want to put into it. The subpanel is a sink for references not a source. -Scott
Re: Subpanels in 7.0
Scott I am talking about a Subpanel Reference, not about a VI ref. I am expecting a behavior similar to an ActiveX container (drop an ActiveX container on the FP and you get an ActiveX Ref on the BD), PJMScott Hannahs [EMAIL PROTECTED] wrote: At 09:12 -0800 01/30/2004, PJ M wrote:Another strange thing (to me) is why don't I *automatically* get a subpanel refnum when I create a subpanel (instead of that "insert VI" method) ?Also, because of that, whatch out for these tranparent supanel with no scrollbar (it is so easy to get more that one on the FP without any indication on the BD).Because the subpanel accepts a vi ref number and not generates it. The ref number is for whatever vi you want to put into it. The subpanel is a sink for references not a source.-Scott Do you Yahoo!? Yahoo! SiteBuilder - Free web site building tool. Try it!
RE: Subpanels in 7.0
Philippe, Actually, an ActiveX container's Value is a reference to the one (and only one) ActiveX control that is loaded into the container *at edit-time* (not a reference to the ActiveX container Control on the FP). When you drop an ActiveX container on the FP you get a Terminal on the BD (not a control refnum). The data (value) that the Terminal will output at run-time is an ActiveX reference to the control within the container. Since a SubPanel can be reassosiated with new VI references and only *at run-time*, NI folks decided not to use the same design as the ActiveX container, and eliminate the Subpanel value (and BD terminal), which would logically contain a VI Reference. However, flowing this data through a diagram in a SubPanel typed wire would be rather pointless, since the VI Reference type already exists. Interestingly, the subpanel, is the only FP control that I can think of which has no data/value (actually, its value is a null variant), and therefore it has no terminal (or LabVIEW suppresses it). Finally, the reason you have an invoke node than a reference is that NI folks thought that you would rather have an explicitly linked invoke node on the BD (for calling directly on the BD of the VI containing the SubPanel), than an explicit Reference (for passing to and calling from a subVI). Regards, -Jim -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of PJ M Sent: Friday, January 30, 2004 1:31 PM To: Scott Hannahs; LABVIEW INFO Subject: Re: Subpanels in 7.0 Scott I am talking about a Subpanel Reference, not about a VI ref. I am expecting a behavior similar to an ActiveX container (drop an ActiveX container on the FP and you get an ActiveX Ref on the BD), PJM Scott Hannahs [EMAIL PROTECTED] wrote: At 09:12 -0800 01/30/2004, PJ M wrote: Another strange thing (to me) is why don't I *automatically* get a subpanel refnum when I create a subpanel (instead of that insert VI method) ? Also, because of that, whatch out for these tranparent supanel with no scrollbar (it is so easy to get more that one on the FP without any indication on the BD). Because the subpanel accepts a vi ref number and not generates it. The ref number is for whatever vi you want to put into it. The subpanel is a sink for references not a source. -Scott Do you Yahoo!? Yahoo! SiteBuilder - Free web site building tool. Try it!
Re: Subpanels in 7.0
I am talking about a Subpanel Reference, not about a VI ref. I am expecting a behavior similar to an ActiveX container (drop an ActiveX container on the FP and you get an ActiveX Ref on the BD), The subPanel works the way it does in part because having a terminal implies it is capable of having a default value. When it can be supported, we might be able to have an initial value for the subPanel, and can be changed by writing another VI ref to it. It seemed like it was worthwhile putting it out there like this for now. Greg McKaskle