Of several Subvi in front

Hello and welcome (this is my first post here).

Sorry if this question was already resurrected, however I do not know how to specify exactly in terms of nomenclature of LV (I'm a beginner in LV) which makes it quite difficult to search forum.

I need to create an interface with the user specified number of input channels (specified during application, dynamic loading is necessary). Each channel must be controlled by Subvi. I would like to load panels of any entry Subvi course into a container in a main façade (Similarly for the secondary, but multiple loading VI, not alone). Is there a container capable of this? Is this possible in LV?

Kind regards

kaolpr

You can use several sub-panels. Unfortunately, the number of sub-panels must be defined during the development. You can create a method to browse through your different channels. This assumes the loading and unloading of the multiple sub-panels you include in the user interface.

Another alternative would be to use a table or something similar. You have your subVIs post updates of the code of the user interface through the queues, registrants or user events. The tables are much easier to manage when your number of items varies. If you need to have the user interface to pass information to the subVIs it can also use queues, registrants or user events.

Tags: NI Software

Similar Questions

  • keep Subvi to front

    Is there a way to KEEP a Subvi in front until its finished his work. I need it is true even if the user accidentally presses the main VI (which would be in the back when Sub Vi is running).

    Thank you

    Kas

    You can use the window behavior change for "modal".

    CTRL + I-> the appearance of windows (in the drop ring)-> hit 'customize' Boolean and select the "Modal" of option

    Guru

  • Subvi in front control panel

    Hey people of the world, I have a question about the Sub - VI and other. I am currently trying to take a loop in my program and do a Subvi to make a more modular program. The only question is, this loop contains approximately 8 indicators that shows various data on my front. The function of this program is to test a motor continuous and connect the acquired data. As it works now, the data is stored and displayed on the front panel all the time but when I do a Subvi he loses the display continuously feature the logging data and only display the data once I stop the program. My program is attached below, if I need to clarify my question so I will. Thank you


  • Simultaneous operation of several SubVIs

    Hi, I am looking 4 a Pro VI SubVIs performance at the same time. The main, and the acquisition of data plotted SubVIs select Vl the plot to show.

    How to run it without having to open it?

    PD: Gráfica-online field

    Since you already use a VI reference to show the front, you can use a node to invoke to run the Subvi.  Don't forget to wait until it is set to false.

  • Open a Subvi inside the main façade, not to burst

    Hello

    I am writing a program that contains several subvis. The option I have in the configuration of the node of the Subvi is to open the front panel, during the call. What I want to do is to open the front panel of the Subvi inside the main façade.

    For example, it is main and subvi1 and subvi2. In the main FP, there are Boolean start button. When he pressed it opens Subvi FP for the user to enter parameters, but this Subvi should be opened in the main PS and when the user presses the fact. It refers to the main FP.

    I tried searching online and inside on labview but I couldn't find anything. Also, I'm a newbie to labview, so I don't have a lot of experience.

    Thank you

    ERFAN

    Secondary use

  • display the error when editing on front panel

    Hello

     

    When I add another tab (notching amplifier) in the front panel, the program displays connection error. What should I do to get rid of these errors? I am attaching the file along the slot vi.

    Kind regards.

    This happens because the data type of the tab control changes (you add another page). A tab control is essentially an enum and enum values are part of the data type. A reference to the tab control control is to be packaged and passed in several subVIs. Cluster of frontage on these subVIs control has the element 'Hand Control' value "Include the Data Type". Thus, what they expect to see (for example, a tab with 3 pages) is not what they get. That is why the thread cut. You must either:

    • Uncheck "Include the Type of data" for the item "control of the hand. I don't know what other impact this will have, as I look at all the code.
    • Update all the controls on the front panel with a new reference to the command.

    Aside: who wrote this program needs a lesson on the typedefs.

  • How to create a single VI accepting several input type definitions?

    Dear users,

    How to simplify (or change) the following code for better overview and maintenance:

    The structure on the top is a code handle my cluster (uninteresting code is blocked). On the bottom, there are clusters of several type defs, which I use. So, I have created several subVIs to accept my pile of type defed (all together 4 pieces). I link all my subVIs in a single polymorphic VI and use as desired. In all of my subVIs, I change the elements of the cluster in the same order.

    But when you change the code of the subVIs, I need to change the code in the other subVIs, too. Is it possible to create a single VI who will accept multiple clusters of type defs?

    Thanks for listening!

    See you soon,.

    What I would do, is go back to your configuration polymorphic and transform any code which is common proximities different polymorphic cases in a Subvi.  Then just edit the subVIs.

  • A VI record with it's subvis and hierarchy

    Hello community,

    I'm working on two independent version of the same application. The differences are minor, most of the source code is the same. Obviously a pain in the back to keep as if I find a problem with esityksen and fix it then I need to apply the same changes on versionB as well. Even if I want to add a new feature. Its particularly painful if the hotfix affects several subVIs as so I need to copy the new version to the other version. Its very subject as if I just forget to crush a VI then VersionB can't do what I want it to do.

    The question I have: is there a way to export sort a VI with all its subvis in keeping the structure of moose files, so I can simply copy this new structure and it would replace all of the old screws?

    (Before ask you... I inherited this accession and there is absolutely no way to merge the two versions in a single application. "It must stay as it is.)

    Let me know if you have a feasible idea.

    Thank you!

    While it sounds like it would be better to find a new way to manage these slightly different versions, I will answer your original question.

    If all your screws are in a project, you can click on file > save for the previous Version... And then choose the version that you want to save it to. You can, of course, select the same version of LabVIEW in the menu drop-down (I don't mean that you need to change the version each record!). Choose a new folder to save on and it will preserve your file structure.

    It could be a bit annoying because it copies the entire hierarchy. So if you have a folder called MyProject with subfolders, but MyProject lies in Libraries\Documents\LabVIEW Projects\2014\MyProject, then you have to dig several records to join your screws

  • complete the recursive operation on Subvi after clone a VI

    Hello. I use Labview 8.5.

    I want to do a re-entrant execution on a VI (clone).  This VI has several Subvi. I would like to know if I have to place a check mark in the box of the reeentrant of each Subvi execution or if the option is performed automatically. In other words, my Vi several Subvi thus, this work is long if I have to do it manually.

    Thank you, Daniel.

    Ron Daniel wrote:
    Thank you. one last question, is it necessary to place a check mark in the box of the reeentrant of each Subvi execution so that the main VI works properly? Daniel

    N °

    Only those who are called to the re-cursively should be defined as re-entering.

    Ben

  • How to find all the Subvi value changes to a control inside a cluster?

    I have a question I've had brewing for many years now, and as of today, this issue has become less philosophical for me now that I have a VI project with hundreds of screws in there to work through... If I have a cluster which is passed between/through several subVIs, is there a way to find all reads/writes to a particular control within this cluster? For example, if I use a global variable, I can find all the instances where this variable has been changed. Several times, a cluster is used to pass data instead of lots of global variables, but I know not anyway quickly find where specific parts of the latter are read or written in subVIs. Global variables becomes a headache when they are too many of them fly around, but I can't keep track of reads/writes in bunches without manually looking through a few screws hundreds that take in the cluster. Is there a function for this that I'm not aware of? I hope that this question/problem of logic. This may prompt a discussion of architecture, which I would be happy, because I will need to build projects of this scale in the future, but I think also completely stuck when the clusters are used (by me or others) to pass data autour. Thank you! John

    If you ungroup by name and bundle by name, just do a search for text to the name of the control.

  • SQL query, generate several lines in a value in a field

    I use the Oracle database. Imaging I have a table with a row as follows

    col1 |  col2. COL3

    "Str1" | "Str2". 4

    The value of col3 = 4 is expected to generate 4 rows as follows:

    col1 |  col2. COL3

    "Str1" | "Str2". 1

    "Str1" | "Str2". 2

    "Str1" | "Str2". 3

    "Str1" | "Str2". 4

    After several hours in front of the screen and stil no chance - how do I create such a select query?

    It will work

    Select * from test_table:

    COL1 COL2 COL3

    str1 str2 2

    strA, strb 4

    STRX deltas 8

    WITH t(col1,col2,col3) AS
            (
            select col1,col2,col3 from test_table
             union all
             select col1,col2,col3-1 from t where col3>1)
    SELECT *
      FROM t
      order by col1,col3;
    

    OUTPUT:

    COL1 COL2 COL3

    -------------------------

    str1 str2 1

    str1 str2 2

    strB Stra 1

    strA, strb 2

    strA, strb 3

    strA, strb 4

    deltas STRX 1

    STRX deltas 2

    deltas STRX 3

    STRX deltas 4

    STRX deltas 5

    STRX deltas 6

    STRX deltas 7

    STRX deltas 8

    See you soon,.

    Manik.

  • Open FPGA references change to no. target when compiled with executable in time real start

    Hello again you useful forum fans!  I have a problem that I hope someone can give me a hand with.

    I have a project that has a Windows component and a component of the target in real time, that are running on a hypervisor type NI PXI-8110 system.  Communication both sides between them using shared variables.

    On the real-time side, I have four FPGA targets who are reading and writing various analog and discrete inputs and outputs.  I several periods loops which opens a reference to one of the FPGA targets during the first call, then pass this reference in several subVIs that read and write to panels prior to the FPGA.  The loops the FPGA reference thus made available and reuse it in the next iteration through the shift registers.  Each FPGA target has only a single reference open to him.  One of the loops is using the FPGA reference directly and does not pass it in any subVIs.

    It all works very well in the development environment, I can read and control inputs and outputs FPGAS via the front panel of the application of the side Windows.  It also works very well if I start the game real time in the development environment, and run the code of windows as a stand-alone executable file.

    However, when I compile the code in real-time in an executable startup and deploy it to the target, it does not work.  I enabled debugging on the executable, and when I connect to it via the operation-> debug executable in the menu, I see an arrow broken at execution.  Further investigation shows that each of the four open screw reference FPGA is now empty, the text under them is "no target" and the thread for reference on their part to my first Subvi is broken.  I need your help to understand how to operate as it does in the development environment.

    I followed the instructions of these two knowledge base articles to compile and download the bitfiles FPGA on the FPGA target and execute on start or restart:

    http://digital.NI.com/public.nsf/allkb/39795847AC67296D862575FB0046944F

    http://digital.NI.com/public.nsf/allkb/BC513C2A0DC29C89862574BF0002B0B9?OpenDocument

    Open FPGA reference screw are configured for the FPGA to build specifications that I created for each target in the LabVIEW FPGA project.

    I called technical support, NO phone, and yet were able to determine this one out, so additional "brownie" points if you do!  I would offer you the same no detailed screenshot that I have (I can't give more detailed code out because its owner, unfortunately), but apparently the forum doesn't like my image file, as I can't seem to load.

    Please let me know if you have any ideas regarding what is happening!  I appreciate it.

    Jon,

    I'm always up for the challenge.  Have you tryied recompile the FPGA VI that accesses the RT VI?  I also suggest to try and open the bitfile instead of the FPGA VI.  You run in dynamic mode (this is not a suggestion, it's just a question)? There is no difference if you try to open the FPGA VI reference outside the while loop, then past the reference to use inside the while loop without shift registers, then close the reference to the FPGA VI outside the while loop?

    Let me know if these suggestions makes no difference.

  • Copy and paste large event

    Hello everyone

    I'm working on a big VI and difficulties to run on different screen resolutions. Too many controls, indicators, charts, etc. If I let Labview resize objects and sizes of fonts all gets messy. Because of this, I decided to create several files of VI, one for each screen resolution. Then the first VI to run detects the actual resolution of the screen and load the right VI of this form.

    Everything works like a charm, but when I need to update something in my code (put a new sub - VI to run, create a new case of event within the structure of the event, etc.), I have to do the SAME procedure several times to update all the screws with different screen resolutions.

    After long reflection I came to the solution to remove all Boolean values or flags the while loop, set the buttons like "Switch releasing" and restore the previous state of the button programmatically. Given that I have never (or almost never) update something on the front, I can make all the necessary changes in a single resolution VI and after finishing all I can just copy the while loop and paste in all screen resolution files. After that I just have to connect a wire (for groups of references) and I'm good to go. All screen resolutions files work identically.

    The problem: when I copy while loop and paste it into a new VI, all the events of structures of event (to handle the case) are not preserved. Then, I need to change the events that will handle each case in the structure of the event and repeat the same procedure for all screen resolutions files. Since is impossible to Labview allow to adjust items and size of fonts and distribution, I have to continue to use multiple files.

    If I solve the problem with events that are not preserved when I copy and paste the while loop, everything will be fine.

    My code is really very important, with several SubVIs and all that, but the attached files will show you the main idea of the problem I have. Open resolution 1(vi), copy all looped and paste it in resolution 2.vi. The main idea was just to connect a wire and I'd be ready to go, but events are not kept in the structure of the event.

    Thank you

    Dan07


  • HP Pavilion p7-1233w: case swap questions

    I made some recent improvements made to my PC. These include an additional 8 GB or RAM, for a total of 16 GB, a 500W power supply, and a MSI Radeon R9 280 / 3GB GPU. The new GPU itself hardly fit into the existing casing. Then with all the extra stuff in there, my time become too high for my taste so I put the cover on the case. So Ive done turn it opened these days. Ive had a case of full size of an old computer. Its got an extra fan in the side panel and a place for a 120mm fan on the back instead of the 80 mm, I currently have. Moreover its got a side clear cool panel so you can see all my cool lights and stuff lol.

    Sort of, I was looking at all the connections. The case I want to put things has a few different things. The main thing I noticed was the front USB connectors. The case of HP has a big plug for USB 3.0, but if I have looks like it has just a USB port and taking in the case is different. The headphone jack and the microphone looks the same.

    For the HARD disk and lights power wires and the switch are different, but it looks like they are just separated, while each of them in the case of HP are in a jam. But it looks like they'll all hold the plug if I put them right. I just need to know what are those who go on the pins.

    Im not worried about making the 15 in the work of part 1 card reader. I haven't used an any of them since I got the computer and they just collect dust though.

    Hello

    The following image shows the pinout which is common to several headers in front. Only the LED pins are sensitive to polarity.

  • HP designJet 130nr: Spotlight on roller automatic power media must not enter.

    Hello

    I recently bought a HP designjet 130nr used large format, and I noticed that the lights on the Auto Roll power media does not illuminate after I turn on the printer.

    Can someone please?

    The tracer feeds on?  If that's the case then you may have a problem with the drive roller.  If you remove the roll and look down inside you'll see there's a torx screw that mounts to the part of the feed roller who has the power connector.  If you remove the screws (there may be two) and then remove the part you will see there are about 3 or 4 contacts mating when the part is being challenged.  Make sure that none of these contacts are irrelevant.  If the unit power ot on, then remove the parallel cable and the cable to the socket on the printer and plug the unit directly into the outlet. The unit now power on.  Keep in mind with this model when you plug in the cable that the light will Flash several times in front of the screen and the time of glass can turns on but then turns off.  When it fires on the front power button is pressed to turn on the machine.  If the light on the front does not blink a few times you may have a power supply problem.

Maybe you are looking for