Sample interval variability

The attached vi is used to sample eight analogue channels at an interval of 31,250microseconds or 32Hz with a cRIO-9074. When I look at the data file there is a sampling interval variation of up to plus or minus ~150microseconds but when I monitor the output from DIO7, which gives a 12msec pulse for every acquisition, with a counter/timer,  the variation is ~1microsecond.
Could somebody suggest why there is such a difference and what measures could be taken to reduce the sampling rate variation.
Best regards,
nos
Attachments:
sample data 13 [marina].vi ‏71 KB

Thank you for your response. With regard to your questions see below.
I assume that when looking at the data file, you're using the timestamp to work out the interval?
That is correct, see attached Excel file; the included plot works out the variability by subtracting the actual sampling interval from the desired interval and plotting the results against sample number.
I would therefore expect a relatively large variation, especially if you are looking at the microsecond scale (and I also assume you are running the code in Windows, not RTOS).
The code is running on the cRIO-9074 and uses a timed loop that is synchronised with the Scan Engine.
Do you need an absolute time? If you are only after interval timing, use the Tick Count (ms), this will give you a more accurate reading.
Absolute time is not required; as shown in the attached file the first data sample should have a time stamp of zero, with each successive sample incrementing by the sampling interval.
Best regards,
nos
Attachments:
data file 1.xlsx ‏259 KB

