structure of the event

Hi, I'm new to Labview. May I ask - is it possible to use 'match model' within the structure of the event to detect the shift? For example, if the event detects 'one', it will go in the first round, if detect 'two', it will go to the second event...

Your help will be very appreciated! Thank you..

Hello Yee,

do you really need events and structure of the event at all?

Why not just use a structure case manages your values according to a the string received?

Like this:

Tags: NI Software

Similar Questions

  • using the structure of the event in the LabVIEW classes

    Hello

    I'm new in the use of LabVIEW classes, so don't know much how I can use them.

    In my main program, I have clusters with five elements in each. The elements are controls two States and in some groups, there are three States controls. The user will press the buttons (controls), and different things will happen. In my first program were I not using classes, I had a structure of the event and the controls were cases of event in the structure.

    Is it possible to somehow use an event of cases in one of the methods that is created in the classes, so that say, that's not in the main program?

    I have attached two photos: I wanted to have a structure of the event in servoTouchEvent (in left.tri.lvclass) who is a child.

    Let me know if my explanation is not clear.

    Grateful for the help!

    Hello

    Yes, you can have a structure of the event in a Subvi rather in your main VI of top-level UI. The trick is to use the 'Save for events' and passing in references to orders that you want to have the event trigger structure for. The refnum output since the function is entered in the terminal of dynamic event of the structure of the event who could live in a Subvi. You can add instances of event where you will see these control events as dynamic events then you can do something with. These excerpts from shows all the code in a simple diagram, but the stuff in the structure of disable diagram could easily transformed into a Subvi:

     

    All this can be done without classes. What will buy classes you include the ability to encapsulate your screws and also perform different code based on what object on the hierarchy of the parent-child classes is on a wire. If the behavior of your code is different between 2-3 State and controls (which I do not know what state controls 3 you are referring), you can take advantage of the classes.

  • major error with the structure of the event

    IM under LABVIEW 13.0 PRO

    I don't know when this strarted bug happening, but now when I add a business to a structure of the event. Freezes in LabVIEW. I have to close labview with the Task Manager.

    It doesn't matter what code I'm working with, even a new VI, with nothing else than a structure of the event.

    I tried this on my desktop PC, my laptop and my CPU DAQ.

    The error occurs on my desktop and my laptop. But it does not occur on my CPU DAQ.

    Whenever I click on add event usually case, you get a popup to configure and add cases, but with the popup error never comes to the top and labview crashes.

    Theres no code to share the problem ocured when adding events to the event structure. It happened with any structure of the event, in any code, all the time.

    I spoke to an engineer of apllication of labview and suggested to delete the labview.ini file located in the installation of labview directory. I did this and the problem was solved.

    Still not sure what caused this to happen.

  • Structure of the event in primary vi and sub - VI with queues

    Hi all

    I have an application that uses the architecture of producer-consumer in which a queue transmits messages of a main VI by a Subvi, in response to the events of the user in the front panel. Inside the Sub VI, the queue is removed and treaty based on the corresponding message, and the result is displayed on the façade the sub of VI. User events are captured in the main VI using a Structure of the event. This works as expected.

    However, I also the controls on the Panel before the sub - VI to change the queue. My approach is to have another structure of the event in the VI sub for this. However, while the events in the main work of fine VI, events of sub - VI never treated.

    A simplified sandbox VI of what I'm trying to do is attached. As you can see, the main VI events are triggered as expected, but events in the sub VI are never triggered.

    I watched this white paper: detect an event in a Subvi from a high level VI , but it's not exactly what I'm trying to do. Instead, I'm just trying to detect an event generated within the Subvi. I searched this forum and found some research related, but none of them seemed to answer what I'm trying to do.

    Thank you

    Matt

    Your major issue here is the loop location.  While the structure should be inside the Subvi to make a message in the appropriate queue manager.  In fact, you should have 2 loops within your Subvi: 1) the QMH and (2) of the event loop.  You must use a user event to congratulate the event loop in the Subvi to stop.  You should NOT use the time-out of the Structure of the event unless you absolutely must.  And since everything in the Subvi is the message function, you do not have expectations.  They will be inactive (no CPU using) when there are no items to process from the queue or queue.

  • Control the Structure of the event with text file

    I'm new relativaly in LabVIEW (experience only about 2 weeks). I am currently control a stepper motor using a structure of the event. Similar to the sample code given by LIFA, I entered my settings how the engine not move away, then press a button on the windows before, and it works this way. I also have other equipment that works as well in LabVIEW, as a transnational step; all components operate individually.

    Now, I'm trying to make the more automated system and to ensure that all the different equipment work in the same code. So, I tried to implement a structure of the event using a text as an input file to try to control events. The text file has a table 1 d of numbers going down vertically (only the line numbers change). So, I used a table of index function to take the numbers one by one, use a loop (while loop in this example) to go to the bottom of the column of numbers. However, the event not register the change, even if the indicator shows the value is changing.

    Attached, it's my test code and the text file that I use to try to control the structure of the event. Please let me know what I am doing wrong. Thank you.

    Oh, now I understand what you tried to say. I'm using a loop and a case structure to activate different events with the entries in the table. I thought case structures and event were the same, but you taught me the event structures are used just for the façade stuff. Thank you all!

  • How to control the structure of the event

    What I'm trying to do, it's when the condtion is true, I want that the structure of the event to excute. But the event structure wil excute not except if he's changed the puch model, any idea how?

    It is more likely that he wants the sequence of events that he has set up to run after the result once changes.  If you change the logic to check the values after each numeric change (2), you will need to learn how to check to make sure that the latest iteration was not true.  Otherwise, it will start the sequence over and over.

    Really, you have to escape completely the structure of the event.  This isn't what you want.  Your code lends itself to a great state machine.

    You'll want to ask you a few things:

    (1) I want my code to run continuously or I just want to check double-digit times? (your code is currently the second)

    (2) I want the user to be able to stop my code once the sequence begins? (it is usually a Yes)

    (3) what I want 6 Road, path 5 or the comparison to happen first?  I want all run at the same time?  Do I need one before the other? (currently, you cannot predict what will happen first).

    You will need to understand the topics are: State of the machines, the flow of data, structures, business, calendar, and race conditions.  Now, you need to get you into trouble.

  • Front panel locked, but not due to the structure of the event

    Hi it LV community.

    I did a staemachine program that executes an oscilloscope (screenshot of a provided below... the State of the problem). I ran my program yesterday and it worked very well. Then, like a model, a dialog box opens and I just clicked on it in a hurry. now my front hangs as soon as I move the above-mentioned State "the Oscilloscope settings.

    As indicated, I have go a repeat loop that collects successive impulses of my oscilloscope and displays on the front panel (it works fine). In parallel, I have a structure of the event that makes the tail for the real-time feedback of changes to parameters that I placed on the façade (exodus of state change).

    Here's the problem: as soon as I State 'Oscilloscope Settings' using a Boolean button on the front panel for get me there, the front hangs... No event triggered by this point, and even if it did, I already deselected the "Lock panel until the end of the matter for this event" checkbox in the case where the structure menu.

    So WHY is my front lock now? Thoughts anyone?

    Read the detailed help for event structures.

    He urged that a single event structure serve in a VI. There are moments where more can be used effectively, but caution and a thorough understanding of the structure are needed.

    The problem is that you have several structures of the event in the various cases of the state machine and they are set to respond to the same events.

    When the button Set Oscilloscope, the structures of the event in the purchase Menu and home screen States receive the event. The two lock the screen, but only one of these cases may work. It can transfer control to the State of the Oscilloscope settings, but the other event responding to this same event structure maintains the locked Panel.

    The solution is not not to release any of the event. The default value is usually the best setting. The best solution is to spend on an architecture of producer/consumer (events). Who uses two parallel loops. The producer has the one and the only structure of the event and passes orders to consumer loop through a queue.

    Probalby want as the mechanical action on the buttons to lock when you press. Put kiosks inside the respective case of event changed value and local variables becomes unnecessary.

    Lynn

  • reset the timer using a structure of the event

    I wrote a simple code to count the second and the timer can be reset if I press the button "reset".

    It works; However, there are two problems,

    1. when I run the program, the timer takes 1 second to start

    2 when I press the reset button, the timer also takes a second to answer

    I think it's the 1000ms that is connected to the left corner of the structure of the event. Is there a better way to overcome this problem? (the timer starts and resets immediately

    When I launch the program and press the "reset" button)

    Thank you!!

    Dear ivy037

    You can make the time outside the structure of the event as in the attached code.  I would like to know if this is satisfactory.

    Thank you

  • At all indexes on tables of the same value in the structure of the event

    Hello

    I have a panel with the four bays and I use a structure of the event.

    Now, I want that change of the index of array_1 also affects the index of 3 other tables at the same index.

    But there is only a property "value Exchange" and no property 'index-change' in the properties of the table.

    So I read the 'index' property and write in the other table.

    But: It seems as if I have to do so within the period of waiting-section of the structure of the event.

    Is there another way to do this?

    Thanks for help

    You can use the mouse event on each table to detec the event (of course, that will attract not only a change of index, but I don't think you care too) and then use the 'values of the indices' property on all the table to set.

    See annex VI (LV2012), hope this helps

  • down arrow key in the structure of the event

    Hello

    I use arrows on my keyboard to control program (UP DOWN LEFT RIGHT)

    Using the button down in the structure of the event, I know what key

    But I need to detect that 2 buttons are pressed at the same time make different case for this. I don't know haw to handle this.

    Any suggestions appreciated

    Keep a table of four Boolean values in a shift register, then turn on each element or off function on a key or key release events. The number of values Boolean true will show you the State of all buttons at any time.

  • structure of the event to turn on and off a LED

    Good afternoon

    I would like to activate a part of my algorithm according to the value in another part. To make it easier, I symbolize the value by a button and tried a structure of user event to turn on or turn off an LED located in another while loop.

    I can turn on the LED, but unfortunately I can't spend off of the LED thereafter.

    It is possible to change the structure of the event and select the option "change value". However, I would like the fatest way to turn on and off using the structure of the event and the Bay. I mean I would like activate a part of the algorithm only if the button is enabled for not having a continuous audit of the value of the button by the structure of the event.

    Please, if anyone has an idea to turn off the LED (after the switch on), add a comment without hesitation.

    I will be happy to solve this simple problem.

    Thanks in advance for your help.

    Ragards

    You have a race condition.

    When you click stop, it's a race about whether if the event gets not saved and destroyed by the removal of the stem all loop against sending the same user in the lower loop.

    Why it only seems to happen with the case of false must be a quirk of how the code is compiled and the order, it is run.

    If you put a step between your Boolean switch and LED, for me anyway, the error is now generated on the true case of the structure of matter (always false for switch.).

    If you put a constant error in the lower loop and wire while guaranteeing the Unregister event so that you now it does not run until the two while loops are arrested, then I don't see a mistake regardless of the value of the Boolean switch when you click stop.

  • Right-click in the structure of the event for Mac OS

    I put a right-click to activate a case of event (with the mouse down? function) in a structure of the event. It works fine in Windows 7.

    But when I try this in Mac 10.10. This does not at all.

    I connected an indicator in the "button" in the case of the mouse down and found the two clicks left and do a right-click returns 1.

    In Windows 7, left click returns 1 and do a right-click returns the value 2.

    Does anyone know how to activate the right click for the structure of the event under Mac OS?


  • How to use the structures of the event for long-running tasks

    I created a state machine that scans a cluster of Boolean controls in a State of 'home '. Most of the States run a Subvi or two in ~ 100 ms or less.

    However, a State run for 10 seconds.

    The code works but the user interface is limited because the controls are outside the cluster because they provide inputs to the structure of State machine case but do not cause changes in the State. In other words, I all orders cluster stacked vertically on one side of the main panel and do not have the flexibility to move the controls to the more intuitive positions on the Panel.

    My question: How can I convert this code in a structure of the event and keep this long term 'event' and prevent that the operator by clicking another button event during the execution of this event?

    Thank you

    You say you have controls outside of your main code... You should really put these inside and manipulate them in a State of your state machine is initialized. This allows you to make changes to the code easier and limits of line entering your outside loop.

    You can do different things to lock the user.

    You can disable specific controls so that they can't be clicked or edited.

    You can use the palette of the mouse to define the busy cursor and disabled again once finished, I do this a lot during treatment when my code something loads the user just clicked.

    One of my favorites is to set a Boolean value in your data that passes through you event titled structure "disable mouse." When the value is True, a mouse down event will effectively reject the event, clicking on disable. I also added an event mouse move where if the bool disable the mouse is set to True, it moves an indicator of string with the mouse by telling the user why it is disabled.

    If you want more specific suggestions, I suggest to post an excerpt of your code, or attach your screws, so that we can better help you.

  • reading two sensors (alternately) in a structure of the event permanently

    Hello

    I have a structure of event with various functions of the user interface. The entire application is on a laser diode control and playback of two light sensors IR which cover different wavelengths (if and InGaAs). The two sensors are connected to the same AD converter, but to different channels. So if I want to read the two sensors, I have to change the setting of the "Converter" AD channels. The real question is how to implement playback continues two sensors in the structure of the event? I want to be able to read alternately each sensor in a span of 50 or 100 m is possible, another using function of time-out of the structure of the event with a kind of logic xor for switching channels? Maybe something with more features (somehow by a timed loop)?

    Any idea is welcome.

    Thank you and best regards,

    Gregor first

    P.s. The sensor reading is done by a National Instruments SPI map where SPI is the master.

    2010 VI converted down

  • manipulation of refreshment of the variables within a structure of the event?

    Hi all

    Here I have my problem: I implemented in a data visualization tool, a button to get the updated file.

    But as the mail application provides new files every 2-5 seconds, I wanted to also apply a function to auto-refresh, so that the file is retrieved every XX seconds.

    I've tried several, solution workaround naïve perhaps, but the problem is that when I start the "auto-refresh", I can't handle anything else in the Control Panel, and I can't change the value of the "automatic update control ' because no doubt... He's waiting. Please find attached the photo.

    What Miss me?

    Thanks in advance,

    Edo

    Hey Edo,

    You can use the event to wait for it. Do not use a wait within a structure of the event function.

    Mike

  • An interrogation continues with the Structure of the event, please help me understand

    Dear Forum,

    I'm 3 months in LabView. I created a front panel with what I consider a reasonable set of code below with a basic entry control power boulean a case controlled set of actions. I enclose a strongly striped version to the bottom of this structure with sections deleted button so that the executed code is removed to simplify just ask questions on this control structure. After the recent webinar, I understand this form of control to call a continuous structure of vote - and it makes perfect sense and seems natural for me to the point of programming of data flow.

    But according to the webinar it is preferable to use the structure of the event.

    However, the structure of the event seems really weird to me. My main question here is certainly the structure of the event MUST be voting each of the values itself anyway, otherwise how does he know that an event had occurred?

    So what is the difference between explicitly "polling" the buttons myself with a while loop and using a complex (for me) of the event with 'hidden' polling stations under?

    The vote of the 4 buttons in my example should be done at the same time if Labview is truly multithreaded/parallel? There should be no difference in the level of the computer between my code querying and the code 'hidden' the structure of the event making the mark.

    Thank you in advance for you help to clarify my confusion.

    Sincerely,

    Robert Gibbs

    rg8766 wrote:

    Surely the process:

    Check the OS press > OS encodes this trigger to send > OS sends a trigger that the button has been pressed > Labview checks if a trigger happened > Labview decodes what action has been coded in this trigger > Labview takes appropriate, based on relaxation measurements

    has more steps and is more intensive than processor

    LabVIEW checks the key > Labview performs the appropriate action when you press the button?

    BONE is already this process in any case.  If you are in fact doubly effort without worrying.  And the OS is much more efficient that your code will be.  So just let the OS do work heavy while your code sleeps.

    And think about the trigger more as an alarm clock.  You are asleep (do nothing, with no CPU) when your alarm goes off.  You wake up and perform the task that the alarm tells you to do.  Once done, you are waiting for another alarm, so you get to sleep.

Maybe you are looking for