Writing dynamic data and extract it latter

i want to write a waveform in a file so that in future i can see the saved waveform on the graph dynamically, i mean if i save the dynamic data for 3 hours can i get the data running on the graph for 3 hours in future please help........

Saving data at 20kHz for three hours is close to 2GBytes (assuming saving DBL data type), so you probably want to use a binary file format. I would recommend using TDMS.  Each time you create a new data set, write it to a new channel with a unique name.  I would recommend using a timestamp as the name, so you can easily figure out when your data was taken and it is easy to generate the channel name.  Make sure you use enough time resolution in your timestamp name to make them unique.  Alternately, you can use an indexed channel name (e.g. Data0001, Data 0002, etc.).  If you do this, save the timestamp as metadata with each magnitude.  This may make it easier to fetch.
Reading the data later is fairly easy.  Fetch the data you want using the channel name or timestamp, depending on how you stored it.  TDMS does support multiple access at the same time, so you can read and write "at the same time."
If your data sets are large (megabyte or larger) you may want to take a look at Managing Large Data Sets in LabVIEW.
Let us know if you need more information.
This account is no longer active. Contact ShadesOfGray for current posts and information.

Similar Messages

  • IP: Dynamic Data and Lead Columns

    Hello,
    In IP, there is not such thing as "Dynamic Data and Lead Columns" which we have used successfully in BPS. We have quite normal case where accounts are on rows and columns are defined as follows:
    Column 1): KF Qty1, Period #, Year "Var Current year (single value)"
    Columns 2-n): KF Amt1, Period "Var periods current year (multiple values)", Year "Var Current year"
    Column n+1): Sum columns 2-n
    Number of periods in variable "Var periods current year" is not fixed and maintained by superuser, so number of columns is somewhere between 3 and 14 (at least one open period, maximum 12, plus the Qty1 and Sum columns).
    How would you fix this in IP?
    Thanks for answers!
    Aki

    Hello Aki,
    you could put the period into the columns as char.
    if you make a selection to value # and the variable you will se as many columns as periods are selected in the variable plus the one column for #.
    regards
    Cornelia

  • How to display dynamic datas and double datas (chart)

    Hi all !
    I would like to display dynamic datas and double datas by using charts.
    However, it doesn't work and I don't understand why.
    Can you help me to fix that ?
    Best regards,
    - John
    Attachments:
    double_dynamics_data.vi ‏54 KB

    Hi John,
    the sine looks like it should look with your VI!
    You convert the DDT to a scalar DBL. That conversion will only use the first sample of the generated sine waveform - usually this is always the same (offset) value when you generate full periods… Or to put it in a mathematical expression: sin(0°)+4 = 4!
    When you want to display waveform you should work with waveforms!
    Actually, I have used Dynamic data type in order to simulate an signal.
    Well, I also simulated a signal in my example VI. I didn't use any ExpressVI to do so…
    In a few weeks, I will receive a sensor. I will use in LabView 'DAQ Assistant' whose the ouput is a Dynamic Data.
    Nobody forces you to use the DAQAssistent ExpressVI. There are nice DAQmx functions available and LabVIEW comes with a lot of ready-to-use example VIs…
    That's why, I used in first place, the 'Simulate signal'. So I think I should keep Dynamic Data Type
    I do think you don't need to use the DDT. I think it's better to understand what is going on in your VI. And I think the DDT will be no help for you…
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • To eliminate date and extract only time component

    hi i am getting an input from a table which is of varchar2 type and the field has data like
    8:00 am-8:00 pm
    now i want to insert 8:00 am as start_time and 8:00 pm as end time in the columns start_time and end_time in another table.the 2 columns are of date type.
    HOW do i remove the date and just insert time in these columns
    because if i do
    insert into..
    to_date(substr(peak_time,1,7),'hh:mi am') ......
    then along with time current date gets appended.

    to be honest? If that was the requirement (eg. scheduling items to run between two times), I'd store it as numbers - probably as minutes. - eg. 8 hours = 8*60 minutes
    Then I'd do something like:
    select my_date + start_time_in_mins/1440 from my_table

  • Dynamic date and time

    hi
    I want to displaya current time and date on the home page of my application. I have used to_char() method but the time is not updating dynamically.Any help
    thanks
    Kumar

    Hi,
    if you want to display a ticking clock, i'd use some flash animation that does that, i guess that if you search the web for "flash digital clock" or "javascript digital clock" it will return dozen of results...
    for instance, the first i found:
    http://www.ricocheting.com/js/digiclock.html
    Flavio
    http://oraclequirks.blogspot.com

  • How to capture dynamic data in BPM and send to next step ?

    Hi Folks,
    How can i capture the dynamic data and later on send it to the next message type in send step in BPM ?
    Regards,

    Hi Santhosh,
        In your sceanrio your getting the response from RFC and preapring the XML file.Where you are poulating the Dynamic File name inside of the BPM or Outside of the BPM. Might be it is inside of the BPM, if yes Use another transformation step where you can catch the Dynamic file name to sending to Oracle database and Use send step to sending the message of out of the BPM.
    Cheers
    Veera

  • How do i convert dynamic data for TCP transmission?

    I am doing a university reaseach project which will gather field data in a remote location (with a phone line), and i want to transmit this data back to the lab for recording and analysis. I have loaded the simple data server and client vi's, but cannot get my data into a suitable form for transmission. The data is aquired through a daq pad and displays on a waveform graph as well as writing to file. The output from the daq pad is dynamic data, and this is what i want to transmit...... any ideas. thanks Jack

    Hi Jack,
    try it in this way.
    Mike
    Attachments:
    Unbenannt.PNG ‏13 KB

  • Dynamic date & time on slides

    I've seen talk of being able to add a dynamic date and time readout to slides with Quartz Composer, but I haven't been able to find any more information about it. I've got no clue how to use QC, and really haven't had the time to devote to pulling things apart and working with it.
    Has anyone seen any tutorials for this specific task that they could point me to? Or has anyone done this themselves and willing to give me some pointers, or at least a starting point?
    Thanks,
    Jeff.

    Sorry...had to sleep. Here's what I did:
    Starting with a blank project in Quartz Composer,
    Find Tool - System Time, and drag it to the...heh. I've got no terminology. ...to the place where you put stuff together. :-P
    Next, grab Tool - Date Formatter. Hook the 'Time' output and input together.
    Then I used Generator - Image with string, hooking the string output from the date formatter into the string input.
    Last, Renderer - Billboard. Hook 'Image' out put on Image with string to 'Image' input.
    At that point, you ought to see a 'ticking' clock in a black rectangle in the viewer window.
    Now, some parameters--show the Inspector, and click the Date Formatter. In the drop-down at the top of the Inspector, switch to Settings (or hit cmd-3). By switching 'Date formatting style' and 'Time formatting style' to 'None', you can specify your own string. (I'm using EEEE, MMMM dd h:mm:ss a, for instance.)
    In the Settings for Image with String, you can specify font face and size, etc.
    Finally, in the Input Parameters (not Settings) for Billboard, you can specify the font color.
    The display will be on a black background in the viewer window, but should be transparent when you place the .qtz file on a slide.
    Also, remember that the Quartz component will only be 'active' when the presentation's playing. On your slide, it will appear as a static image. (I've found, too, that if you group it with anything else, it 'kills' the component.)
    Kyn, any other tips?
    Hope that helps!
    Quicksilver G4 | G3 iBook   Mac OS X (10.4.4)  

  • Change header in dynamic data

    Hi,
    I have a 2d array converted in a dynamic data and I want to change the default header before saving in the VI_Express "save to file"
    How can I do ?
    Thanks.

    The LVM Express VI does not have a way to change the header, since it was designed for speed of implementation and ease-of-use, not flexibility.  However, you can change it to a normal VI and modify the existing code (make sure you save all VIs to a new location so you do not overwrite the vi.lib versions).  Right-click on the Express VI and select Open Front Panel.  Be warned - this is a complex VI, since it handles a lot of options.  You will need to open several layers of VIs to get to the LVM write section.  There is a single VI which writes the header that you can modify.
    Another option is to use the subVIs used by the Express VI to create your own VI.  Be aware that using unpublished VIs in this fashion can result in broken code when you upgrade to newer versions of LabVIEW.  These are unpublished and unsupported interfaces and can change, if needed, at every LabVIEW version.  These particular interfaces tend to change about every two or three LabVIEW versions.
    It may be easier to write your own header, then use the Write to Spreadsheet File VI to write your data.
    This account is no longer active. Contact ShadesOfGray for current posts and information.

  • Convert "1D array of dynamic data" to "Dynamic data" after auto-indexing with loop

    Hi -
    I have a question about how exaclty auto-indexing works with the Dynamic Data type when exiting a while loop. I'd like to use the DAQ assistant to record data through an analog input (on the MyDAQ) and then replay that data through an analog output. This works fine if I use the DAQ Assistant to record data for a set amount of time:
    However, I run into trouble when I try to use a While loop with a stop button to record data for an arbitrary amount of time. I set the dynamic data tunnel out of the While loop to "Indexing", but then when it exits the loop, it becomes "1-D Array of Dynamic Data" instead of just "Dynamic Data", and get a broken wire when I try to connect it to the input of the DAQ Assistant. I've also tried converting the dynamic data to Array and Waveform data types inside the loop, but have the same issue (they become 2D Array and 2D Array of Waveform respectively when leaving the loop). Try as I might using blocks like Convert to/from Dynamic Data Type, or Array Subset, I'm unable to get them back down to just Dynamic Data or Waveform, which will be accepted by the DAQ Assistant:
    One other small note - I'm not sure if using the "Build Array" function with a shift register accomplishes exactly the same thing as just auto-indexing an array out of the loop - so I've tried both, but still have the broken wire issue.
    I'm assuming this is just a simple issue of using the right block to convert "1D Array of [Something]" to just plain [Something]. Any help appreciated.
    Attachments:
    PWM_FlatSequence.vi ‏101 KB
    PWM_FlatSequence_While.vi ‏129 KB

    I have been facing problem for all temperature values placing the Write to Measurement File outside the Loop. 
    In Error message it says" Source: 1D array of dynamic data and Sink: Dynamic data".
    Is there any means of convering 1D array of dynamic data to dynamic data?
    I would highly appreciate any help.
    Attachments:
    Temperature Logger.vi ‏110 KB

  • How to convert a dynamic data type to array of strings

        I want to perform a serial communication between two
    computers that I´ll call them A and B. The computer A (transmitter)
    will send a signal (sinusoidal) to computer B (receiver). I´m using a
    VISA Serial Communications Set (VISA Configure Serial Port.vi, VISA
    Write.vi, VISA Read.vi and VISA Close.vi).  VISA Write accepts
    only string data type and VISA Read reads only string data type, but
    the signal that I generated (on transmitter) is dynamic data and I need
    to perform this conversion to run my program sucessfully. How can I
    perform this conversion?!

    Hi Rafael,
    You can configure the From DDT Express VI to convert your dynamic data to any number of different types.  By default, the Express VI will convert to a 1D array of numerics...however, you can configure it (either when you first drop it, or by double-clicking it) to convert to a 2D array of numerics...additionally, you can configure it to convert based on channel data being in columns or rows.  I have attached another screenshot that shows converting the dynamic data into a 2D numeric array. 
    I hope this helps.
    -D
    Darren Nattinger, CLA
    LabVIEW Artisan and Nugget Penman
    Attachments:
    FromDDT2D.jpg ‏164 KB

  • Compare scalar value to dynamic data

    I am trying to compare a scalar number input in the front panel to a dynamic data set(from DAQ) and return a boolean true if the condition is met. How can I compare one value to each data point in the acquisition data set?

    You can use the Convert From Dynamic Data and convert to a 1D array. The comparsion functions work with an array as one input and a scalar as another. The output is a Boolean array - the results of each element in the array to the scalar. I think you can also use the Comparison Express VI but I have seldom used any of the Express functions so I'm not sure about that.

  • Parse a WebPage and Extract Data

    Hi, i've figured out how to get an html source using a java class posted earlier on this forum. I wanted to find out what is the best and easiest way to extract information from it. I have been searching the web and read a lot about using XML. Is that the best way to do it, or is there something else i can use ? Thanks !

    I would suggest building your own statements.
    I am not sure which web site you are trying to get data from. However the previous response was correct. HTML has to be well formed which often it is not. Even the most professional web sites have bad HTML code.
    I am not sure if you are looking to extract data from one web site or various (please let me know).
    here is an example of how you 'might' wish to do it:
    HTML CODE:
    <td nowrap><font face="Arial" size="3"><b>Description</b></font></td>
    <td width="100%"></td>
    <td nowrap width="100%" align="right">WonderfulDescription</font>
    </td>
    CODE:
    String description  //Field to store the description
    int startIndex      //Index of where description starts
    int endIndex        //Index of where description ends
    while (readLine...)     //That while loop from the previous code I gave
      if (readLine.indexOf("Description" != -1)
        HTMLpage.readLine(); // Read line 1 - hence: <td width="100%"></td>
        readLine = HTMLpage.readLine();
        startIndex = readLine.indexOf("align=\"right\">") + 14;
        endIndex = readLine.indexOf("</font>"); 
        description = readLine.subString(startIndex, endIndex);
    }This is ideal if there is specific information in the page that you wish to obtain. But coding it takes time and you have to study the web page layout carefully. I suggest putting a System.out.println(readLine) statement in the while loop. The copying and pasting the output into FrontPage and looking at it. Dont copy and paste the source from ViewSource in Internet Explorer as it will not show you dynamic data.
    Let me know how you get on. As always, get back to me if you have any questions.
    Kind regards
    Angus

  • How can we get Dynamic columns and data with RTF Templates in BI Publisher

    How can we get Dynamic columns and data with RTf Templates.
    My requirement is :
    create table xxinv_item_pei_taginfo(item_id number,
    Organization_id number,
    item varchar2(4000),
    record_type varchar2(4000),
    record_value CLOB,
    State varchar2(4000));
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'USES','fever','TX');
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'HOW TO USE','one tablet daily','TX');
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'SIDE EFFECTS','XYZ','TX');
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'DRUG INTERACTION','ABC','TX');
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'OVERDOSE','Go and see doctor','TX');
    insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'NOTES','Take after meal','TX');
    select * from xxinv_item_pei_taginfo;
    Item id Org Id Item Record_type Record_value State
    493991     224     1265-D30     USES     fever     TX
    493991     224     1265-D30     HOW TO USE     one tablet daily     TX
    493991     224     1265-D30     SIDE EFFECTS     XYZ     TX
    493991     224     1265-D30     DRUG INTERACTION     ABC     TX
    493991     224     1265-D30     OVERDOSE      Go and see doctor     TX
    493991     224     1265-D30     NOTES     Take after meal     TX
    Above is my data
    I have to fetch the record_type from a lookup where I can have any of the record type, sometime USES, HOW TO USE, SIDE EFFECTS and sometimes some other set of record types
    In my report I have to get these record typpes as field name dynamically whichever is available in that lookup and record values against them.
    its a BI Publisher report.
    please suggest

    if you have data in db then you can create xml with needed structure
    and so you can create bip report
    do you have errors or .... ?

  • Dynamic SQL and Data with Single Quotes in it.

    Hi There,
    I have a problem in that I am using dynamic SQL and it happens that one of the columns does contain single quotes (') in it as part of the data. This causes the resultant dynamic SQL to get confused as the single quote that is part of the data is taken to mean end of sting, when in fact its part of the data. This leaves out a dangling single quote that was meant to enclose the string. Here is my dynamic SQL and the result of the parsed SQL that I have captured:
    ****Dynamic SQL*****
    l_sql:='select NOTE_TEMPLATE_ID '||
    'FROM TMP_NOTE_TEMPLATE_VALUES '||
    'where TRIM(LEGACY_NOTE_CODE)='''||trim(fp_note_code)||''' '||
    'and TRIM(DISPLAY_VALUE)='''||trim(fp_note_text)||''' ';
    execute immediate l_sql INTO l_note_template_id;
    Because the column DISPLAY_VALUE contains data with single quotes, the resultant SQL is:
    ******PARSED SQL************
    select NOTE_TEMPLATE_ID
    FROM TMP_NOTE_TEMPLATE_VALUES
    where TRIM(LEGACY_NOTE_CODE)='INQ' and TRIM(DISPLAY_VALUE)='Cont'd'
    And the problem lies with the single quote between teh characters t and d in the data field for DISPLAY_ITEM. How can I handle this?
    Many thanks,

    I have been reliably informed that if one doesn't enclose char/varchar2 data items in quotes, the right indices may not be usedI am into oracle for past 4 years and for the first time i am hearing this.
    Your reliable source is just wrong. Bind variables are variables that store your value and which are used in SQL. They are the proper way to use values in your SQL. By default all variables in PL/SQL is bind variable.
    When you can do some thing in just straight SQL just do it. Dynamic SQL does not make any sense to me here.
    Thanks,
    Karthick.

Maybe you are looking for