When we run a VI and change the control values so when we close that VI and open again, the default values are loaded instead of the values from previous run. My proposal is to have two options to the control values:
1. Initialize with default values (OK, it is what we have today)
2. Initialize with last value
So, if you have a VI with tons of controls and have to stop the work for a while, the next time that you open the VI again that control values will be there and not the default values.
Several points related to the popup menu.
In a popup, directly activate a submenu.
a) This creates a menu file (*.rtm) with all the popup menu (as does Microsoft).
b) This opens directly into a popup menu, part of the application main menu.
Able to choose where opens the popup (default position of the click).
Have a model of development (as for X-Control) to create its propore popup menu from VI.
This would create 'popup' with many functions.
For lists, arrays (1D or 2D) to obtain information directly from column, row and icon.
Systematically using the method "Convert a point to line-column"
Actual we have :
It better with
for dequeue element we can pass one reference only. And the function waits till timeout if no element is present in queue. If element appears before completion of timeout then function returns immediately with data.
However if I want to wait for data from multiple queues then I need to dequeue from them one by one. This approach has following problem.
Lets say I Have two queues Q1 and Q2 and I am Dequeuing element from them one by one with 10 Sec timeout. Now lets assume there is no data in Q1 but there is data available in Q2. Now when I dequeue element from Q1 it waits for 10 sec and returns and then I dequeue element immediately. If situation is opposite then Q1 returns immediately but Q2 waits for 10 Sec.
However what I need that if Q1 or Q2 has data then there should not be any wait/
In Notifier palette there is a VI called "wait on notification from multiple" this VI accepts array of notifiers and return immediately if any of the notifier receives notification.
Similar functionality will be highly useful in queues
One of the biggest issues that I see new customers run into is the proper install order of LabVIEW and it's drivers. It's not directly obvious to most that you HAVE to install LabVIEW before the drivers. When they install another version of LabVIEW and do not update drivers, or they accidentally install drivers first nothing works correctly (DAQmx VIs don't appear in the palettes, New>Targets and Devices doesn't appear in the project menus, etc). The solution to this is to completely uninstall the drivers that were installed, and then reinstall them. This is annoying and takes a long time.
My proposed solution would involve an easy "repair" option or tool that will simply reconnect the components and VIs etc to avoid the massive headache that most new users seem to get themselves in.
Outside of comparisons, Triangles are becoming an endangered species on my Block Diagrams. The Compound Arithmetic Node is a very handy tool, and armed with my (function preserving) RCF plugin/QD shortcut they are replacing all math triangles. I use them a lot, and so should you.
One final hurdle to reaching total happiness: the process of inverting inputs and outputs is a bit awkward at best. Right-Click, scroll down, find Invert (right in the center of the menu of course) and try not to have the muscle spasm that results in 'Remove Input'. I would really like some type of shortcut (double-click, shift-click, ctrl-click, anything) to quickly toggle the inversion of a terminal.
(I would also like to enlarge those Inversion circles while we are at it...)
(Ironic that the LV logo is a combination of the Add primitive and the Sequence Structure....)
As mentioned by Daklu over here, we have to change a VI to edit mode to be able to copy items from its front panel or block diagram - we don't actually want to edit it.
It would be very useful to have the possibility to draw cursors in form of a ramp or a stairway within an xy-graph.
So maybe it is possible to add this function to the property-menue of the xy-graph in a later LABView version.
At the moment, If you want a cursor like this, you have to simulate this, by feeding the graph with several plots.
I think this feature would be very helpful for many users.
Please refer to my example.
it would be great if there would be a better platform for 3rd party VIs, for example instrument drivers. Something that allows you to see when the last updates where done, what has been changed (browse the code) and also something that would allow you to branch from the existing code, add changes and sent a pull request back in a way that other people can see that the VI has been branched, so that they don't need to duplicate their effort.Including an issue tracker with this would also be great.
This in my view provides faster turnaround for fixing bugs and adding new features. I had to fix a few bugs in some drivers, emailed the VI back to NI and since then nothing has happened to the driver at the least the last few times I checked and there is not a good way of tracking this. The idea is not new and there are lots of platforms like this around in the open source world. Here are some examples:
github http://github.com (version controlled history, branching, merging, issue tracker, per project wiki)
bitbucket http://bitbucket.org/ (similar to github)
Lots of linux distributions manage their source code this way:
OpenSUSE build server: http://build.opensuse.com (version controlled history, branching, merging)
Launchpad https://launchpad.net/ (version controlled history, branching, merging, issue tracker, code review, translation)
and there are plenty of other sites.
From the developers perspective... events are interrupts and timing sources are interrupts. Do we need two separate way to pragmatically creating these (event registration refnum and timing source string) and reacting to these (structures)?
I realize there are features one has and the other one doesn't... but there is so much overlap and so much potential if combined.
Undeterred by the tepid response to the following ideas:
let me suggest an alternative: When choosing 'Select VI...' from the palette or Right-click menu I would like to be able to select a Snippet as well. I would prefer that PNG files would be shown by default, but I do not have a problem with switching to 'All files' or having Snippets (*.png) be the next option in the file type pull-down. PNG files without snippets can throw the usual error.
Unlike dragging snippets, this method *should* allow the code to be placed on the cursor for more controllable placement unlike the current drop and look-out below method.
Just to get this out of the way, this draws on the following ideas and integrates them into something that I think fits well with things like the web UI builder:
Basically, I think cases should have labels like in 4 (perhaps floating labels like I show below), but remove the other configuration items currently there. This eliminates the problem in 3, and essentially requires something like idea 2. Instead of the current selector, it will have a button similar to the tab viewer in IE (see picture), which will bring up a screen similar to idea #1. However, I think thumbnails arent enough, and I think it should show up more like this picture below:
Anyway, even if you don't like this idea, you should give kudos to the four above, because they are awesome.
As of now, a Tab Control Page can be colored via Tab Control and Page property nodes. It would be nice if Tab Control Page Label can be colored, sized, and styled using Property Node. This feature should be incorporated in the future release of LabVIEW.
It is time to put a dent in the floating point "problems" encountered by many in LV. Due to the (not so?) well-known limitations of floating point representations, comparisons can often lead to surprising results. I propose a new configuration for the comparison functions when floats are involved, call it "Compare Floats" or otherwise. When selected, I suggest that Equals? becomes "Almost Equal?" and the icon changes to the approximately equal sign. EqualToZero could be AlmostEqualToZero, again with appropriate icon changes. GreaterThanorAlmostEqual, etc.
I do not think these need to be new functions on the palette, just a configuration option (Comparison Mode). They should expose a couple of terminals for options so we can control what close means (# of sig figs, # digits, absolute difference, etc.) with reasonable defaults so most cases we do not have to worry about it. We get all of the ease and polymorphism that comes with the built-in functions.
There are many ways to do this, I won't be so bold as to specify which way to go. I am confident that any reasonable method would be a vast improvement over the current method which is hope that you are never bitten by Equals?.
Curently, when we use the Open VI Reference node, there is a numeric "options" input for specifying how to open the reference. For example, 0x01 for "record modifications", 0x02 for "open templates for editing", and so on.
To my best knowledge, the theory here is that is makes it "easy" to combine options, e.g. 0x03 to "record modifications" and "open templates for editing". The problem I have with this method is that 90% of the time I cannot remember the number to go with the option(s) that I want - I end up opening Context Help->Detailed Help, etc.
An alternative way would be to copy the VISA Flush Buffer node: use a ring control for each of this input. that way you could just select the "record modifications" option, or, if you need multiple options, combine them with a OR or compound logic node (or even, take an array of these options as the input, allowing 0 or more options to be select). This to be would be much easier as we wouldnt have to keep on going to the context help.
Let's make it happen!
Labview Signal Express:
The only sensitivity units you can select for Acquire Signals >> DAQmx Acquire>> Analog Input>>Force>> Force (IEPE) are mVolts/N and mVolts/lb. When you type in a value less than one in sensitivity (example: ".5"), it puts the unit in "milli" (500m) which is confusing because the actual units should be 500 uVolts/N and are displayed as 500m mVolts/N. It would make more sense if the units were in Volts/N so then the sensitivity for (.5m Volts/N) would be 500u Volts/N.
I had the need in the past to draw isosurfaces from 3D volume data. My workaround was to export the data in xplor format (see also), then display the isosurfaces using molecular graphics software (such as UCSF Chimera). This is too indirect.
The code to do this directly in LabVIEW exists already in the NI Biomedical Startup Kit 3.0. Look under the section "source code":
I am a big fan of LabView! This idea is meant to be a positive suggestion, and I hope it will be taken as such.
I almost wish this post was in jest; it is not. This is a serious suggestion that, in my opinion would improve the NI LabView program, save cost, and be much better for the environment.
I recently purchased Application Builder for LabView (both Great products). I received my Application Builder via FedEx. It comes in a very nice looking heavy mailing package with the bold label "NI LabVIEW 2010 Add-On Software. I think there must have been a FedEx overwrap with the following forms:
-Printed shipping manager page with the FedEx Bar Code
-Printed packing Pick Slip (two pages) with a certificate of conformance on page 1 of 2 and a signed page 2 of 2 by the Vice President of Quality and Continuous Improvement (I am not making this up)
Now, inside of the envelope is
-The standard folded yellow installation instruction page
-A certificate of ownership! (same serial number as is printed on the outside of the heavy mailing envelope)
-A card which says (really!) "Where is my Media?" The card says: "In an effort to reduce the impact on the environment, National Instruments no longer ships media with these kits.
Now, I assume by this point everyone sees the irony here, and where I am going with this New Idea for LabView!
IDEA: Upon successful purchase and proper payment of a LabView Add-On Software package: Email the serial number to the authorized user.
Optionally (if required by legal), send the paper Certificate of Ownership (one page!) to the authorized user, or if allowed by legal, Email a PDF of the Certificate of Ownership to the authorized user.
Beautiful outer envelope and stack of printed pages made in Ireland - Well, not needed (Give them other work, I don't want to see lost jobs)
Shipping cost and impact on the environment (Ireland to Austin) SAVED
Storage cost and space at NI Austin SAVED
Shipping cost and Air Freight Austin to end user SAVED (less jet fuel impact on the environment)
Less paper to be recycled by end user SAVED, positive impact on less energy needed for recycling!