a timestamp correlated

Hello Forum,

My previous post is left unanswered , and so I stumbled through on my own. My goal was to perform time correlated anticipated spectroscopy. I use a 6321 X series DAQ card, a Perkin Elmer SPCM and a pulsed laser. I'm exciting a sample with a laser and wish to obtain a precise timestamp of the first photon detected off the laser. I then repeat the measure to build a histogram from where I can get the life of my sample (~ 1 micosecond).

As I understand it, the counter on the X series cards cannot retriggered. My solution is to reset the counter with the falling edge of the signal modulating the laser then timestamp that the first photon after it (attached). Right now my program gives me the timestamps of all photons in the buffer zone, but I want only the first. Is there a way simple and elegant to get just get the first element in the buffer on each stop without slowing down the Data Acquisition loop?

Thanks in advance,

R

A few changes of vi...

> Is not enough for me just remove the second stop event structure in the loop of the consumer.

It is preferable to one producer in a loop. consumer is also control loop that is to handle the controls of the usr.

Tags: NI Hardware

Similar Questions

  • cDAQ-9188 t0 timestamp

    Hello

    I have 2cDAQ-9188 Chassisseparated by some distance and running a sort of coax or wire between them for the sharing of the clock is not feasible, nor tight very necessary synchronization.  (Both being read by the same PC & software)

    But I am tracking the time between them Jig by comparing just the time t0 reported on the waves produced in lu DAQmx.

    My question: which is production/determine this t0 timestamp?  

    The result of the PC clock, or some calculation based on the task start and the number of iterations clock passed?

    Or is it produced only by the Chassis 9188?  If this is the case, I'm curious if the clock on the frame is silently being synchronized with the clock on the PC at certain intervals.

    If t0 timestamps are all produced in the end by the PC clock, my algorithm of tracking little is pretty useless.  It's okay if that's the case, I just want to know how I can say that I am tracking the cross-chassis jig.

    Maybe I'm missing another way to follow the jitter between the chassis that I didn't think.

    (FYI, this can be illustrated using simulated devices, it seems to be very similar to real hardware, so if it's not entirely logical I could produce a small set of code that shows what I mean)

    On a note slightly unrelated, where are the congratulations for daqmx?  LabVIEW Gets a lot of love, there is good reason, but this driver is awesome.  Never heard someone sing his praises.  Maybe it's because when we talk about what they are usually trying to understand why he is throwing a fit and refused to cooperate but the fact that he can complain with lucidity instead of default in silence is yet one more reason it's so good to use.

    Thanks in advance,
    -Ben Phillips

    Hey Ben.

    The timestamp of t0 is referenced only from the PC clock.  The time on the chassis is not synchronized with the PC somehow, and the frame time is not taken into account for the calculation of t0.  To tell you the truth, the value of t0 is about the time that the task is started/weapon and has not a very strong correlation time of the first measure is actually taken, especially for beginning of tasks and others as triggered cases where there could be some significant time between the armament of the task and taking the first sample.

    A way to get a rough idea of the LAG might ping the two chassis from the point of view of shared hosting.  Time round trip to spend a single package on the chassis back will give you a rough idea of the LAG for single point applications, assuming that chassis hardware is starts at the same time (which would require a physical trigger shared connection).

    If you are not concerned about the tight synchronization then I would say continue with your happy contempt for the moment because t0 probably doesn't provide much info useful to the case you're trying to measure.

  • Analysis of chain to get the Timestamp, LV 2012 problem

    I have a VI I wrote in 2013 LV where it works very well.  But with the same VI in LV 2012SP1, analysis of string to get a Timestamp does not work.  Attached is the VI recorded in LV2012 SP1.

    Background:

    I work with an FPGA where I am synchronizing pulses using the clock of 40 MHz.  I connect these impulses in a file on my host PXI. To correlate the clock on the FPGA with a log file and real life someday, I named the file with a timestamp, and the meter 64-bit encoded hexadecimal string.  Now, I have a pretty good correlation between when the 64-bit against him and the time of day to facilitate the search of the data file.

    Now, I try to analyse the file name, so in my analysis of code I can reassociate the value 64 bits with the time of day using the string functions to separate the file name.  With a few regexes (which I've never used in real life before), I've broken down the chain and got the base time as a timestamp, and the counter value as a 64-bit integer.  The VI works very well in 2013 LV.

    But when I saved it to the LV 2012, analysis of string to get the timestamp fails.  No error, but the timestamp shows 19:00 12/31/1599 (I am GMT - 5).  I have no idea why.  A bug in the parsing of the string that was set in 2013 LV?

    Please run the attached VI in LV 2012.  Confirm if it fails for you.  Then open it in 2013 LV and see if it works for you.

    I am trying to make it work in LV 2012 because this project is locked in this version of LV for now.  I can probably do something to reorganize the time string to get something that will scan a digital time stamp if I have to.

    Hi Bill,

    Sorry to be a bit late on this point, I just came across this thread after the hunt for the CAR for a separate issue. The fix for 300375 CAR is what causes the difference in behavior between versions of LabVIEW. It appears on the list of known issues of LabVIEW 2013, although the description focuses more on the fixed number than other possible differences between the versions.

    The thoughts in this thread died on what happened in the difficulty. LabVIEW 2013 now pick up the string of year 2 or 4-digit number when you use the %y or %Y tags, respectively. Previously, the behavior was more forgiving in the year format, leading to incorrect behavior that you have observed strings of 4 digits in the year the %y tag. The original problem, you pointed out (2012 incorrectly string manipulation of tagged %y (2 digits) 2-digit year is precisely what has been fixed in the CAR.

    Regarding your strange result over the years with the tag %Y-2 digit, this is a limitation of the type of data Time Stamp itself. The year will always be converted to between 1600 and 3000. So no time extreme travel journaling. Yet.

    See you soon,.

  • Void correlated, making query very slow

    Hi all

    I have a correlation query that performs evil and not sure why. Here is the code:
    *Explain Plan:*
    
    PLAN_TABLE_OUTPUT
    
    Plan hash value: 1791134653
     
    ---------------------------------------------------------------------------------------------
    | Id  | Operation             | Name        | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |
    ---------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT      |             |     1 |   262 |       | 16216   (7)| 00:03:15 |
    |*  1 |  FILTER               |             |       |       |       |            |          |
    |   2 |   HASH GROUP BY       |             |     1 |   262 |       | 16216   (7)| 00:03:15 |
    |*  3 |    HASH JOIN          |             | 13708 |  3507K|  3456K| 16212   (7)| 00:03:15 |
    |*  4 |     HASH JOIN         |             | 13708 |  3293K|       |  7579   (8)| 00:01:31 |
    |*  5 |      TABLE ACCESS FULL| SKRUDAP     | 13708 |   388K|       |   622  (10)| 00:00:08 |
    |   6 |      TABLE ACCESS FULL| SZRAPPL_ADT |  1197K|   247M|       |  6914   (8)| 00:01:23 |
    |   7 |     TABLE ACCESS FULL | SZRAPPL_ADT |  1197K|    18M|       |  6791   (6)| 00:01:22 |
    ---------------------------------------------------------------------------------------------
     
    Predicate Information (identified by operation id):
    ---------------------------------------------------
     
       1 - filter("SATURN_SZRAPPL_ADT2"."SZRAPPL_ADT_TIMESTAMP"=MIN("A"."SZRAPPL_ADT_TIME
                  STAMP"))
       3 - access("A"."SZRAPPL_ID"="SATURN_SZRAPPL_ADT2"."SZRAPPL_ID" AND 
                  "A"."SZRAPPL_CHOICE_TYPE_NO"="SATURN_SZRAPPL_ADT2"."SZRAPPL_CHOICE_TYPE_NO")
       4 - access("SKRUDAP"."SKRUDAP_APPLICANT_NO"="SATURN_SZRAPPL_ADT2"."SZRAPPL_APPLICA
                  NT_NO" AND "SKRUDAP"."SKRUDAP_CHOICE_NO"="SATURN_SZRAPPL_ADT2"."SZRAPPL_CHOICE_TYPE_N
                  O")
       5 - filter("SKRUDAP"."SKRUDAP_TERM_CODE_ENTRY"='201100')
    If I changed the line that connects the timestamp to the MIN (timestamp) of the sub query...
    AND nvl(SATURN_SZRAPPL_ADT2.SZRAPPL_ADT_TIMESTAMP, to_date('30/12/3999','DD/MM/YYYY')) = (select nvl(min(A.szrappl_adt_timestamp),to_date('30/12/3999','DD/MM/YYYY'))
    
    
    then I get much a much much faster response. By taking swapping that line, this is what the explain plan looks like:
    
    
     
    ---------------------------------------------------------------------------------------------------
    | Id  | Operation                     | Name              | Rows  | Bytes | Cost (%CPU)| Time     |
    ---------------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT              |                   |     1 |   246 |   104K  (1)| 00:20:50 |
    |*  1 |  FILTER                       |                   |       |       |            |          |
    |*  2 |   HASH JOIN                   |                   | 13708 |  3293K|  7702  (10)| 00:01:33 |
    |*  3 |    TABLE ACCESS FULL          | SKRUDAP           | 13708 |   388K|   622  (10)| 00:00:08 |
    |   4 |    TABLE ACCESS FULL          | SZRAPPL_ADT       |  1197K|   247M|  7038   (9)| 00:01:25 |
    |   5 |   SORT AGGREGATE              |                   |     1 |    16 |            |          |
    |*  6 |    TABLE ACCESS BY INDEX ROWID| SZRAPPL_ADT       |     1 |    16 |    10   (0)| 00:00:01 |
    |*  7 |     INDEX RANGE SCAN          | SZRAPPL_ADT_IDX_1 |     7 |       |     3   (0)| 00:00:01 |
    ---------------------------------------------------------------------------------------------------
     
    Predicate Information (identified by operation id):
    ---------------------------------------------------
     
       1 - filter(NVL("SATURN_SZRAPPL_ADT2"."SZRAPPL_ADT_TIMESTAMP",TO_DATE(' 3999-12-30 
                  00:00:00', 'syyyy-mm-dd hh24:mi:ss'))= (SELECT 
                  NVL(MIN("A"."SZRAPPL_ADT_TIMESTAMP"),TO_DATE(' 3999-12-30 00:00:00', 'syyyy-mm-dd 
                  hh24:mi:ss')) FROM "SATURN"."SZRAPPL_ADT" "A" WHERE "A"."SZRAPPL_ID"=:B1 AND 
                  "A"."SZRAPPL_CHOICE_TYPE_NO"=:B2))
       2 - access("SKRUDAP"."SKRUDAP_APPLICANT_NO"="SATURN_SZRAPPL_ADT2"."SZRAPPL_APPLICANT_NO"
                   AND "SKRUDAP"."SKRUDAP_CHOICE_NO"="SATURN_SZRAPPL_ADT2"."SZRAPPL_CHOICE_TYPE_NO")
       3 - filter("SKRUDAP"."SKRUDAP_TERM_CODE_ENTRY"='201100')
       6 - filter("A"."SZRAPPL_CHOICE_TYPE_NO"=:B1)
       7 - access("A"."SZRAPPL_ID"=:B1)

    Centinul has provided a solution, I have provided another.

    Interrogation of several times the same physical table should be avoided.

  • Hop on a max timestamp with selfjoin timestamp

    create table t1 as
    (id varchar2(15),
    status  number(2),
    stattime timestamp(6))
    INSERT INTO t1 (id, status, stattime) values ('abc', 1', TIMESTAMP '2008-10-08 10.41.05.233000'); 
    INSERT INTO t1  (id, status, stattime) values ('zyz', '3', TIMESTAMP '2010-05-01 07.15.09.000000'); 
    INSERT INTO t1  (id, status, stattime) values ('zyz','3', TIMESTAMP '2010-05-01 07.15.09.233000'); 
    INSERT INTO t1  (id, status, stattime) values ('mnl', '1', TIMESTAMP '2011-06-08 10.41.05.233000'); 
    INSERT INTO t1 (id, status, stattime) values ('mnl' ,3', TIMESTAMP '2010-06-08 10.41.05.233000'); 
    Trying to get the status of max for the code. with the following sql
    SELECT distinct a.status, a.stattime FROM t1 a
                                WHERE a.stattime = (SELECT MAX(B.stattime) FROM t1 B);
    Select max works as expected.
     (SELECT MAX(B.stattime) FROM t1 B);
    She returned stattime ' 2008 - 10 - 08 10.41.05.233000 am', to 'abc '.
    But when use the complete select statement it returns nothing.
    Am using oracle 11g.

    Any ideas would be appreciated.

    Hello

    user628919 wrote:
    Trying to get the status of max for the code. with the following sql

    SELECT distinct a.status, a.stattime FROM t1 a
    WHERE a.stattime = (SELECT MAX(B.stattime) FROM t1 B);
    

    So why don't join you add the join on id predicate in the correlated subquery?

    Scott@my10g SQL>with t1 as (
      2  select 'abc' id, '1' status, to_TIMESTAMP('2008-10-08 10.41.05.233000') stattime from dual
      3  union all select 'zyz', '3', to_TIMESTAMP('2010-05-01 07.15.09.000000') from dual
      4  union all select 'zyz','3', to_TIMESTAMP('2010-05-01 07.15.09.233000') from dual
      5  union all select 'mnl', '1', to_TIMESTAMP('2011-06-08 10.41.05.233000') from dual
      6  union all select 'mnl' ,'3', to_TIMESTAMP('2010-06-08 10.41.05.233000') from dual
      7  )
      8  SELECT distinct a.status, a.stattime FROM t1 a
      9                              WHERE a.stattime = (SELECT MAX(B.stattime) FROM t1 B where A.id=B.id) ;
    Scott@my10g SQL>/
    
    S STATTIME
    - -----------------------------------
    1 2011-06-08 10.41.05.233000000
    3 2010-05-01 07.15.09.233000000
    1 2008-10-08 10.41.05.233000000
    
  • A bug in the timestamp of text messaging

    Hello. I would like to report a little bug in iOS 10 and below, in text messaging. When I send a sms and conversation contains more than one message, if I delete the last conversation and leave the rest of it canceled, the timestamp of the message I deleted is shown as the timestamp of the message in the main menu of the e-mail, while the original message has been deleted. I mean, when you delete a message, the timestamp of the previous message should appear as the timestamp of the message in the main menu, not the one's who no longer exists. For example, when I delete the last message (with 09:04 timestamp), if the timestamp of the message remaining (12:41 am) should logically be included in the main screen, but 09:04 is always displayed in the main menu.

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

    Here is the screenshot of the problem:

    The timestamp of the last message is 09:04. -> > >

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

    Below, I've removed the last message (which was the time stamp 09:04), so that the last post time is 12:41 am logically. -> > >

    ---------

    But, in the main menu, the previous time is always displayed as the timestamp of the message-> > >

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

    I think that the time stamp in the main menu should show you the last message that you CURRENTLY HAVE in your conversation, not one that has been deleted and no longer exists.

    09:04 belongs to the message that I deleted.

    The timestamp should be turned into 12:41.

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

    Hellllllloooooooo!

  • A shippers sometimes emails get the timestamp of 31/12/1969 18:00. Why?

    A sender of guaranteedrate.com has had three of his e-mails on five or six receive the timestamp of 31/12/1969 18:00 when in fact he sent them in the past two weeks. This place well in the slot more early possible date and found only because they appear as an unread. I don't remember what happens with someone else. It's time to plant; I am Central time. He's in Chicago; I'm in Houston. I always run the latest Thunderbird, now at 38.3.0. My OS is XP sp3.

    I meet also now "threading" of the messages that I have not opted in for and that I don't like.

    Thanks for any help.

    The number of thread

    In the Thunderbird menu bar
    View - sort by - (Date?) - (down?) - not threaded
    (If no Menu bar visible, press onAlt')

    Matter of time.

    In simple terms
    The sender, or a mail server goes by, has a low battery or dead in the CMOS, which prevents the computer from forming properly validates a date/time group.
    Or, if the date/time group is damaged in some way.

    The computer uses the time standard UNIX to calculate the date and time.
    It starts at 0 as of January 1, 1970 00:00 GMT and increases by 1 every second. Computers can calculate a date and time by calculating the number of seconds since the beginning of the time UNIX.

    If a computer shows a group 31 December 1969 time - 18:00, this indicates that the computer is 6 hours west of Greenwich, England, in the early period, or is located in the central area WE delay / Canada

    This isn't a problem with the recipient's computer or with Thunderbird.
    The recipient must contact the sender and let her know the problem of time, so he can check his own machine or notify his local mail server.

    TB - 38, 3 Win10-PC

  • Use the timestamp when another cell contains one of two values

    Hi everyone again,

    I am struggling with a formula more in number. I have a formula whose time stamps the current date in a cell when a corresponding cell in the map is filled with '1 '.

    =IF(C3=1,TODAY,"")
    

    Hey Joe,

    IF and WHERE are your friends.

    Formula in D3 (fill down)

    = IF (OR (C3 = 1, C3 = "G"), TODAY (),"" ")

    Today is dynamic; It is not a timestamp.

    If you open the document tomorrow, it will be a new today (July 23, 2016, at least in Australia).

    Do you want a real timestamp (scheduled) or a dynamic date?

    Kind regards

    Ian.

  • I have a problem with a timestamp changed on my error report, I was wondering if I could get someone to help?

    Mozilla crashed about 15 minutes in an online evaluation timed for my university studies I can't repeat. The attempt to get information on the crash, so that my University could see that I was not lying about the time of the accident and the site I was on, the timestamp changed when I clicked on the link for more detailed information.

    I was wondering if there was anywhere I could get the original timestamp as time seems to have changed on my subject: blocking the page as well.

    Emergency assistance would be most appreciated.

    Hello abital, about: crashes, click the ID of the accident in question to open on the site of the crash - stats.mozilla.com & switch to the 'Metadata' tab you will find a field named CrashTime who then has time when the accident occurred initially in the form of a Unix timestamp. You can convert this value to a format readable by a service such as www.epochconverter.com

  • Why some texts have timestamps and others do not?

    I am trying to determine the exact time that I received a message, but it doesn't have a timestamp. Help?

    All the texts have timestamps.  You may need to press some and drag them to the right on the left to see them.

  • Not touch event timestamp in milliseconds

    Touch horodateurs event seem to be in microseconds instead of milliseconds.

    The test page prints below touchstart and timestamps touchstart event in the box.

    http://www.apprisant.com/tab/TS.html

    This has been supported in a bug, looks like you filled the 735553 bug.

  • How can I view the timestamps of text on an iPhone 5 c

    On my 5 c 9.3.1 running iPhone, outgoing text messages display a timestamp. Incoming messages only. How can I view the time stamp on incoming messages?

    It is displayed at the top of the first post of the series

  • Palm Treo 850 text timestamp update for sprint

    Hello!

    I have a Palm Treo Pro 850 running WM 6.1 has been used for several years now and love it. It has recently crashed and I had to do a full memory cleaning. Well, it has been returned to factory settings and now I'm reloading software that is no longer available on the Sprint Palm site: http://kb.hpwebos.com/wps/portal/kb/na/treo/t850/sprint/solutions/article/8604_en.html

    In particular, I'm actually load the driver software for the delivery of text messages timestamp.  If someone has this file and that you wouldn't mind Sending me (or otherwise, direct me to it), I would be very happy!

    Thanks in advance!

    Have you tried this page?

    http://KB.hpwebos.com/wps/portal/KB/na/Treo/T850/Sprint/downloads/page_en.html

    WyreNut

  • How to create iMessage timestamps

    How can I create a timestamp in iMessage settings so I get info date and time of each text message I get. I have Android and it's automatic. It of not a big deal, but may be useful in trying to remember when you sent or received a message. Here is an example

    iMessages already are time stamped, but hidden by default. To see the time stamp, open any conversation, slide your finger on the message from right to left. However, once your finger is raised, the timestamp will disappear.

  • HP50G: correlation

    Hi, I have to make a correlation between the experimental data but I don't know what to use: LSQ or adapt data?

    I have this equation

    B = x + y / A

    And these data

    B1 =-281.5

    A1 = 240

    B2 =-201

    A2 = 250

    B3 =-166

    A3 = 275

    B4 =-138

    A4 = 300

    I read the guide for 50g, but I can't solve my problem

    Thanks in advance

    Hello, Mrs92!

    The HP - 50 g did not have a built-in commands to resolve this problem.

    It is possible to solve this problem for the correlation given by using the method of the "Non-linear least square.

    You can write a program for HP - 50 g using this method.

    Please visit http://en.wikipedia.org/wiki/Non-linear_least_squares.

    Try the program:

    (Note: ' B = x + y / A '-> ' y = a + b / x "!)

    < < - > PUSH ∑DAT TRAN AXL Q OBJ - > DROP
    -> XI YI
    < < XI INV ∑LIST EVAL
    ∑LIST XI INV SQ EVAL
    YI ∑LIST EVAL
    XI YI / ∑LIST EVAL
    XI-> Q
    -> SX SY SYX SX2 N
    < < [' N * a + b * SX = SY' ' SX * SX2 has + * b = SYX']
    [ 'a' 'b' ] FIX
    1 GET OBJ-> DROP - 105 SF EVAL SWAP
    SWAP EVAL ' y = a + b / x ' UNROT
    > >
    > >
    POP
    > >

    Save the program as "InvFIT".

    Example. Print the following in MTRW:

    240 - 285.1
    250 201
    275 166
    300 138

    Save it in the ∑DAT variable by using the STO∑ command.

    After running the program, the stack will look like this:

    3: "y = a + b / x".
    2: a = 386.084992747
    1: b =-153989.42753

Maybe you are looking for