Similar Messages

  • Sampling local variable and synchroniz​e with DAQmx

    Hello, 
    I made a small change in the set-up I used with labview and now when I wanted to change the code I'm having a rather complicated problem.
    In my old set-up I was measuring three variables: x and y with a QPD and the power of a laser with a power detector. I was using the DAQmx and I was getting a matrix with three columns with n (sample rate) values. Now, for various reasons I had to take out the second detector. So now I want to build the same matrix as constructed before, but instead of putting the measured values of the laser power I want to put the theoretical values (they are in a local variable) as I cannot measure them. The problem is that this local variable, in general, changes during the DAQmx acquisition time and I would need to sample it at the same rate as I acquire the data from DAQ and then combine all them. How I could sample this variable and attach it to my DAQ results? DAQmx doesn't accept local variables.
    Thanks

    A local variable is not something standalone. It is always associated with a control or indicator. Hows is it updated?
    From your description, it is not clear what you are doing. Can you show us some code instead?
    (Also be more clear when using acronyms. QPD cound mean many things)
    LabVIEW Champion . Do more with less code and in less time .

  • Fixed length time interval variable

    Hello experts,
    I would like to define a time interval variable between a start date (entered by the user) and end date which is exactly 12 periods after the start date (the system somehow calculates the end date = start date + 12).
    The same principle should be used for different periods such as day, week, month. For instance for a calendar day variable it should calculate the end date = start date + 12 days, for a calendar week start date = start date + 12 weeks etc.
    How such behaviour with a variable could be achieved ?
    Thanks in advance
    Rado

    Hi,
    Just create a variable ZCDATE of user exit type and code in the exit ZXRSRU01 to populate it.
    DATA: ZE_T_RANGE TYPE RSR_T_RANGESID WITH HEADER LINE.
    Current date
        when 'ZCDATE'.  " Your Variable
          IF I_STEP = 2.
            ZE_T_RANGE-SIGN    = 'I'.
            ZE_T_RANGE-OPT     = 'EQ'.
            ZE_T_RANGE-LOW     = SY-DATUM.
            APPEND ZE_T_RANGE TO E_T_RANGE.
            clear ZE_T_RANGE.
          ENDIF.
    Thanks,
    Debasish

  • Interval variable

    We have created an interval variable for fiscal year and one for period.  Both are processed by customer exit.  these variables have a from and to field which values are defaulted in.  They work when executed in BEx, but when they are executed in the web the To field shows no value.
    Anyone know if there is an Oss note to fix this or if anyone knows how to fix this?
    help is appreciated.

    Try executing in the debug mode from RSRT2 and after setting a break point in the user exit. You will be able to see whether the value from derived from the exit is assigned to the variable.
    Thanks.

  • Allowing customer exit interval variables to be "Ready for Input"

    Hi BI fans,
    I am looking to construct a Pie Chart where the default view will show the Year-To-Date data. At present, we are utilizing a customer exit variable (from the 0FISCPER characteristic) to carry out this task.
    It is also required, however, to allow the user to manually adjust the start <u><b>and</b></u> end date of this period. Is it possible to have a customer exit interval variable which will allow the user to modify the start and end date – and thus facilitate specified time periods?
    I look forward to hearing from you,

    Hi
    Use a BI Content variable like 0I_CFYTD - Year to Date For Current Fiscal Yearm, this variable is a interval variable and will default from fiscal period 1 to the current period.
    If you edit the variable and set it to ready to input then when you run the report at the variable screen you can change the period on which you want to report.
    hope this helps

  • Interval Variable in Arcplan

    Hi,
    I'm creating a report in Arcplan based on a BEx query. There is an interval variable in the query so how will i achieve the same functionality in Arcplan??

    what is this arcplan? let me know your issue in more detail.
    thanks,
    mahantesh

  • Display interval variables value in BeX

    Hello Gurus,
    I am using Bex BI 7.0 to build my reports. I can't see how to display the value of variable values I have selected in the beginning of the query.
    To clarify with an example I want to choose the period from January to March and to display this selection in the report I have built.
    The only way I was thinking about was to create a Text variable to display in the title of the query but I noticed it displays only single value and don't manage interval like these.
    Is there any other tricks?
    Thanks in advance
    Massimo

    Very good Jaya. I have solved my problem and I rewarded it. The only problem that still remains with this feature is that in a query I use a filtered key figure to obtain cumulated value for period. The "from period" is fixed (january) and the "to period" is given by my period variable.
    I noticed that in this case the text variable return me no value. Is there any another trick to manage text variable in filtered key figure like that?
    Regars
    Massimo

  • Restricted Key Figure with interval variable

    Hi,
    I've a restricted key figure for KF 0AMOUNT restricted by 0FISCPER. There is a variable restriction on 0FISCPER which determines the period interval in customer exit.
    e.g. 001.2008 to 009.2008
    The problem is, in query this RKF is returning only the values for period 009.2008. It should return the total for all the periods.
    Can you tell me what could be missing?
    Regards,
    Amit

    Hi Amit,
    please check the cutomer exit, as the range might not be properly defined in the exit.
    Firstly check if the variable is defined as range or single value, and if defined as range please check the below mentioned lines in the exit:
    L_S_RANGE-SIGN = 'I'.
    L_S_RANGE-OPT = 'BT'.
    as they stand for:
    SIGN     (I)ncluding [ ] or (E)xcluding ] [
    OPT     Operators: EQ =, BT [ ], LE <=, LT <, GE >=, GT >, CP, and so on.
    hope it helps
    Regards,
    Umesh

  • How to set the sampling interval using DAQ device?

    Now I have a capacity sensor and a 24 bit DAQ device (http://www.mccdaq.com/usb-data-acquisition/USB-2404-10.aspx).
    The DAQ device has the maximum sampling rate of 50kS/s . My question is how to set the interval of data collection. For example, if I set the sampling rate to 2000, in continuous sampling mode, I use DAQmx read.vi in a while loop and set the 'number of samples per channel' to 100. I want to plot these data as a function of time by using a XY graph and also save these data. So I add a 'Mean' function to get the average of the 100 samples per each loop (than means, there are 20 data output per second). But when I set the 'number of samples per channel' much smaller (to get more data per second), there are some problems. It seems that the program cannot read so many data and get the average at a higher frequency. I don't know where the problem is. All in all, how to collect data more frequently?Maybe I didn't express my question clearly. I'll upload a simple program later if necessary. Thanks.
    Solved!
    Go to Solution.

    Another question is in continuous mode, NI DAQmx uses Samples per channel to determine the buffer size. But according to the website you specified, it says if the acquisition is continuous (sample mode on the DAQmx Timing.vi is set to Continuous Samples), NI-DAQmx will allocate a buffer according to the following table. And for sample rate between 100 - 10,000 S/s, the buffer size is 10 kS. So if I set the sample rate to be 5000 S/s, and set the Samples per channel to be 20000, then what exactly the buffer size is? 20 kS or 10 kS?
    Thanks.

  • Audio sample at variable frequency

    I think this is the right forum for that question.<BR>
    Do anyone know if it is possible to play an audio sample an modify the frequency while playing according to a variable value?
    Any example?

    write yourself a Mixer that can change the frequency of the data flowing through it.</p>
    Mixer
    <p>
    Or find one on the internet that does it.
    <p>
    matfud

  • Cummulative last 3 months of each month from Calmonth Interval variable

    Hi,
      we have one complex scenario where we have to display dispatch quantity against the Calendar Month (user input variable).
    for example if user enters; FROM:  january 2009  TO:  march 2009, the dispatch quantity should be calculated as cummulative of last 3 months of each month as follows;
    (jan 2009Dec 2008Nov 2008)(Feb 2009Jan 2009Dec 2008)(Ma 2009feb 2009jan 2009)
    the same way we need calculate cummulative last 24 & 36 months for each month from user entry.
    Thanks,
    Janapati N

    Hi,
    Thanks for you replay and documentation, but it doesn't give me excatly the functionality I'm after. The only MTD calculation code the document provides is the calculation of the following functionality:
    "Month to Date (MTD) u2013 From the 1st of month to u201CKey Dateu201D - for current year." This doesn't give the the functionality I want, which is to retrieve a given vaule for a Key Figure for the last dates of the months in a year to calculate MTD and YTD.
    This way I have created the query is to have multiple hidden Key Figures that calculates the MTD and YTD.
    In Columns in Query Designer it will look something like this:
    Selection: MTD January--> Date = 31.01.2008, Key Figure (Always Show)
    Selection: YTD January --> Date= 31.01.2008, Key Figure (Always Show)
    Selection: MTD February --> Date= 29.02.2008, Key Figure (Always Hide)
    Formula: MTD February --> MTD February - MTD January (Always Show)
    Selection YTD February --> Date = 29.02.2008, Key Figure (Always Show)
    And so on....
    This is off course a simplified version, but it shows the core of the solution. What I want to achive here is that the dates used to get the Key Figures (last date of a month) is calculated as flexible as possible, so that the users can go back and forth in time without worrying about the leap year problem and so on. I have now used an offset from the last date of last year and this is good for all the normal years, but when it is a leap year the query will use wrong dates to get the key figure vaule for the last date of each month.
    Any ideas on how to achieve this without creating 12 different Customer Exit variables (one for each end date of each month)?
    Thanks
    Regards
    Oddmar Lid

  • Interval variable for Calendar Day

    Hi Experts,
    Please help!
    We are working with CE VC 7.2, our model has an input form to a variable on calendar day (data source: BI Query).  We would like to input a date range using a from and to date picker. 
    How do we populate the values from the date from and date to - there used to be a value help option on BI variables in 7.0 - however, we don't see this option anymore on 7.2.  Is there another way to do this. 
    Please advise.
    Thanks, Anna

    HI,
    I am working on CE 7.1 version and in this if you take the "Date From" and "Date To" variables are as of type "DATE" while defining the data, it will show up as date fileds attached to input box.
    you can directly enter date and/or you can select the date by clicking on date picker.
    I am sorry if it is not like this in 7.2, I can not test also
    PradeeP

  • Calculating the difference for 2 values by  using an Interval variable year

    Hi Gurus,
    i created a report with one KF using a variable year intervall.
    By selecting for e.g intervall [2003-2005] (the intervall is not fix) the report display KF 2003, KF 2004, KF2005.
    Now i will like that the report shows dynamically:
    KF 2003, KF 2004 = Value of 2004- Value of 2003, KF 2005 = Value of 2005- Value of 2004.
    I have only Frontend Access.
    Any idea how to do this?

    Hello
    I found a solution for your problem but this solution will work only if your third group contain the client number.
    So I hope this will work for you.
    - You have to go in your third group and create a summary column. This column will calculate the total of 'total lease' in source property and reset at 'client number'
    - After, you create another summary colunm. This column will calculate the total of 'Lease Paid' in source property and reset at 'client number'
    - You create a formula column and you write down this formula:
    function CF_1Formula return Number is
    temp_num number;
    begin
    temp_num := :cs_2(lease paid) - :cs_1 (total lease);
    return(temp_num);
    end;
    And after, on your report, you create a text with this formula as source and you put it in the right group.
    Hope this will help you
    Karine

  • Key Date variable; Interval in query properties for Time Dep. Masterdata

    Hi,
    I've been searching on the forum, and I think I know the answer already, but still I'd like
    to ask you all whether it's possible to create a Key Date Interval variable to be used in the query properties.
    As far as I can see you can only report by a single key date used in the query properties field for time dependant masterdata, but my customer has asked me to investigate the possibility to enter a date range.
    As all masterdata is time dependant I don't see how this would work, but if someone can shine a light on this maybe there is a solution available?
    Thanks for your help.
    M.

    Hi marc
    I understand your problem.
    I had an idea for a workaround.
    If you can create master data compounded with Valid from and Valid to both of these characteristics , how the query is computing
    the keyfigures.
    Every change in valid from or valid to is unique for the system in this case.
    Thanks
    N.Ganesh

  • NI 6110 Example 2 doesn't provide scan interval and samples like it should

    Hello,
    I'm developing software for NI 6110 with DDK and QNX Momentics 6.4.1.
    I tried Example 2 (aiex2.cpp) but it didn't stop the Acquisition after 5 Scans, and the Sample Interval
    isn't 1 ms (Fifo filled after 1us -> Fifo Size is 8192).
    Does the example code work like it should? Has it already been tested?
    I got this card as a loan to test it for our requirements.
    Therefore I hope to get response soon before I  have to return it.
    Thank you,
    Best Regards,
    Martin

    Hi Martin,
    So I've instrumented aiex2.cpp to get a closer look at what's happening in the example. I've attached the patch so you're welcome to apply it and modify it for QNX system calls if you want to try the same. Apply the patch with
    patch -Np1 ./aiex2.cpp ./add-time-measurements.patch
    Anyway, I've been able to confirm that the timing engine on the STC is not correctly driving the 6110's ADCs. The operation indeed finishes too quickly: see the output from the modfied example below. At this point, there are a two things we can do: continue troubleshooting this example to get it working and move forward from there, or discuss your application needs and try to solve the problem more directly.
    I think the second option would be better since you also want DMA incorporated into your program. So, I know you want 2 channels sampled at 2 MHz, starting with finite acquisitions. Does this mean you want some kind of retriggerable operation or a continuous read later? What are you trying to do with the 6110?
    I should also note now that this board was the first S Series board, so it is quite old, and has been with NI longer than me ;-) I'm not as familiar with the 6110 as I am with M Series (or TIO Series) devices, so I will be asking colleagues for their experience as we go deeper into the application. I want to be able to explain to you how to modify the examples or provide specific register information and programming logic so that you can make the changes that you need.
    $ ./aiex2
    loop: 0 has status 10a0
    loop: 1 has status 00a2
    loop: 2 has status 00a2
    loop: 3 has status 00a2
    loop: 4 has status 00a2
    loop: 5 has status 00a2
    loop: 6 has status 00a2
    loop: 7 has status 64a2
    start: 76506 s, 751025868 ns
    end: 76506 s, 751037194 ns
    span: 0 s, 11326 ns (0.000011 s)
    Value 0 equals 65
    Value 1 equals 1005
    Value 2 equals 65
    Value 3 equals 1005
    Value 4 equals 65
    Value 5 equals 1005
    Value 6 equals 65
    Value 7 equals 1005
    Value 8 equals 65
    Value 9 equals 1005
    Joe Friedchicken
    NI VirtualBench Application Software
    Get with your fellow hardware users :: [ NI's VirtualBench User Group ]
    Get with your fellow OS users :: [ NI's Linux User Group ] [ NI's OS X User Group ]
    Get with your fellow developers :: [ NI's DAQmx Base User Group ] [ NI's DDK User Group ]
    Senior Software Engineer :: Multifunction Instruments Applications Group
    Software Engineer :: Measurements RLP Group (until Mar 2014)
    Applications Engineer :: High Speed Product Group (until Sep 2008)
    Attachments:
    add-time-measurements.patch ‏5 KB

Maybe you are looking for

  • Import a subtemplate in XML PUBLISHER 5.6.2

    Hi, we need to be able to reference subtemplates in our templates in XML Publisher. We were able to test successfully on our desktop by using the following command: <?import: file:///C:/SousGabarit/Variables/X0050_fr.rtf?>, but we failed after adapti

  • BADI or User Exit for Txn : CRMD_ORDER

    Hi Experts, Is there any badi or user-exits for the transaction crmd_order. regrads, arul jtohi a

  • LDAP server?

    Good afternoon folks: Can anyone point me to where I find the directory server installation for solaris 10 x86? The install routine seemed to assume that I had purchased a copy or had the 90-day evaluation of Java Enterprise System, and the license I

  • Clone multi-node RAC and ASM to single node

    Hi everyone. I need clone system with 3 application server and 2 oracle database RAC and ASM to single-node. The operating system is RHEL 5. I see some metalink notes, but we can't found nothing. I find notes with multi-node to single-node, but nothi

  • Write from SEM BPS in a infoobject in BW

    Hi there, does anyone know how to write from SEM BPS into an infObject in BW? Many thanks and regards, Antonino