LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamically build VI using LabVIEW

I'm currently working on an application and I would like to be able to generate VI's using LabVIEW. I remember seeing something like this being used before, so I would like to know how one would go about accomplishing such a feat. The point is that I want to be able to use LabVIEW to generate LabVIEW VI's add some elements to those VI's (controls, functions, etc).

Thanks in advance,
0 Kudos
Message 1 of 3
(2,600 Views)
Glenn,


This is not possible jet. But the word is it will be implemented in a next
version. But if (or when) it is possible, it will not be easy at all.

Regards,

Wiebe.


"Glenn Korendijk" wrote in message
news:506500000008000000E5C50000-1078497998000@exchange.ni.com...
> I'm currently working on an application and I would like to be able to
> generate VI's using LabVIEW. I remember seeing something like this
> being used before, so I would like to know how one would go about
> accomplishing such a feat. The point is that I want to be able to use
> LabVIEW to generate LabVIEW VI's add some elements to those VI's
> (controls, functions, etc).
>
> Thanks in advance,
Message 2 of 3
(2,600 Views)
I can not comment on when, but it will become available, someday.

Vision Builder has been doing this for years.

The LV State Diagram Editor (which is wonderful by the way) can obviously edit diagrams and is apparently implemented as a VI!

THe SD Editor (which is great by the way, I love this thing, NO MORE PowerPoint to design) is an incredibly small add-on. This leads me to suspect much of this functionality (i.e. VI's to edit VI's) is already implmented in LV, we just do not have mechanisms to get at it (other than using the very restricted tools mentioned above).

I stongly agree with Wiebe in that this functionality will be rather challenging to master.

It will also be dificuly to support!

Imagine the type of code that would result. here
is one mind bogling possiblity.

Write three VI's

"A.VI" alternately calls "B" and "C".

"B.VI" Executes a "random VI" evaluates the reuslts and clones a modified version of itself as "C.VI" based its evaluation of the random code results and any prior experiments it has performed.

C.VI then duplicates the actions of B.

This could lead to a type of artificial intellegent code that is able to adapt it own algorithm.

What happens if the code after learning and growing decides it does not want to do math anymore and would rather just listen to the same albumn over and over again?

How does a support engineer address that?

The reason I present this extreme case was that this functionaly, when it comes, it will be limited at first (as we see in dynamic event registration).

I seem to remember Rolf Kalbermatter (on Info-LabVIEW) saying something like "Self modifying code is a bad idea and went out style years ago".

Just my thoughts,

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 3 of 3
(2,600 Views)