How to counter data skips while acquiring using LabView

Dear enthusiasts:
I am using PCI-6031E measurement hardware and a self built LabView program to acquire data from a mp3 player. I am using AI configure, AI start and AI clear(Labview commands) in a loop so that buffer is cleared after each second(say). This is an improvement on its earlier version as it doesnot store the whole length of data in a buffer preventing crashes.But since I am configuring and starting data acquisition after each second, my data has skips at the beginning of each second. How do I modify my program to counter this. I am attaching a jpeg file to show the skip and the labview program.
Attachments:
panel_logger3_modified.vi ‏236 KB
skip_compare.jpg ‏93 KB
panel_logger3.vi ‏1737 KB

Your first program is really the way you want to go. To prevent glitches in a continuous acquisition you certainly only want to do the Configure, Start, and clear outside of the loop. To prevent problems in this configuration you can tweak a couple things. First, the buffer size doesn't have to be as large as your entire acquisition - in fact it doesn't need to be anywhere near that large. Usually 2 to 3 times the amount of samples you are reading at a time should be sufficient. Second, you can alter the amount of samples to read at a time in the loop. The larger the number, the less overhead there is since you are grabbing larger chunks from the buffer at a time.
If you continue to have problems with the original program, just post back. Also, in the futur
e, I would recommend posting to the LabVIEW or DAQ group rather than DSC - you'll get a lot more and quicker responses that way.

