Re: LV7 under Linux and buttons

2004-01-30 Thread Greg McKaskle
 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

2004-01-30 Thread Jim Kring
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

2004-01-30 Thread PJ M
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?

2004-01-30 Thread Uwe Frenz
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

2004-01-30 Thread Uwe Frenz
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

2004-01-30 Thread Bruce Ammons
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

2004-01-30 Thread Scott Serlin
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

2004-01-30 Thread Paul F. Sullivan
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

2004-01-30 Thread Scott Hannahs
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

2004-01-30 Thread George Gatling (Contractor)
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

2004-01-30 Thread Greg McKaskle
 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

2004-01-30 Thread Scott Hannahs
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

2004-01-30 Thread PJ M
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

2004-01-30 Thread Jim Kring
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

2004-01-30 Thread Greg McKaskle
 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