LabVIEW Idea Exchange

Community Browser
Top Authors
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

I very much like being able to export a labview.vi to a .dll or .net interop library .dll. Our higher level automation is in C# and having access to labview.vi via .net .dll is great. However, the current build capability only allows a single prototype/method to be created. Consequently, I have to provide every input/output when invoking this single method. This can work but it's just inconvenient and not as obvious as being able to create multiple methods smaller things, e.g.

 

write setup values

write DAQ sample rates

start storing samples

stop storing samples

stop DAQs

write summary info

 

When I create a C# class, I can create any number of methods or properties to manipulate class data members. Exported labview.vi files should enable this too. NI AE said I could create parent.vi files (setup.vi, write_DAQ.vi, etc) that all include the actual vi of interest. These various vis could be added to the exported .vi list. And, this would indeed be a work around. But, this is a hack to get around this problem and the AE agreed. Instead, I would like to be able to define multiple methods/prototypes on a single exported .vi.

 

 

Hi,

 

what does the community think about configurable automatic type conversion between .NET and LabVIEW? We need to deal with a .NET API for a sensor which handles system time with nanoseconds since the 16th century. Don't know why they're doing this stuff.

 

To set the appropriate time you have to substract two .NET DateTimes. Everybody will know this will look like in LabVIEW.

 

TS01

 

You will have to use a method of the object to substract this. Now you're using DateTime.Substract. This means in LabVIEW.

 

TS02

 

Here it would be nice to have a checkable item in the right-click run-time menu for the invoke / property node to select or deselect the automatic type conversion so that the Substract() method would accept a DateTime class and not a LabVIEW timestamp.

 

TS03

Hope the idea is clear enough. I've checked the idea forum for this entry but didn't found it. If so, don't shoot me for a double post.

 

Tyler.

We were thrilled to see that NI developed an OPC UA API. We develop software for both VxWorks and Windows, so having OPC UA available on RT is great. But having to shell out for the entire DSC suite, run-time licenses and all, just to be able to use the same API on Windows is unreasonably costly and forces us to use a different API on Windows. If we could buy the API as an isolated component at a more reasonable price (and with easier licensing) we would jump for it immediately.

 

A generalized version of the idea:

The DSC can still function as a nice bundle, where the price for the bundle is lower than the total for each individual item, but when NI makes such packages please make it possible to pick-and choose amongst those components as well, so that in cases where you actually have a need for just one of them, you can get it at a price that is reasonable for that individual component.

Hi,

 

It would be awesome if there was an option in project window to set if the method is contained within a .lvclass file or ouside of the .lvclass next to it in the folder.

 

Now it's like this:

HowItsNow.png

 

It's hard to use a class like that in a plugin architecture with VIs on the outside. Lets put everything together inside like a LabVIEW LLB!

 

How it should be:

HowItShouldBe.png

 

Don't get me started on Packed Project Libraries 😉 We just need LLB functionality, for the class to behave like a folder and we are happy 🙂

 

Piotr

If NI were to make the following modification to the Word_Save_Document vi, we would be able to generate PDF documents directly out of the Report Generation Toolkit. This may only be applicable to later versions of Word.

 

What is required is to handle the PDF file extension and set the appropriate wdSaveFormat value for the SaveAs Method. It would also be nice to be able control the show PDF after generation option, but just being able to save as PDF would be very useful.

 

 

VI modification

I am communicating to parker motor controllers through the Ethernet (parker sample code). Apparently since it is Ethernet based, the code uses socket, where the sockets require admin rights (another discussion about ethernet based and admin rights). In order for my VI to connect to the controller I need to run LabView as an administrator. The problem is I am making this program into an executable for production work.

 

When I create the executable it will not connect to the controller unless I am running the application as an administrator. As this program will be used in production I want it to be as simple as possible to perform. I don't think there is a simple way to change the environment to run without the need to run application as an admin. Are there any ideas to either change the executable to run as an administrator through the application builder? My plan is to create an installer through the application builder.

 

Some ideas that I had is to create an installer file and create the executable. Change the privilege level of the executable (properties>compatibility>privilege level>run this program as an administrator). Use a batch file to install drivers and application, then replace application with the one with the elevated privilege level. Another idea I had is use a batch file to do a runas command to run application as an admin. I cannot get either method to work. Does anyone have ideas?

Hello,

 

I often have to use report generation toolkit in order to generate EXCEL reports.

This is a very easy way to generate userfriendly test reports.

 

But, the API of the EXCEL report generation toolkit should be improved, in order to be abble to insert real Excel graphs in the excel sheets.

 

For the moment, when you want to insert a graph in Excel, this is done by inserting a MSChart object.

 

The problem is that a MSChart object is not an Excel graph !

There is no link between the data inserted into Excel and the MsChart graph object.

A MsChart object contain all the data necessary to draw the graph.

 

It should be interesting to had the ability to create real EXCEL graphs ... with a link betweend the data inserted in a sheet and the graph.

So it should be possible to have access to data modifications directly reflected on the EXCEL graphs.

 

Thanks a lot.

(And sorry for my approximate english)

 

Manu.net

Can I have a API for the "Profile Performance and Memory " tool Jürgen

Quick Drop plugin VIs can currently be assigned to Ctrl-Key shortcuts.  This is a great way to quickly invoke the plugins that I use most.  However, it effectively limits the number of available plugins to 26, and it makes it fairly difficult to remember which Ctrl keys correspond to which plugins when there are a lot of custom plugins to choose from.  I would like the option to invoke Quick Drop plugins with multicharacter shortcut strings, the same way I can drop common panel and diagram objects with shortcut strings.  One possible way to do this could be to allow plugins to be included with the other shortcut objects in the Front Panel or Block Diagram shortcuts:

 

QD Shortcuts.png