Similar Messages

  • How to read data over tcp/ip using labview

    Hi,
    I have a network enabled force transducer (6-axis load cell). I know its IP addr. and the data format it is sending the data out (7 32-bit DWORD, One status and 6 axis force data) . I have been playing around with the simple data client.vi example program. 
    When I executed the program using the devices IP addr. I used to get error 63: TCP/IP connection open. Then I ran the program using localhost in IP addr field, the program executes now indefinetly at one block only. I am attaching the screenshot for ref. 
    Thanks.
    Sasi.
    Attachments:
    TCP-IP.JPG ‏62 KB

    Hello,
    I'm wondering if you can create a rather simple VI that just tries to open and close a TCP connecting to your transducer. All you would need is a TCP Open and a TCP Close wired together with the proper IP address etc. Does this run? I did look to see if there was any NetFT information and I could not find anything. I feel that the problem lies in the communication protocol between your transducer. Another place to see if you can connect to it would be to try hyperterminal. You can access this in Windows XP by clicking Start»All Programs»Accessories»Communications»HypeTermina. Using this, you can try and connect to your instrument with TCP/IP outside of LabVIEW. You might also want to get in contact with the manufacturer to verify that third-party software can indeed communicate with it. There may be a specific set of instructions that need to be sent to the transducer in order to initiate the connection and then read from it. These may be in the form of serial commands that would need to be sent over TCP. What is the make and model of your transducer?
    -Zach
    Certified LabVIEW Developer

  • How to select data from a table using a date field in the where condition?

    How to select data from a table using a date field in the where condition?
    For eg:
    data itab like equk occurs 0 with header line.
    select * from equk into table itab where werks = 'C001'
                                                      and bdatu = '31129999'.
    thanks.

    Hi Ramesh,
    Specify the date format as YYYYMMDD in where condition.
    Dates are internally stored in SAP as YYYYMMDD only.
    Change your date format in WHERE condition as follows.
    data itab like equk occurs 0 with header line.
    select * from equk into table itab where werks = 'C001'
    and bdatu = <b>'99991231'.</b>
    I doubt check your data base table EQUK on this date for the existince of data.
    Otherwise, just change the conidition on BDATU like below to see all entries prior to this date.
    data itab like equk occurs 0 with header line.
    select * from equk into table itab where werks = 'C001'
    and <b> bdatu <= '99991231'.</b>
    Thanks,
    Vinay
    Thanks,
    Vinay

  • I need to find out how much wifi data my apps are using. I have a very limited amount of wifi data, and I am exceeding my monthly allowance. Apparently, even apps I think are not open are sending/receiving data through the wifi and using up my allowance.

    I need to find out how much wifi data my apps are using. I am on a very limited amount of WiFi data each month, which I am regularly exceeding. I have been told to work out which of my apps is using the data. Also, I think I have closed an app by double clicking the home button, then swiping the app up - is this the way to close it, or will it still be sending/receiving data?

    Go into your Settings : General : and turn off background refresh for your apps.  In Settings : Mail  turn Fetch new data to OFF and Load Remote Images to OFF.  This will mean that Mail will only check for messages when you actually use it, and all your advertising junk mail won't have all the images in it.
    Turn off push notifications every chance you get.
    Make sure you are actually quitting apps:  to quit apps press the Home button twice and you should see a bunch of smaller screen images for every open app.  To quit the app swipe from the screen image (not the icon) upward off the top of the iPad.  You can swipe left and right to see more open apps, but there must be no left-right movement on the screen when you swipe upward to close the app.
    Turn off your internet connection when you do not need it.  The easiest way to do this is to swipe up from the bottom of you screen to get the control centre, and then touch the airplane to turn on airplane mode.  You can repeat this sequence to turn it back on again when you need it.  Most especially turn airplane mode on whenever you are sleeping your iPad for long periods.  This will save battery life too.  OR actually turn your iPad off - which means holding the power key down for several seconds until the red swipe bar appears, and then swipe to turn it off.  If you go this route, note that it will take longer to turn on then it takes to wake from sleep.

  • How to write data to text file using external tables

    can anybody tell how to write data to text file using external tables concept?

    Hi,
    Using external table u can load the data in your local table in database,
    then using your local db table and UTL_FILE pacakge u can wrrite data to text file
    external table
    ~~~~~~~~~~~
    http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_7002.htm#i2153251
    UTL_FILE
    ~~~~~~~~~
    http://download-east.oracle.com/docs/cd/B19306_01/appdev.102/b14258/u_file.htm#sthref14093
    Message was edited by:
    Nicloei W
    Message was edited by:
    Nicloei W

  • HT204350 Incorrect link to "OS X: How to migrate data from another Mac using Mountain Lion and earlier"

    Incorrect link to "OS X: How to migrate data from another Mac using Mountain Lion and earlier". Should be http://support.apple.com/kb/HT6025

    I think the OP is saying OS X: How to migrate data from another Mac using Mountain Lion and earlier (which should be a link to HT4889) just links back to OS X: How to migrate data from another Mac using Mavericks (HT5872).
    It does indeed do that, & HT4889 seems to be MIA.

  • How to load data into html:select using Struts ?

    How to load data into <html:select> using Struts ?
    I can not load an array or collection (static or dynamic data) into drop down list control by <html:select /> Struts.
    please use:
    <html:select >
    <html:options />
    </html:select >
    Please help me. please detail it. thanks a lot.
    Message was edited by:
    tranminhman

    In order to load a collection or array of data you can use <html:select> with <html: options collection="" name=""/>
    here collection attribute refers to the Arraylist or Array of data and name is the name of the Form bean.
    Hope this helps...
    Chaitanya V

  • How to create and read text file using LabVIEW 7.1 PDA module?

    How to create and read text file using LabVIEW 7.1 PDA module? I can not create a text file and read it.
    I attach my code here.
    Attachments:
    File_IO.vi ‏82 KB

    Well my acquisition code runs perfect. The problem is reading it. I can't seem to read my data no matter what I do. My data gets saved as a string using the array to string vi but I've read that the string to array vi (which I need to convert back to array to read my data) does not work on the pda. I'm using version 8.0. So I was trying to modify the program posted in this discussion so that it would save data from my DAQ. I did that but I still can't read the data after its saved. I really don't know what else to do. All I need to do is read the data on the pda itself. I can't understand why I'm having such a hard time doing that. I found a possible solution on another discussion that talks about parsing the strings because of the bug in the "string to array" vi. However, that lead me to another problem because for some reason, the array indicators or graphs don't function on the pda. When i build the program to the pda or emulator, the array indicators are faded out on the front panel as if the function is not valid. Does this kind of help give a better picture of what I'm trying to do. Simply read data back. Thanks.

  • Does anyone know how to comunicate with a USB port using labview 6?

    Does anyone know how to comunicate with a USB port using labview 6?

    Unfortunately, there is no way to communicate directly with a USB port before LabVIEW 7.0 and VISA 3.0. With the new releases, there are functions called "VISA USB Control In" and "VISA USB Control Out" that give you direct access to a USB port.
    You can definitely communicate with DAQ, Serial, or GPIB devices that are connected through a USB port, though. This is done seamlessly through the NI-DAQ, NI-Serial, and NI-488.2 drivers.
    Luke S.

  • Send counter/digital outputs while acquiring analog data

    Hello all
    I am looking to acquire analog inputs on several channels, and send single TTL pulses out at different times during acquisition using a UBB-6221 board.  The delays from the beginning of acquisition and the output of the TTL's should be handles by a control on the front panel.  I have gotten this to work using software timing and an inexpensive board before, but the program needs to be more accurate than this (hence hardware timing).  I am writing the program using LabView 8.2 and DAQmx, but if needed, I have 8.5 available as well.  I am plenty familiar with the general LabView program, but am not comftorable with DAQmx, which I assume I need to use (I have only really used the Assistant).  If there is an example of this somewhere, or if someone has done this in the past, I would really appreciate the help!
    thanks!
    Solved!
    Go to Solution.

    Hi LVhelpME, 
    There are a number of different ways to
    do this, but I created a quick method which makes a digital waveform
    with the requested number of samples and rate, and then allows you to
    specify at what time you want to insert a "trigger" (which basically
    means it will place a high in at that point in the waveform). I did this
    by using only 3 functions and a for loop which iterates depending on
    how many triggers you wish to insert. You can use a similar method or just make this code into a subVI that will create your correlated digital data according to total number of samples, sample rate, and what specified times you want the triggers to occur at. I have attached the VI below for LabVIEW 8.0 and later, as well as a screenshot showing what the digital waveform will look like based on what values are entered for trigger times. In the screenshot below, you will see that there are 2000 total samples which are output at a rate of 100 Hz. Thus, the total waveform will last for 20 seconds, and the trigger times are entered as 5, 10, and 15 seconds.
    The next image shows a zoomed in view of the trigger that is created at the 5 second mark, which will last for the sample period of 0.01 seconds (period of 100 Hz sample clock).
    Hope this helps,
    Message Edited by dansch on 11-22-2008 04:24 PM
    Daniel S.
    National Instruments
    Attachments:
    CreateTriggerLine.vi ‏19 KB
    FrontPanel.png ‏57 KB
    FrontPanel2.png ‏36 KB

  • How do I correctly time while loops using SCPI and VISA/Ethernet communication to send DC current Values to a Power supply?

    I'm rather new to using labview and I having an
    issue with a test Data Aquisition lab I'm trying to setup using a
    Keithley 6221 AC/DC current source and a basic PCI M-series NI-DAQmx. 
    First of all, I'm looking to update the  current value on a power
    supply at a rate of atleast 10Hz and I'm using SCPI commands and VISA
    communication through ethernet to do so.  Attached below is the VI I
    have written. 
    The issue I'm having is this:
        My VI will
    loop through the values fine in software, or so it seems.  I am unable
    to get the Power supply to update sequentially if I don't set my loop
    delay to anything greater than 130ms.  If I try to run the loop faster
    it starts skipping values instead of counting 1,2,3,4,5,1,2,...etc.  it
    goes 1,2,4,5,2,4,1,2 on the display of the power supply and my DAQ unit
    also skips these values so I know that the number just isn't getting
    read to the Power supply in time.  I was wondering if this was due to
    my sloppy programming or if it is a hardware issue, my computer or the
    method of communication to the power supply?  Is this due to the fact
    that I'm using ethernet and VISA communication?  Is there a faster way
    to communicate or is GPIB faster?  Any input at all would be extremely
    helpful.
    On a side note:  Right now I'm using an pre-determined
    array of values that I can update on the fly but in the future this
    with be put into a  closed-loop control system.  The value for the
    power supply output will be determined by the loop and sent that way.
    Attachments:
    basic DC loop 6221 Keithley.vi ‏145 KB

    Also, one of the string constants is NOT set to '\' Codes Display. Here is an alternative method of calculating the index. I removed the DAQ and VISA stuff since I could not run it.
    Lynn
    Attachments:
    basic DC loop 6221 Keithley.2.vi ‏16 KB

  • How to extract data from CRICKET MCS410CA using RS232

    I need to extract data from CRICKET and use it for internal Localization of mobile robot.How to use the extracted data to form a map...

    You seem to have the same exact project as someone else... http://forums.ni.com/t5/LabVIEW/cricket-integration/m-p/2052334
    Hmmmmm.....
    Some might think you're all in the same class....

  • How to  load data into user tables using DIAPIs?

    Hi,
    I have created an user table using UserTablesMD object.
    But I don't have know how to load data into this user table. I guess I have to use UserTable object for that. But I still don't know how to put some data in particular column.
    Can somebody please help me with this?
    I would appreciate if somebody can share their code in this regard.
    Thank you,
    Sudha

    You can try this code:
    Dim lRetCode As Long
    Dim userTable As SAPbobsCOM.UserTable
    userTable = pCompany.UserTables.Item("My_Table")
    'First row in the @My_Table table
    userTable.Code = "A1"
    userTable.Name = "A.1"
    userTable.UserFields.Fields.Item("U_1stF").Value = "First row value"
    userTable.Add()
    'Second row in the @My_Table table
    userTable.Code = "A2"
    userTable.Name = "A.2"
    userTable.UserFields.Fields.Item("U_1stF").Value = "Second row value"
    userTable.Add()
    This way I have added 2 lines in my table.
    Hope it helps
    Trinidad.

  • How to create longtext or blob data types in SQL using labview

    Hello,
    I am fairly new to SQL, and I'm using the labview database connectivity toolset.  Using labview 6.1
    I am using the DB Tools Create Table vi to create my tables.  I want the tables to hold 1000 character strings.  But the longest string that I can insert seem to be 255 characters.  I think It is a limitation of the "String" data type in SQL so I need to use text or blob types.  The problem is I created a control for the "Column Information" field and I see the following selections for the data type. (String, Long, Single, Double, date/time, binary).  I dont see any selection for text or blobs.  How do I define another data type that is not part of the selection in the control?
    Thanks for any help.

    I don't know about defining long text, but the equivalent of a BLOB should be the binary data type, which just holds the data you put into it without formatting it.
    Try to take over the world!

  • How to fetch data to APEX Report using stored procedure?

    hi all,
    i am making a report in APEX. user selects two dates and clicks GO button - i have a Stored Procedure linked to that result region so Stored Procedure gets called.
    my stored procedure does the following -
    using specified dates (IN) i do query and put data into a table (this table has been created only for this report) -
    i want to show all these data i entered into the table on my APEX report in the same procedure call. can i use ref cursor to return? how to do that?
    currently, i use another button in APEX which basically fetches all data from table. basically, user clicks one button to generate report and then another button to get report. which is not desirable at all :(
    i m using APEX      3.1.2.00.02 and Oracle 10 database.
    pls let me know if you need further clarification of the problem. thanks in advance.
    regards,
    probashi
    Edited by: porobashi on May 19, 2009 2:53 PM

    Thanks Tony.
    I am not sure what you meant by >> change the report to be based off of a query returning sql statement, no need to keep that table around.... >>
    Here's my stored procedure
    create or replace
    PROCEDURE ABC_PROC (
    START_DATE IN DATE,
    END_DATE IN DATE
    AS
    RULE_REC MTG_OFFICER_FORECAST%ROWTYPE;
    TYPE REF_CURSOR IS REF CURSOR;
    TCUR REF_CURSOR;
    BEGIN
    DELETE FROM ABC_REPORT;
    OPEN TCUR FOR
    SELECT ABC_FORECAST.*
    from MTG_OFFICER_FORECAST , MTG_USERS
    WHERE MTG_OFFICER_FORECAST.NBR_OFFICER = MTG_USERS.NBR_OFFICER AND
    MTG_OFFICER_FORECAST.NBR_INSTITUTION = MTG_USERS.NBR_INSTITUTION;
    LOOP
    FETCH TCUR INTO RULE_REC;
    EXIT WHEN TCUR%NOTFOUND;
    INSERT INTO ABC_REPORT( NBR_OFFICER, OFFICER_NAME, FORECAST_NBR_LOANS, FORECAST_LOAN_AMT, FORECAST_FEES,
    ACTUAL_NBR_LOANS, ACTUAL_LOAN_AMT, ACTUAL_FEES, RATIO_NBR_LOANS, RATIO_LOAN_AMT, RATIO_FEES, NBR_INSTITUTE )
    VALUES ( RULE_REC.NBR_OFFICER, RULE_REC.NAME_LOAN_OFFICER, RULE_REC.NBR_LOANS, RULE_REC.AMT_LOAN, RULE_REC.AMT_FEES,
    ACTUAL_NBR_LOANS, ACTUAL_LOAN_AMOUNT, ACTUAL_FEES, SUCCESS_RATIOS_NBR_LOANS_PERC, SUCCESS_RATIOS_LOAN_AMT_PERC, SUCCESS_RATIOS_FEES_PERC, RULE_REC.NBR_INSTITUTION );
    END LOOP;
    CLOSE TCUR;
    END ABC_PROC;
    Thanks,
    Probashi
    Edited by: porobashi on Jun 2, 2009 11:43 AM

Maybe you are looking for

  • How to use SOAP, how do i create the WSDL?

    Hi Im have a website that accepts SOAP messages, and all I was trying to do was to POST a canned SOAP message that i copied from using soapUI, which is an awesome tool,  but using c# one of the first problems is the page of SOAP data.  what i CANNOT

  • Apple Game Center - when will mods be brought in to admin for cheats?

    One thing that gets on the pec-ends of many is the blatant cheating that goes on in Game Center. I don't know about anyone else, but I was led to believe that GC was doing to be different to OpenFeint, Agon, Crystal and whatever-the-feck-else there i

  • Creative Cloud Application Manager failure

    I too experienced - and still do - a lot of trouble with the CC desktop app after update. I managed to reinstall it after using the cleanup tool. It worked again only up till I restarted my computer. After reboot the CC desktop app again fails to ope

  • Substitute Text in Invoice to Payment Document.

    Hi Experts ! We have a requirement to create a substitution rule for getting Text (SGTXT) from the line item of the Invoice Document (DR) into the line item of the Incoming Payment Document (DZ). What should be the Prerequistie and check and also wou

  • Using VOIP on N80 (not IE)

    Using FRING on N80. works absolutely great with SKYPE, but I can't use MSN for some reason, it rings but when msn answers it hangs up. Well chuffed, there's my free calls home sorted while Im away.