Execution timing in LabVIEW

In my application, I monitor 7 sensor values as either on or off and either update internal variables or turn on actuators accordingly. For some reason, LabVIEW is missing some of the sensor values changing and I think its because i'm using flat sequence structures for some of parts as delays are required in some instances. My question is, with several concurrent processes running at the same time, if i enter a sequence structure, does that preempt the other processes. IE, if i'm in a sequence structure and some condition changes outside of the structure, is my system going to be able to detect it?

Entering the sequence structure will not prevent operation of code outside of the sequence structure which is independent from and in parallel to the sequence structure.
I have some questions which may help to isolate the source of your problem.
1. It appears that the parallel processes in your application are intended to independently monitor your sensors. Is this correct?
2. What are the hardware resources that you are using?
3. Is it possible that you're missing data because two portions of the program are trying to utilize the same resources simultaneously?
I do recommend that you try to steer clear of sequence structures when possible as Lynn suggested. While the flat sequence structure has helped with some of the problems associated with sequence structures it still disrupts the natural LabVIEW dataflow operation.

Similar Messages

  • Teststand Multi UUT execution Timing

    Dear All,
       I am working on Multi uut testsystem where I have to tests 5 UUT in parallel, I am using Labview adapter,with Batch process model and testing energy meters where I have hardware suitable for 5 UUT. My question is My execution timing for 1,2 .And 5 uut at a time is different, Ex.. I an getting 1 UUT tested in 5 minutes and when I starts testing when I start testing 2 UUT at the same time My total execution time for same steps and sequence increases to 7 minutes.
    Pl suggest how I can achieve same timing which I am getting for single UUT for more than one UUT execution.

    Doug, I have shared hardware and it is source calibrator for current and voltage which is wired in parallel to all 5 UUT so that it can source to all UUT at the same time.My report generation is disabled and there is no on-fly report ON.I am doing my report generation using the one labview VI where I formatted report at the end of tests so while running the tests report generation not involved.I have around 65 steps in one sequence which made for calibration.
    To get same time of execution for 5 UUT as single UUT do I need to make my labview code module as reentrant? or do I need to make multi thread in labview vi code module like each socket will have separate loop execution inside the VI.? attaching here .seq file for your reference
    Attachments:
    PM5350 Multi UUT Test.seq ‏88 KB

  • Execution timing LV4

    Hi I am having problems with execution timing of my main vi.
    Details:
    Win2000
    Labview 4.01
    The problem lies in the execution of a for loop and the use of a AI multipoint vi for obtaining 2 waveforms. The analog input and the first structure within the for loop are contained within sub vi's.
    When run, the for loop must wait to be executed AFTER the analog input has fully completed. This defeats the entire purpose of what I am trying to do.
    The for loop is used to communicate with a serial device using NI-VISA, and all the inputs for the loop are ready prior to the execution of the data aquisition.
    any ideas how I can get analog input and the for loop and the data acquisition vi to start simultaneously????
    Stuart

    I am certain there is no data dependency between the two strucutres. I tried a wait function but it didn't seem to have any effect. I also tried a while loop in place of the for loop. Still no change.
    The main vi which call the sub vi's and the sub vi's themselves are attached. They are programmed in LV4.01
    Attachments:
    SinePW.vi ‏70 KB
    mainVI.vi ‏195 KB
    DAQ.vi ‏132 KB

  • SSIS 2012 Scheduled SSIS package fail to start – Execution timed out

    Hi
    I am currently running into an issue that seem to have a live Connect issue raised for it. The following is the link to the connect issue https://connect.microsoft.com/SQLServer/feedback/details/783291/ssis-package-fails-to-start-application-lock-timeout-in-ssisdb-catalog-create-execution
    There is also a blog post that explains this issue in more detail, however the solution
    it provides does not work all the time and I am very reluctant to create custom stored procedures in the SSISDB. http://speaksql.wordpress.com/2013/06/27/ssis-2012-fail-to-start-execution-timed-out/
    Just to give some more background. When scheduling 10 or more, in my case I scheduled 14, SQL Server Agent Jobs all executing a package in the SSIS Catalog and all kicking off on exactly the same time about 10% to 20% of these jobs fail stating one of the
    following error messages:
    The operation failed because the execution timed out.  Source: .Net SqlClient Data Provider  Started:  12:20:01  Finished: 12:20:07  Elapsed:  5.797 seconds.  The package execution failed.  The step failed.
    Description: Transaction (Process ID 66) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.  Source: .Net SqlClient Data Provider  Started:  14:06:48  Finished: 14:06:53
     Elapsed:  4.719 seconds.  The package execution failed.  The step failed.
    This timeout takes place both when using TSQL to start the package in the Job or when the step in the Job is set to start the package as an Integration Services Package.
    Steps to recreate this:
    1. Create one SSIS package that simply executes for around a minute. For example you can use an Execute SQL Task and simply execute the following TSQL "WAITFOR DELAY '00:01:00'"
    2. Create 14 SQL Server Agent Jobs each executing the same package and schedule all of them to run at the same time.
    3. Watch the execution of the jobs take place and note the failures. (This does not always happen and you might get one run in which everything executes without a problem. The next run might have 6 or 7 of the jobs fail.)
    You can also create 14 different SSIS packages, one for each job, and the result is the same.
    I am running on SQL 2012 SP1 CU4. Windows Server 2012 R2 patched to the lastest patch level.
    This issue does not happen when the packages are deployed to the SSIS Package Store the way that it was done in SQL2008 and before. It only occurs when the SSIS packages are deployed to the SSIS Catalog.
    Any help or feedback on this would be greatly appreciated.
    Kind Regards,
    Christo Olivier

    Hi Tom
    Thank you for the fast response. I went and increased the value by 1024KB instead of the initial
    512KB. Unfortunately this seems to only alleviate the issue but does not stop it from occurring. It
    is happening much less often now but still occurring intermittently.
    Regards,
    Christo

  • Execution tracer idea - labview

    Hi, I have been working with labview for the past month with hardware
    and software.
    I was wondering if there is a way to see the order of
    execution of the vi....It would be nice to see on the block diagram a
    trace system or numbering scheme or drop down flow that tells the order of
    operation...I think this is all done behind the scenes in labview..It might
    be nice to have a trace or label..maybe this exists..I am getting
    the book for scientist(s) and engineers...so maybe it is there..any help..
    FOR simple programs its not an issue....I have seen some complex vi's!!
    I guess I am use to the old C programming...line by line..
    maybe with time?
    J
    Solved!
    Go to Solution.

    NitinD wrote:
    Alternatively, help yourself by creating a simple "Log results VI" that is connected after every major operation you are doing. LabVIEW essentially divides the codes in clumps, if you can figure out what clumps LV is dividing your code into, probably your job will be easier.
    But I don't see how knowing the order of execution will help you. Even LabVIEW doesn't know it before hand. If your code is so execution-dependent perhaps you should use Frame Structures, that force sequential execution.
    Actually LabVIEW knows it pretty well, but things like timers, delays and such can and will change the execution order between successive runs sometimes.
    Also it is quite useless information to debug an application, because if the execution order of nodes matters in a program you have to force it (dataflow) or you will have a potential race condition, that can and will expose itself at the latest at the moment your application is installed at the other side of the globe and with no internet connection available to even attempt to do remote debugging.
    Just learn to live with it and use its advantages. It is not hard to do correct code. Things like global variables and local variables are an ideal way to cause race condition so if you make it for yourself to a rule to never use them unless you have thought at least twice why they are necessary and how to make sure you have no race condition there, then you are already set for at least 50%.
    You can have race conditions too in C, but there you have to explicitedly write multithreading code, which is kind of hard and therefore is only done when absolutley needed and usually by people who understand exactly what the implications are, and if they don't, they learn it fast during development, or abandon the project sooner than later.
    Rolf Kalbermatter
    Message Edited by rolfk on 08-30-2009 09:12 AM
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Current execution system of labview 8.20

    What is the Current execution system of labview 8.20

    Hi,
    I presume you mean how LabVIEW executes the code in your block diagram? You can see this happen using the "Highlight Execution" button located next to the run, run continuously and abort buttons.
    Thanks,
    CLA | LabVIEW 7.1... 2013
    www.renishaw.com

  • Execution time optimizing labview code

    Hi,
    I would like to optimize my labview program. Is there a way I can plot
    the execution time of my program as a function of some parameter I am
    changing in my program. I was thinking of placing the entire program in
    a while loop and then changing the parameter during each loop iteration
    and then outputting the time that the program takes to execute as a
    function of the parameter. The problem is how would I obtain the
    execution time.
    Thank you,
    -Tim

    Here a re a few more tips:
    Running on a typical multipurpose OS will will make things a bit unpredictable because you never know what else is running so you should always repeat each run many times (then take the fastest, not the average, of all corresponding times).
    Make sure that each run takes a few hundred milliseconds to get accurate values.
    For timing purposes, it might be worth to temporarily raise the execution priority. The results will be much more reproducible (at the expense of useablility).
    LabVIEW Champion . Do more with less code and in less time .

  • I did not find "Switch Execution Target" from Labview 6i?

    The attached VI which I got from NI website does not have the section Operate>>Switch Execution Target>>RT Engine. Where can I find this feature in Labview 6i. Thanks
    Attachments:
    Simple~1.zip ‏28 KB

    DN,
    These VIs are designed for use with LabVIEW Real-Time. You must have the Real-Time Module installed in order to see the Operate>>Switch Execution Target menu item in LabVIEW.
    Regards,
    Chad H.
    Applications Engineering
    National Instruments
    http://www.ni.com/ask

  • System/subsystem timing in Labview

    Hello,
    I work in development of mechatronic systems, many of which have complex timing requirements for mechanisms that interact with each other.
    I have been representing the timing diagrams in Microsoft Project or Excel to get a visualization of what mechs are moving when,for how long and in what order. This allows me to plan the overall system timing which I then code into State Charts to implement.
    Is there a better way of representing this type of timing diagram or better being able to plan and run the sequences in LabView?
    Many thanks,
    Mark.  

    Hi David,
    Attached a MS Project snippit. Typically I create this for the timing specification and then come back to it when the design is realized to enter the actual timing. I use state charts to logically step through the sequences, adding delays in the transistions to implement the required timing. So there is a gap between my sequence in MS Project and my implemention in state charts. I thought there may be a way of representing the timing for management demonstration (MS Project is great for that) which can then be executed.
    Are there any sequencer design patterns available for Labview?
    Thanks.
    Attachments:
    CycleTime1.JPG ‏81 KB

  • Urgent: question about timing in LabVIEW

    Good Evening ..
    First of all, I'am a labVIEW beginner so be easy on me!
    I want to check if an input has the same value for a certain amount of time, for example, if some input has a voltage above 2 V for 10 seconds, how can I express that using a formula node ? If it's not possible then what should I do ?
    I wrote the following program:
    int i,j ;
    for (i=1;i<=10;i=i+1)
    if ( A>2)
    j=j+1;
    if (A >2 && j==10)
    { B = 1; }
    else B = 0;
    the value has to match the condition for the whole period, I know that my code doesn't gurantee it but that's what I could think about!
    I need to make the steps between i increments seperated by one second, but I don't know how to make LabVIEW understand that!
    I would appreciate it if someone told me how to do so
    Best Regards

    As has been said, you really should check out some of the online tutorials:
    LabVIEW Basics
    LabVIEW 101
    With that said, I think you want to get away from using the DAQ Assistant and use some of the more basic nodes.  You can actually set the sample rate of the DAQ and that will be constant.  So you can then get a sample and compare it.  If the value is in the right range, increment a counter.  If it isn't, reset the counter.  Once the counter reaches a certain amount, you are done.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines
    Attachments:
    High for 10 seconds.png ‏22 KB

  • Generating sound signal and record the timing using labview

    Hi,
    can somebody help me in generating audio o/p from daq 6036 and record the same signal for reference.

    Kanth,
    I think you will find there are lots of topics already on the forums talking about trying to do this.
    Here are a couple of examples:
    Forum: Continuous audio output with varying volume or frequency
    Forum: How do I get audio output from a labview program
    Probably the easiest way is to search the forums for what you are looking for:
    Search Results on forums.ni.com for 'audio' and 'output'
    Finally, here is an example program that may also help you:
    NI-DAQmx: Acquiring Audio and Transferring It to a PC Sound Card
    Otis
    Training and Certification
    Product Support Engineer
    National Instruments

  • Possible to get SQL execution timing?

    Is it possible to get wall-clock timing information in thesame way as using "set timing on" in SQL*Plus?

    I think the information you need is automatically displayed on the toolbar of the Sql Worksheet, to the right of the 'execute explain plan (F6)' and 'Clear (Ctrl-D)' buttons.

  • Query execution timing out

    Hi experts,
    I have two queries on the DSO when we run the query it is taking long time to fetch the data. in query i have only 4 chars and 1 key figure out of 4 chars 2 are navigational attributes. what are the different options i have to improve these query performence.
    Thanks,
    Kiran

    Hi Kiran,
    According to improve performance of DSO, implement Indexes.
    And also if the data is verymuch more then divide the data in to 2 DSO's (as per year) and build a multiprovider to access the data.
    We don't have many options to improve the performance of DSO.
    OR
    Use Cube in place of DSO.
    Regards,
    Ravi Kanth

  • Timing in Labview

    Hello
    I am creating an application where I use a 72- hour data set, in order to find the best timeintervall to do a certain operation. However, as people tend to sleep at night, it is not very realistic to just place the operation at the time when it ideally should have been done. Therefore, I want to define a timeintervall when the operation can not be (i.e from 23.00 - 06.00). 
    The problem is that when I try to do this (by using timestamp controls from the numeric palett), I also need to specify a date. I don't wont it to only be valid only for a specific day, but for the whole dataset. Is there any workaround/solution to avoid this problem?
    Greetings
    Kristoffer
    Solved!
    Go to Solution.

    This is quick example. So you don't want to perform the operation between 23 hours to 6 hours (I believe). The attached example will give boolean high/true when the time is between 23 and 6 and false rest of the time. If this is not the thing you wanted then explain a bit more so that it would be easy to understand the exact scenario.
    Good luck.
    The best solution is the one you find it by yourself

  • Execution timed out error when running opcagt command on linux server with agent 11.12.009 installed

    Hi,
    Can anyone help me in the below issue.
    we have a Linux server with agent version 11.12.009 installed on it. when I try running opcragt command on it through are management server it gives the output that all agent components are running.
    but when I check the agent status or version through opcagt command on it it gives below error:
    ERROR:   (depl-86) Unable to execute command 'opcagt' on node
                       (depl-176) Message returned from host           
    (xpl-117) Timeout occurred while waiting for data.
    Below are the error lines that I got from system.txt file of the server:
    0: ERR: Fri Dec 19 09:09:38 2014: ovconfd (3708/140429034952480): (conf-180) Could not create messenger for configuration server 'ovconfd' and register its methods with the messenger object.
    1: ERR: Fri Dec 19 09:09:38 2014: ovconfd (3708/140429034952480): (xpl-89) write(11)[012C5430] failed.
    2: ERR: Fri Dec 19 09:09:38 2014: ovconfd (3708/140429034952480): (RTL-28) No space left on device
    Could anyone please let me know what can be the issue in this.
    Thanks,
    Akansha

    ORA-00600: internal error code, arguments: [kzxcInitLoadLocal-7], [942],
    [ORA-00942: table or view does not exist
    ORA-01403: no data found
    ORA-06512: at "SYS.DBMS_NETWORK_ACL_ADMIN", line 252
    ORA-06512: at line 36
    ORA-01403: no data foundWhat does this query return?
    SQL>  SELECT HOST, ACL
    FROM DBA_NETWORK_ACLS;Please see (Redefining a Network Access Control List Fails with ORA-1403 [ID 854083.1]).
    Thanks,
    Hussein

Maybe you are looking for

  • Problems F3507f Broadband Device on T500 with Windows 7 64-bit

    Hi, I have installed Windows 7 64-bit on my T500 (model 2082-8WG). I dont get my Broadband Device working. In Access Connections the Device is turned OFF and I cannot turn it on. Strange is that the lights on the laptops indicate that de Broadband de

  • How do I record a quicktime screen recording directly to an external hard drive?

    I want to record a screen recording directly to an external hard drive (or flash drive/SD card) and I've heard that doing so will improve system performance by reducing the workload somehow. I'm not entirely sure. Is that true, will it work, and how

  • Photoshop elements 4.0 and an EPS "parser module"

    I just bought a computer that runs a 64 bit version of Vista. I installed my copy of Photoshop Elements 4.0 just fine, but when I attempt to import an eps file I get an error message that says "Could not complete your request because the parser modul

  • CL_SALV_TABLE to display details

    It seems quite simple but I could not get it works.  I need to write a report with header data and when double click on a selected line or click a push button to trigger event, it will show detailed data on a separate screen using CL_SALV_TABLE.  My

  • Who has the book:Object-Oriented Programming with ABAP Objects

    Hello everyone Now i want to learn ABAP OO,and Lots' of guys told me that the book  Object-Oriented Programming with ABAP Objects is realy a good book.but i searched on the net,and could not got PDF of this book,could some one gave me the net address