Retrieves a repeating sequence of PDM

Hi experts,

I have weeks of time series in files TDMS analog newspapers of a sequence repeatedly. I need to extract each of the repeated sequences and superimpose the waveforms to identify gaps between the sequences of (sample data reach including 5 blocks attached)

The start of each block is defined by the pulse on the channel 'bubble detect Trigger. What I have to do is slot each TDMS between trigger impulses and all the slices on a graph to see how other channels line up overlay.

Is there a way to achieve Signal express or TIARA?

Help much appreciated.

Hi Medwar,

This should be close to what you're asking for.  Your trigger signal seems to go up in the middle of the event, so his forehead may not be the optimal basis for each event, but this should at least show you how you can copy it to the windows of time.

Dim i, groups, channel, size
ReDim Groups (0)
Set Groups (0) = Data.Root.ActiveChannelGroup
L1 = Groups (0). Channels (1). Properties ("Number"). Value
L3 = 0
R1 = 3.0
Size = ChnLength (L1)
L2 = ChnFind ("Ch (L1)" > R1 ", L3 + 1")
Do
IF L2 > 0 THEN
i = i + 1
< r1",="">
L4 = ChnFind ("Ch (L1)" > R1 ", L3 + 1")
IF L3 OR L4 = 0 THEN L4 = 0 = size
ReDim Preserve Groups (i)
FOR each channel in Groups (0). Channels
(Channel) ChnLength = L2 - L4 + 1
NEXT "channel
Set Groups (i) = Data.Root.ChannelGroups.AddChannelGroup ((0) Groups)
Groups (i). Name = 'Event' & I
Call the DataBlCopy (Groups (0). Channels, L2, L2 - L4 + 1, (i) Groups. Channels, 1)
FOR each channel in Groups (0). Channels
(Channel) ChnLength = size
NEXT "channel
L2 = CLng (L4)
END IF
Loop until L4 = size
Call ChnCharacterAll
' MsgBox UBound (Groups)

Brad Turpin

Tiara Product Support Engineer

National Instruments

Tags: NI Software