We are using IMAQ's C API to control a Camera Link camera. Our camera's .icd file supports changing attributes such as exposure time and capture bit depth. These parameters can be adjusted inside MAX, with MAX only allowing values supported by the camera. While the C API allows for getting/setting these attribute values (ex. with the imgSet/GetCameraAttributeNumeric functions), there is no way to determine the allowed or minimum/maximum values (or even that an attribute is supported for the given camera). It would be helpful to have API functions which could access this sort of data within the .icd file.

 

A similar issue exists when trying to start a new imaging session: there is no way to know programmatically which cameras (if any) are connected to the machine, and if so which interface ID they are connected to ("img0", "img1"...). This data appears to already exist in the .iid files used by MAX, so it would be useful to get at that info from within C (right now, our applications just open the "img0" interface and hope everything works).

Currently, any VIs including .NET code are shown as broken in Labview for OSX.

This is particularly annoying for people working in a cross-platform environment, specially considering that the Mono framework covers a lot of Microsoft's .NET implementation with the added bonus that it works in Linux, Windows and OSX.

 

Please allow users to choose which .NET implementation to use.

Greetings,

 

I recently took the NI Instrument Control class and we came to the topic of creating a VI tree.vi.

 

It didn't make sense that we needed to update the VI tree.vi AND the palette when we add or delete a VI.

 

I propose that there should be an option to auto-make a VI tree.vi or just a simple html page with the available VI's in your project/driver.

 

This currently makes sense since all the VIs should already be categorized in the palette.

 

Thanks,

 

-Jose

It would be great if LabVIEW supported the Python language, including any of its various packages such as numpy. Such computations would be much more transparent and easier to support than calling code in DLLs. They would also be much more open and flexible than the existing built-in computational solutions in LabVIEW, e.g., expression/formula nodes. Currently, I have to call Python scripts via System Exec.vi, which complicates data exchange. (NOTE: I am using an older version of LabVIEW: 2009 SP1.)

When using dll's or .Net assemblies, you always have to right click & hunt down which version gets used for the constructor.

It'd be handy to have the version shown in the Help. I already know it's a constructor node, that's not much help...

whenever a change of .NET dll is introduced, LabVIEW kept wanting to use the old dll. The change in a 3rd Party dll caused a full blown LV crash... 

 

A simple Uninstall of the entry in C:\Windows\assembly did the trick.

 

This was not mentioned in the following:

https://decibel.ni.com/content/docs/DOC-5921

http://zone.ni.com/reference/en-XX/help/371361J-01/lvdialog/assemblies_in_memory/ (only talks about runtime, which is helpful when creating the distribution)

 

 

 

This is not obvious nor an easy to find solution. An ability to pick and choose within LV the required dll (and version) would be helpful.

Hi!

 

Especially in multi monitor setups NView provides some very convenient functions. LabVIEW and NView, however, don't play well together. That is: I have to disable NView to use LabVIEW properly. That's very annoying, as you can imagine.

 

So my suggestion is: fix it Smiley Tongue

 

I suspect, that LabVIEWs scrambling of the alt+tab order is part of the problem. So I'd like to see that fixed too. I mean, you already have a shortcut to switch between Frontpanel and Blockdiagram (Ctrl+E). Why additionally scramble the alt+tab order to get FP and BD side by side?

 

Best regards,

pktl2k

 

P.S.: I'm sure, users of not-NVidia graphics have similar trouble with their respective NView counterparts.

LabView could use plugins (like Adobe!) for a lot of the features suggested by those on this forum, instead of implementation only with the latest release. For a lot of university computers that are running on old DAQ boards or simply cycle through their programmers quickly, upgrading to newer versions of LabView isn't an option, both from a price perspective and from a "reprogramming everything" logistics perspective. (I'm in this situation, with a lab using 6.1)

 

Plugins that I have in mind are:

 

  • Block Diagram Cleanup Utility plugin for versions of LabView before version 8.6. Whatever algorithm the 8.6+ versions use would still work for wires and other objects strewn across the block diagram, so adding this shouldn't be too difficult.

 

  • Zoom functionality for LabView, period. LabView is a graphical programming language, and anything graphical should have some sort of zoom utility. Whether it be to see a large block diagram in its entirety or to zoom in for people with poor eyesight, or simply a graphical readjustment to suit a different sized monitor, zooming is critical to any graphical process. Certainly, LabView wasn't created for artists, but I still think this is very important. Again. Not too difficult to create a plugin that works natively. Failing that, even an NI-supported zoom-in/zoom-out tool that wouldn't allow editing in those zoomed modes would be helpful.

 

  • LabView canceling when opened. I believe I saw this elsewhere in the forum, but basically just something that would allow you to close LabView if it opened accidentally without going to Task Manager. On older machines it takes forever to open. Easy to implement; basically just a GUI change to allow closing earlier.

 

  • An "Open Recent" option. I don't know if later versions have this, but it just allows opening the last project you worked on so much faster than what directory browsing allows. Again easy to implement as a plugin, I'd imagine. Some sort of cache'd memory and a new menu item.

Thank you for your time.

The CVT library is very useful in automation applications especially combined with the TCE tag editor and CDL data logger.

At the initial phase of the development of a new project, it could be useful to try new values for parameters and after evaluation, it could be nice to save them back to the XML CVT file as new defaults.

For this reason, it could be nice to add a Saving method to the CVT library.

 

Regards,

 

Maurizio Bollini

MET Srl - Milan (Italy)

www.met.it

Yes, I want to inspect a vi's Block diagram on my Smart phone.  (Since I have no life and constantly troll the forums looking for people to help.)

When you get a data changed event from an array, it would be nice if that event included an array of what items in the array actually changed.  This makes it easier for the user to determine what changed and how to deal with it.