In a typical software application, when you perform a "Save All" action you would expect it to save all of your open documents or working files, right? Not so in LabVIEW. Apparently LabVIEW is not a typical application. Even though I ask LabVIEW to please save all my VI's. It doesn't. I can see that it doesn't because when if I open up a VI that is on the diagram of another visible VI, I see an asterisk in the titlebar indicating that the VI has unsaved changes. In LabVIEW 8.5.1 there are two "save all" menu items, one called "save all" and another called "save all (this project)". I've tried both and neither produces the expected results.
It's possible that the behavior of the "save all" has changed over the last four or five LabVIEW versions. In the past, the "save all" menu function would save ALL vi's in memory. Regardless if the front panel is visible or not. I'm thinking that this is not the case anymore and now LabVIEW only saves VI's with their front panel visible. An exception to this rule is that LabVIEW somehow remembers if you've opened a VI with unsaved changes and then closed it (without saving changes) thus actually saving it when you later perform a "save all".
Is all of this true? If so, then is there any way to perform the old-style "save all"?
Hi i'm new in this forum, my question is related to my thesis that i'm working right now, my problem if you could help me, is that i can't see any images from the network camera wich i'm working with, i have read some tutorials where they say that i have to use an ActiveX container, but now i'm lost. These are the tools that i'm using:
-Labview 7.1 -NI-IMAQ Vision 7.1 -Network Camera (veo europe observer plus)
The point of this project is to realise a system wich could recognize contours for example of a circle. Thanks in advanced
Last post made by: normandinf on Yesterday, 08:33 PM
Hello: I´m trying to log User Defined Events to a Citadel Database. I've created a Citadel Database, some Shared Variables, and I've configured the Libraries to Log Alarm and Event data to the same database used for Data Logging. I thought that calling the "Set User Defined Event" VI would generate the event and log it to the database. However this doesn't happen, because I'm not able to log any event to the database. When I try to query the database using the "Alarm and Event Query" VI, I get an error message that says: "The given Citadel Database is not currently configured to log alarms to a relational database", but the database IS configured to log alarms (It's specified in the library properties). I can log data and see the traces in MAX/LabVIEW, but can't log alarm or event data.
I've checked out the database directory and the files "mssql.ldf" and "mssql.mdf" are missing, but I don't know why. The default database that comes with DSC has both files, and when I query it I have no problems, but all the databases that I create via MAX or LabVIEW doesn't have that files. In further investigation I've found that this may be happening by a problem in SQL Server Express (the DB engine behind Citadel) so I uninstalled/reinstalled DSC (which includes SQL Server Express) but the problem is still there. I can see that the events are generated, because I can see them when I call the "Read Events" VI, but I can't log them to the database. This is driving me mad, no more ideas right now. Any help is appreciated. I'm using LabVIEW and DSC 8.2.1 Thanks in advance. Robst.
Hi all, i have relaized an implementation of "multiple points queue". in other words "one enqueuer - multiple dequeuer" . This is an alpha version so please keep in mind this when you'll find the bugs. I would like to improove the code mainly the mechanism of registration as "listener" of a queue, so please give me all your feedbacks
Ciao, Alessandro
Last post made by: Eugen Graf on Yesterday, 04:01 PM
I'm been using LabView for 2 weeks so I'm relatively new to this. This VI is designed to control a infrared heater. It is supposed to compare the actual temperature to the set temperature, hold that set temperature for a X amount of minutes, by outputting voltage to the controller of the infrared heater. I'm not sure if the timing for this VI is correct, so can someone take a look at it and let me know? Also, help for any part of this VI is needed so let me know if there's a better way to do something.
Thanks a lot.
Edit: Let me know if you need me to explain something I did on the VI.
Last post made by: mjagani on Jul 7 2008, 08:36 PM
I can't seem to speed up the data acquisition and I am not sure where the bottleneck is. It is (what I think) a fairly simple VI created to read two voltages and output another. I am only able to get recordings at maybe 2-3Hz; which is not very good. Previously the same system was operating on Labview 3 on a apple II taking data at something like 40Khz and signal averaging - which is where I would like to eventually get.
if i want to use the web camera to capture the picture for analyze to labview is it can use normal web camera? and what other equipment for connect(ex. board,usb etc.) i 'm new user of labview and lava if i do anything mistake i'm sorry ^_^ thank you for comment....
I’m very excited to announce a new ExpressionFlow Studio video series that will concentrate on LabVIEW software development. The first episode Objects and Classes starts an ExpressionFlow Studio series introducing to LabVIEW object-oriented programming.
I am thinking about a policy which allows our company to track which user.lib VI is used where so we can decide for which programs we have to retest upgrades of VI libraries. I want to be able when building an application to read which VIs are used inside the app. A simple routine is reading all of the children VIs and store this array. A more sophisticated way is a cross-link database where for every reuse VI is tracked in which applications it is used. I am thinking to give each reuse VI a special tag to have an easy access database field. Some option are:
VI description with a special string like ***Internal Reference #### Version 0.9*** (NI has such fields)
A tag on the frontpanel like OpenG has
A tag on the block diagram
A tag using VI tags
I am thinking about the latter, the tags are invisible to the user, can be accessed via VI server, the downside is that they are not supported by NI (what do I care, I do more unsupported stuff).
I am finding that it is hard to develop really useful applications when doing one-off projects where a customer writes a one or two page requirements document and wants an application to meet those requirements. Hence, my focus these days is doing specific applications targeted to a given field or clientele. Currently these fields are Geotechnical Materials Testing Informatyion System (MTIS) also known as LIMS (Laboratory Information Systems) and Measurement While Drilling Applications & Logging While Drilling Applications (MWD/LWD). A link of GUI for these is available here.
. . . if anyone knows a party who may be interested in these types of applications we can communicate further.
I have a pretty simple issue. I want to be able to change the value to a ring, exit the VI completely and open it and run it again with the initial value of that ring being the one that I had previously changed to.
How would I do that?!! I know that with an Invoke Mode, I can reinitialize the ring to the default value. But that's not what I want. I basically want to change the default value of the ring during runtime, so that when I use the VI at another time, I can start the program with the ring having a different value.
I have a chart that displays my load and indicators stating the current load values from test lab equipment. I've been asked to have my program also display ramp loading, so basically i have to chart the rate of change of the load. Can I some how graph the rate of change, or difference between a value and it's previous value?
Last post made by: bazookazuz on Yesterday, 03:03 AM
I have noticed something strange while developing some code for ni usb6009 (this same behavior on 6501). I want to load some digital patterns using digital i/o's. I dont really mind that samples are flushed out quite irregular (software timing) but there is one condition for which this module acts quite weird. It seems that when samples on any line are not changing their states, they are either ignored or flushed very fast (I dont know which is true). I hope example below will make it clearer.
I trigger the scope with P0.4->channel 1 on the scope.
This is what I am sending:
This is what I am getting on the scope (1->P0.4, 2->P0.3, 3->P0.2, 4->P0.1)
Than I push the trigger 4 clocks further:
And result is exactly this same as before.
Here I put trigger sooner when something is happening on the lines
And it works fine:
Did anybody came across problem like this?
Below is the code I am using to send the waveform. I have tried to replace waveform with 2d Boolean and send each bit in separate 'for loop' iteration but it didn't help.