Similar Questions

  • Repeated sequences based on groups

    I have a table with a GRP, nm, Nombre_Cols (number of times the sequence needs to be reset).

    For example. for the GRP, the result would be something like
    'A', 'AC', 2, 1
    'A', 'AD', 2, 2
    'A', 'AK', 2, 1 (LAST COLUMN REHEARSALS AFTER 2 IN THIS CASE)
    'A', 'ALL', 2, 2
    'A', 'A', 2, 1 (REPEAT)

    And for B, he repeats after 3 so it would be 1,2,3, 1,2,3, 1, 2, 3, 1, 2



    with tbl1 as
    (SELECT "A" GRP, "AC" NM,
    2 NOMBRE_COLS OF THE DOUBLE
    UNION
    SELECT 'A', 'AD ',.
    2 FROM TWO
    UNION
    SELECT 'A', 'AK ',.
    2 FROM TWO
    UNION
    SELECT 'A', 'ALL ',.
    2 FROM TWO
    UNION
    SELECT 'A', 'A',
    2 FROM TWO
    UNION
    SELECT 'A', "ANN."
    2 FROM TWO
    UNION
    SELECT 'A', 'APRIL ',.
    2 FROM TWO
    UNION
    SELECT 'A', 'AR ',.
    2 FROM TWO
    UNION
    SELECT 'A', 'AT',
    2 FROM TWO
    UNION
    SELECT 'B', "BA."
    3 FROM TWO
    UNION
    SELECT 'B', 'BAQ. "
    3 FROM TWO
    UNION
    SELECT 'B', 'BER ',.
    3 FROM TWO
    UNION
    SELECT 'B', "BGG".
    3 FROM TWO
    UNION
    SELECT 'B', "BJ."
    3 FROM TWO
    UNION
    SELECT 'B', "BK."
    3 FROM TWO
    UNION
    SELECT 'B', 'BM ',.
    3 FROM TWO
    UNION
    SELECT 'B', "BNN,"
    3 FROM TWO
    UNION
    SELECT 'B', "BOK,"
    3 FROM TWO
    UNION
    SELECT 'B', 'BSQ. "
    3 FROM TWO
    UNION
    SELECT 'B', "BW"
    3 FROM TWO
    UNION
    SELECT 'C', "ARDUOUS."
    1 FROM DUAL
    UNION
    SELECT 'C', "WHAT."
    1 FROM DUAL
    UNION
    SELECT 'C', 'CR ',.
    1 FROM DUAL
    UNION
    SELECT WOULD BE ', 'D2 ',.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "D9"
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DA '.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DEE. "
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DJ ',.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DKB"
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DKG",.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DKK.
    4 FROM TWO
    UNION
    SELECT WOULD BE ","DLL","
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DLU.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DM ',.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DNV"
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DP. "
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DQ. "
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DR."
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DS."
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'MAS. "
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'DT ',.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', 'TNT. "
    4 FROM TWO
    UNION
    "SELECT WOULD BE", "DVF."
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DOV",.
    4 FROM TWO
    UNION
    SELECT WOULD BE ', "DZ"
    4 FROM TWO
    )
    SELECT ROW_NUMBER() ON SNO (GRP ORDER BY NM PARTITION),
    Tbl1.* tbl1

    Final result should look like this (the last column is what I need to generate)
    1. A 2 1 AC
    14:00 2
    3. A 1 2 AK
    4. ALL 2 2
    5. A 1 2
    6. A 2 2 ANN
    7. A 2 1 APR
    8. A 2 2 AR
    9 TO 2 1
    1 B 3 1 BA
    2B 2 3 BAQ
    3 B 3 3 BER
    4 B 3 1 BGG
    5 B 3 2 BJ
    6 B 3 3 BK
    7 3 1 BM B
    8 B 3 2 BNN
    9 B 3 3 BOK
    10 B 3 1 BSQ
    11 B 3 2 P.C.
    DQ 1 1 1 C
    2 C THIS 1 2
    CR 3 1 3 C
    1 4 1 D D2
    D9 D 2 2 4
    DA 3 4 3 D
    4 D DEE 4 4
    DJ 5 1 4 D
    DKB 6 4 2 D
    D 7 4 3 DKG
    DKK 8 D 4 4
    9 D 4 1 DLL
    10 D 4 2 DLU
    D 11 DM 3 OF 4
    DNV 12 4 4 D
    D 13 4 1 DP
    14 D 4 2 DQ
    15 D 4 DR 3
    16 D 4 4 DS
    17 D 4 1 DSS
    18 D 4 2 DT
    D 19 4 3 TNT
    DVF D 20 4 4
    21 D 4 1 DVV
    DZ 22 4 2 D

    Thank you

    Try this,

    SELECT GRP,
           NM,
           NUM_COLS,
           CASE WHEN NUM_COLS = 1 THEN rn ELSE MOD ( rn - 1, NUM_COLS) + 1 END sno
      FROM (SELECT ROW_NUMBER () OVER (PARTITION BY GRP ORDER BY NM) rn, TBL1.* FROM tbl1)
    
    OUTPUT
    ---------------
    G NM    NUM_COLS        SNO
    - --- ---------- ----------
    A AC           2          1
    A AD           2          2
    A AK           2          1
    A ALL          2          2
    A AN           2          1
    A ANN          2          2
    A APR          2          1
    A AR           2          2
    A AT           2          1
    B BA           3          1
    B BAQ          3          2
    B BER          3          3
    B BGG          3          1
    B BJ           3          2
    B BK           3          3
    B BM           3          1
    B BNN          3          2
    B BOK          3          3
    B BSQ          3          1
    B BW           3          2
    C CDQ          1          1
    C CE           1          2
    C CR           1          3
    D D2           4          1
    D D9           4          2
    D DA           4          3
    D DEE          4          4
    D DJ           4          1
    D DKB          4          2
    D DKG          4          3
    D DKK          4          4
    D DLL          4          1
    D DLU          4          2
    D DM           4          3
    D DNV          4          4
    D DP           4          1
    D DQ           4          2
    D DR           4          3
    D DS           4          4
    D DSS          4          1
    D DT           4          2
    D DTT          4          3
    D DVF          4          4
    D DVV          4          1
    D DZ           4          2
    
    45 rows selected.
    
    SQL> 
    

    G.

  • Generation of a repeated sequence of 1

    How can I generate and send a sequence of 1111111... ? I want repetitive flow for estimation of gain of channel 1.

    I recommend having a look at the examples of learning included in the LabVIEW Communications:

    The exercise to "Learn"-> "Getting Started"-> "Overview of the FPGA Design Flow"-> "Algorithm design and test" shows you how to implement an OFDM transmitter using a "meter diagram" (MRD). A DSU is a language that simplifies the data flow that processes and can be run on the host and the FPGA without change. Looks like it's just what you are looking for - because if you want to send something on RF, you modulate, and a common approach is to use OFDM. It's just what is shown in this exercise! Take a look on OFDM Tx Flt solution.gmrd: If you want to have all of the carriers '1', simply change the sequence of entry accordingly.

  • Is is possible to retrieve a context sequence with a new engine object?

    It's my scenario:

    1 Teststand calls a function in a DLL to do something created the CVI. The function prototype is null (void) function;

    2. Since no parameter is passed I can to the context of the anonymous sequence within the call of the dll? I know that this can be done by simply passing the parameter "thiscontext' in my function call, but I would like to solve the context to perform additional logging to run operations without having to rewrite my entire application.

    Sub function (void)

    {

    Execution TSObj_Execution = 0;
    Report TSObj_Report = 0;
    TSObj_Engine tsengine = 0;

    TS_NewEngine (NULL, & tsengine);
    Can I use the TestStand engine somehow to get the current context of the sequence?

    }

    Hi Dspman,

    Maybe this thread could be interresting http://forums.ni.com/ni/board/message?board.id=330&thread.id=18696

    There is an example that shows how to share a running a "stand-alone" application object

    If you have an ExecutionObject, you will get the underlying SequenceContext.

    hope this helps

    Jürgen

  • PC is a pause, click 3 times, runs 5 seconds and then repeat

    original title: PC BREAKS, CLICKS 3 TIMES, OPERATED 5 SECONDS AND THEN REPEAT

    XP OPERATING SYSTEM... PC STOPS, CLICK 3 TIMES, RUNS 5 SECONDS AND THEN REPEAT SEQUENCE. DO I HAVE A VIRUS OR ANOTHER ANIMAL?  NEVER MET HIM THIS BEFORE. Help, please!

    The BIOS question was to determine if it was a Windows only or PC problem.

    You really should try MBAM, too.

    There is still the process of elimination (once you're looking for malware). You can reactivate the half and then see what happens.

  • Sequence in the instruction Insert All

    Hello everyone, I am using a sequence in the instruction Insert All as shown below. I expect the two rows to have values of different sequence but I get the same value for both. Can someone explain this behavior.

    CREATE TABLE SAMPLE_TEST
    (COL1 NUMBER,COL2 VARCHAR2(30));
    
    
    
    CREATE SEQUENCE SAMPLE_TEST_SEQ
    MINVALUE 1
    MAXVALUE 99999
    START WITH 1
    INCREMENT BY 1;
    
    
    
    INSERT ALL
    INTO SAMPLE_TEST(COL1,COL2) VALUES (SAMPLE_TEST_SEQ.NEXTVAL,'ONE')
    INTO SAMPLE_TEST(COL1,COL2) VALUES (SAMPLE_TEST_SEQ.NEXTVAL,'TWO')
    SELECT 1 FROM DUAL;
    
    
    
    SELECT * FROM SAMPLE_TEST;
    
    

    Kind regards

    Shiva.

    Because the sequence values are generated once for each line in select statement. You must use before line insert trigger for each table to retrieve values of sequence because Oracle recommends to use only no multi table insert sequence.

    • The subquery in the insert multi-table cannot use a sequence.

    INSERT

    INSERT ALL - VAL NEXT SEQUENCE

  • sequences removed in oracle 10g

    Hi all

    Can retrieve us the sequences fell in oracle 10g?

    Command?

    Thank you.

    Published by: user545846 on April 9, 2009 07:32

    Yes, the original poster will have to re-create the sequence. Do a flashback query against just DBA_SEQUENCES provides the names of old footage and the starting value which must be specified (as well as other parameters such as cache) makes it easier to properly recreate those dropped sequences.

    Justin

  • How to undo a step and go again StepIndex

    Hello

    I'm evaluating NI TestStand to determine if it meets the needs of a custom application.  The application must include a basic repeating sequence of activation outputs and verification of the response of the system (inputs).  This part seems to be a good target for NI TestStand.  However, so are the execution of these basic IO operations, the system must be capable of monitoring asynchronous.  These asynchronous monitors should occur in several fundamental stages of IO and must also be handled immediately in case of failure.  For example, to control the power supply for 10 steps and immediately stop the test if the supply voltage is insufficient.

    I'll use the supply voltage in the example for the rest of this discussion, but the final solution will have to implement several "monitors".  The condition of 'failure' of the supply voltage is when it falls below a certain limit, and the results of the tests are no longer valid.

    I was able to manage the execution of the MainSequence endpoint using a sous-suite that reads power and calls the Execution.TerminateAll () method when the supply voltage is lower than the limits (monitor).

    I'm now trying to cancel the current step and move on to a new StepIndex (in the MainSequence) after a failure of power supply (detected by a subsequence in a run in parallel).  The new StepIndex can contain the code defined by the user that will manage the error or reach a place that needs more power supply IT.  I hit a roadblock with the implementation.

    I can't find any information on how to cancel a step and proceed to the next step or step defined by the user.

    The only thread I found was here, but does not provide information on how to do what the Application engineer chosen to have a private conversation

    Someone at - it advice?

    There are probably a few different ways that you can implement the behaviour sought. I think with the information that you have provided, continuing to use Execution.Terminate () and take it one step further to implement a monitor in your termination process may be the most appropriate option.

    The monitor of termination is generally used in a code module that performs multiple iterations in a loop. It checks to see if the user has launched a cancellation outside the code module. If your code module is correctly designed, when he learned of the termination monitor that a dismissal has been hired, the loop will be terminated and the remaining unnecessary code will be ignored (I say useless because there might be some cleanup code in your code module that you want to run before leaving the code module). In your case, if you're not perform loops, you can check for a cancellation at several points in your code module. (Note that by default the TestStand waiting step type implements a monitor of termination and will honor a termination of employment)

    Once the code module ends, you can check whether or not a termination was launched at a step after the engine callback and set the desired behavior occurs is it a. (for example, you can cancel the termination and specify what you want to go, be it a call sequence or perform some test steps).

    If you decide to follow this approach, you must ensure that a monitor of termination is implemented in your code modules to appropriate, strategic places. You will also need to be aware that by substituting the engine post-etape callback, there is some added overhead and you will encounter a slightly stricken performance as it will sound at each stage that runs.

    This sounds like a viable solution? I hope this helps.

  • HP Pavilion x 360 has the white screen and LOCK SHIFT key flashes

    I recently got a new laptop from 13-inch HP Pavilion x 360 a week ago. It worked well and I loved. six days after that I started to use it the screen goes black while I watch a youtube video and the mahcine started his strange. I use the power button to turn off the laptop, and then restart it. Laptop works very well and I continue to use it on another fifteen minutes until I close and start loading. 40 minutes later, I opened the laptop to find that the screen does not light and the CAPS Lock key blinks once in a repeating sequence. I didn't do anything the screen lights up. After some research, I think it's a potential CPU issue. What are the reasons as to why it happened to my brand new laptop?

    mijamo21 wrote:

    Yes, I have a warranty and I contacted HP support to send my laptop in for repair. Thank you!

    Your welcome, best thing to do while he is still covered.

  • His stats EPSON WF - 2540 Series Job will not stop printing

    Printer EPSON WF-2540 Series - 60B 384 =

    OS = Windows 8 Blue 6.3.9600

    Driver HP series class driver is;. version 63.1303.3.00

    Problem:

    In the process of printing a form (PDF) from the internet the printer began to print attributes task rather than the content of the form and it does not block the stats to print again and again.  I removed the device and reinstalled.  I turned the printer and unplugged.  I have reset the default printer.  There are no jobs in the spooler.  If we create a print job with the printer off we get this printed work and then the stats for internet PDF starts printing.

    EXAMPLE OF STATS in EMPLOYMENT from line 1

    12345X@PJL set stringcodeset = UTF8

    @PJL COMMENT = "" job start time: Sun Oct 05 14:11:02:658 2014 ""

    @PJL JOB NAME = "460int".

    These work instructions continue for a third of a page, while the rest is filled with a repeated sequence of "0W0V".

    Any help is appreciated.  TKS

    Thanks for the reply.  With my wifes computer is turned off, I accessed my office printer and the printer performed as intended.  When I turned on the laptop, the problem as described in the report began.  This has isolated the problem to his computer.  I've stopped and started the spooler service and the problem continues.  Finally, I find the spooler files in C:/windows/system32/spool/printers and erased.  My wife has printed several docs now and the problem seems to be resolved.

    Thanks again for your attention.

  • Lack of Codec Dolby

    I was running Premiere Pro 2015.3 CC and along the way, I am informed that there is a bug on the opacity handles that could be solved if I updated to version 2015.4. I did and the problem was solved in fact but now I have a much bigger: a some .mts files from camcorder Sony VG10E content projects. Once I opened it upward, all my clips were offline. When I tried to link again, I got a message that my calendar contains references to the audio which would be deleted to repeat sequences. I tried to re - import my videos and I received a message about a codec Dolby missing and that's where I stayed speechless, because version 2015.3 has been import and audio playback of my clips without flaw. What happens here? Is there anything I can do about it? I installed K-lite codec, but the problem persists. Clips of play very well outside the first, on Media Player and VLC. MediaInfo recognizes audio of my clips as streams of AC-3 256 Kbps, 48 kHz, 2 channels.

    Any ideas please?

    Here's the solution to this mystery "Codec Dolby' for first Pro CC 2015.4

    1. open your project in Premiere Pro. If "Codec Dolby' window appears, click to install it."

    2. close Premiere Pro (do not save your project)

    3. Open Media Encoder

    4. go into ' Edition - Preferences - select 'media "".

    5. remove the Database Cache.

    6. then click on the 'Browse' to the left of 'clean' (media Cache database).

    7 delete all files cache (Anywhere Cache, Cache of media, media Cache files...)

    8 DO NOT RECLIQUER the CLEAN (from 5 above). This will recreate the folders (7 above)

    9. close Media Encoder

    10. open the Premiere Pro. And Voila! You should be fine.

    ((* If not, you can link the footages again).

    The above works for me. Hope for all.

  • How to get the value of remote location

    Hello

    I have a column that will retrieve the next sequence value for remote oracle database. I suggest the remote application to generate a page (http://www.centralsite.../get_next_sequence.xxx) that provides a sequence number.
    I want to know if this the right approach? If so, how can I know Apex to get the value of the URL.

    Thanks in advance
    Aali

    Hello

    I have not used it myself, but take a look on the UTL_HTTP package: [http://psoug.org/reference/utl_http.html]

    Andy

  • Repeat a sequence has failed once more

    Hello

    I would like to repeat a sequence failed once more.

    There is an example that comes with TS. I derived it may needs.

    Only StepTypes SequenceCall and inside the MainSequence. Generation of reports AND the failure sequence

    should be done with the Model Designer.

    Now, I have a problem with the generation of reports. The purpose of the State is absent.

    In the SequnceFilePostStepFailure "Train" and "TS" objects are DIVIDED

    I am not able to comine them together

    Any idea?

    Jürgen


  • Sequence repeated in a case structure

    Hello world!

    I have a problem about to repeat a task in a housing structure. I want to control two LED indicators in a sequence until I have change the case.

    Here's a clearer explanation of what I'm trying to do:

    1 LED->, (wait 100ms)

    LED 2 #-> (wait 100ms)

    1 LED-> (wait 100ms)

    LED 2 #-> turned on (wait 100ms)

    ....

    How can I do this? In vi that I downloaded, there is a main while loop and a structure in business. If the case is false, the two LEDs are off. If the case is true then LEDs should be as stated above.

    Thanks for the help!


  • Repeat items in a stacked sequence

    Hi does anyone know how to repeat elements of a stacked sequence?  For example, if I want to repeat that frames 7-12, how would I go all this?  I was watching the State machines, but also to try to understand.  I thought that there could be an easier way to do somehow with a while loop, but not sure how I would go all this.  Thank you!

    Jon

    You need to understand the state machine. It serves to do just what you want to do.

Maybe you are looking for