Multiple channel data acquisition

hi sir;
i want to get the voice data from 8 channels in 8 different
buffers.The acquisition should be continious.Please tell how this will
be possible using daqmx API's and what procedure should be
followed.Also specify what API's should use.Please donot say the
tradition answer  "see the National instruments examples
etc.etc".Please tell complete sequence of API's.
 I have installed 7.4 version.
I want to acquire continue one minute data from 8 channels in 8
buffer after the one minute all the data of 8 buffer should be
transfered to other 8 buffer and the continous acquistion should be
contineoued. I m using DAQ6025E.
thanks
ajmal

Duplicate post.

Similar Messages

  • Again Multiple channel Data Acquisition

    Again help require
    I m using
    Config_DAQ_Event_Message with CallBack Functon
    Scan_SetUp
    Scan_Start
    to get data from single channel but the parameter in scan_setup is only Single ChannelNum But I want to get Data from 8 channels at the same time so how is it possible that i can get data from 8 channels using above DAQ API's Help with some VC++ code
    If I give total no of chanels in Scan_setup then it creates exception with Config_daq_event_message if I donot use Cofig_Daq_Event_Message then it all works correctly and data from 8 channels is acquired correctly in double buffer but i must use callback with config_daq_event_message,Scan_setup,and Scan_Start API to get double buffer mutiple channel data acqusition. thanks

    Hello,
    Please see the response to your original post:
    http://forums.ni.com/ni/board/message?board.id=231&message.id=3322#M3322
    Regards,
    Sean C.

  • DAQ_START FOR Multiple Channel Data

    Hi dears ;
    Normally we use Scan_start DAQ API to get multiple channel data but i want to get data using Daq_start for multiple channel
    but i dnot want to use this api like Scan_start by giving its second parameter -1 for all channels
    i want to use this api in seperate thread for each channel and i want to get the data from 8 channels simultaneously  using this api.
    plz send code in vc++.if the solution is not possible then send me alternate way.
    Detail:
    There are 8 threads they are running simultanously and every thread want to acquire data from their corresponding channel i.e thread one from channel one thread 2 from channel 2 and son...all the threads goes at the same to acquire the data and come back after one minute and this process continue untill quit the application
    please tell is possible or an altenate solution for this requirement.I donot use Scan_start to get the data of all the channels in one buffer i want to get the data of each channel in its own buffer.
                                     please tell as soon as possible
                                                                             thanks
                                                                                                    ajmal

    Hello ajmal,
    There are a couple reasons why your idea probably won't work.  First, it looks like you are using Traditional (legacy) NI-DAQ functions.  The Traditional NI-DAQ driver is not multi-thread capable.  Meaning that only one thread will be able to access the driver at a time.  Also, it is not possible with Traditional NI-DAQ or NI-DAQmx to have multiple analog input tasks running simultaneously.  Is there a particular reason that you don't want to read all the channels in the same task and separate the array into a different sub-arrays for each channel?
    -Alan A.

  • How to use ni-6008 and build a four channel data acquisition at a rate of 250 samples per channel and display all the data in a waveform chart

    how to use ni-6008 and build a four channel data acquisition at a rate of 250 samples per channel and display all the data in a waveform chart 

    Hi kdm,
    please stick in one thread for the same topic!
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • Error -10609!! How to correct for multi-channel data acquisition?

    I am creating a program that will obtain data from all 16 channels of the PCI-DAQ6023E. I keep running into the 10609 Error "Transfer in Progress" when trying to compile and run. How do I set up the code to allow the DAQ card and Visual Basic to analyze all 16 channels at the same time?

    Greetings,
    Most of the time when I see the error 10609 Transfer in Progress it is because multiple calls, such as an analog config or analog start, are being called to the same DAQ device at the same time. Both calls are fighting for the DAQ card's resources. This is an issue with your program.
    I recommend that you take a look at an example program, such as our simple AI example in Visual Basic which can be found in the following directory: \Program Files\National Instruments\NI-DAQ\Examples\Visual Basic\_Getting Started\AI.
    You will see a Component Works control called CWAI. If you right-click on this control and choose properties you will be able to select the channels you wish to read from. You will want to read from all 16 channels by using a
    channel string of 0:15 or 0,1,2,3 .. 15. You do not want to have one CWAI control for each channel.
    You could also take a look at the following example available on our web site.
    Continuous Analog Input on Multiple Channels Using Visual Basic with NI-DAQ Function Calls
    http://venus.ni.com/stage/we/niepd_web_display.DISPLAY_EPD4?p_guid=B45EACE3E25156A4E034080020E74861&p_node=DZ52302&p_submitted=N&p_rank=&p_answer=&p_source=Internal
    Regards,
    Justin Britten
    Applications Engineer
    National Instruments

  • Multiple channel data with different time stamp logging

    I have peaks and valleys from multiple channels with different time stamp but I am not able to log to a single file. Any idea on how to do this?
    Attachments:
    Single Point Peak Valley Log.vi ‏53 KB

    Hi Dennis,
    Sorry for that I have modified the VI.
    Because the peak and valley of every channel will occur at different time and I want to log the peak/valley with the time stamp.
    How can I log them on the same file.
    Attachments:
    Single Point Peak Valley Log_Mod.vi ‏53 KB

  • Multi-channel data acquisition via GPIB using a digital oscilloscope (Tektronics TDS540C) and LabVIEW 7

    I need to acquire datas from all the 4 channels of digital oscilloscope (model Tektronics TDS540C) using LabView 7. Please give me if you have VI programs to preform this task. Thank you.
    Nozo

    Hi Nozo
    There is a driver available here http://sine.ni.com/apps/we/niid_web_display.download_page?p_id_guid=E3B19B3E9533659CE034080020E74861
    Hope this helps you on your way
    David

  • Data acquisition from multiple channels.

    Hello
    Right now, I am able to acquire the signal from a single load cell and display it.But I would like to know of how to acquire  acquire signals from two load cells simultaneously.I am using Labview 6i and I am using AI S-Scan with AI config to acquire the waveform.It would be of great help if you could suggest a simple method to acquire the signals.
    PS: Please find the attached file used for acquisition from a single load cell.
    Looking forward for your reply.
    Manasa
    Attachments:
    test 4.vi ‏102 KB

    Hi Manasa,
    If I understand what you are trying to do, it is relatively
    straightforward to configure your application to acquire data on two channels.
    I was unable to run your vi as it was missing some of the subVI’s
    from your application.  However, your
    attachment was sufficient to see what you are trying to do. 
    Here is how to add channels:
    1.      
    In the I/O Channel Constant, you can add
    additional channels by using a comma or a semi-colon.  For example, to scan the first four channels
    you would put 0:3 in the constant (see attached screenshot ChannelConfig.jpg).  To scan the first and third channel you would
    put 0,2.
    2.      
    The AI Single Scan VI will now read from
    multiple channels.  Often it easiest to
    configure the output of this VI for viewing by first putting the data into an
    array using the Build Array VI.  It can
    then be plotted in a waveform graph. (see attached screenshot ReadtoGraph.jpg
    and WaveFormGraph.jpg)
    Just a few notes about “simultaneous” sampling:
    Most of the NI data acquisition cards have a multiplexer
    between the various input channels and the Analog to Digital (A/D) converter
    creating a very small delay between each channel (usually ms range or
    smaller).  NI does make several data acquisition
    cards that can perform true simultaneous sampling, meaning that there is an A/D
    converter for each channel.
    For the large majority of applications, the small delay
    between channels is negligible.
    Jared T.
    Attachments:
    ReadtoGraph.JPG ‏21 KB
    ChannelConfig.JPG ‏288 KB
    WaveFromChart.JPG ‏61 KB

  • I want to acquire data for multiple channels using PCI 6120 that works on traditional DAQ. I cannot access more than one channel, can someone help me or if someone has data acquisition vi for PCI 6120, please send me over . Thanks

    I have PCI 6120 card and I want to acquire data for more than one channels. I'm using traditional DAQ to get it. But it does not work for more than one channels. If someone has a data acquisition vi for PCI 6120. Or some suggestion how to aquire data please let me know.
    Thanks

    Hello DSPGUY1,
    You can definetly acquire from several channels. For your convenience, I have appended below the content from help that tells you how to configure it:
    "channels specifies the set of analog input channels. The order of the channels in the scan list defines the order in which the channels are scanned during an acquisition. channels is an array of strings. You can use one channel entry per element or specify the entire scan list in a single element, or use any combination of these two methods. If x, y, and z refer to channels, you can specify a list of channels in a single element by separating the individual channels by commas, for example, x,y,z. If x refers to the first channel in a consecutive channel range and y refers to the last channel, yo
    u can specify the range by separating the first and last channels by a colon, for example, x:y."
    Hope this help.
    Serges Lemo
    Applications Engineer
    National Instruments

  • Help! data manipulation for high speed streaming to disk from multiple boards and multiple channels

    I am using Labview 7.1 and have been trying to capture data from 12 channels simutaneously sampled at 2MS/s each and streaming to disk for up to a minute or more.  The hardware I am using is 2 x PXI 6133 S series boards with a MXI4 link to a Pentium D 2.8 Ghz machine with 2Gb ram.   I have 2 sata drives set up in a raid 0 configuration which should give me hard disk write speed faster or equal to the MXI-4 transfer speed. 
    I have first started off by using the example code "multi device sync - analog input- cont acquisition" which has enabled me to sync the two boards and sample at the required speed. 
    To stream the data to disk, I have first merged the data from each board  together to save it to one file.  I have tried using the storage vi's but I end up with a Daqmx read error (trying to read data that is no longer available).  I have played around with the read data size to the point that I either get a insufficient memory error, or I get the "trying to read data that is no longer available"  error.  I have also tried using the file IO blocks with some success and have found that I have been able to stream to disk only if I configure the daqmx read block to output the data in "raw 1D I16" format and plugging it into the file-write block.  In doing this, I have noticed that using  multiple channels on one daqmx read task, I will get all the channels in one 1D array rather than a 2D array organized by channels.  This makes it messy to read at the end of this, and I also don't want to write another vi to separate the channels, due to the high chance of getting the data mixed or messed up if I happen to change the number of channels on a board
    Is there a cleaner way of streaming this data to disk and keeping the channel data separated from each other?, and/or is there a better way to capture and handle the data I need? 
    I have attached the vi which I have got to consistantly work streaming to disk using the raw 1D I16 format.
    Thanks in advance to anyone who can help.
    Attachments:
    multidevicesync_analoginput_streamtodisk.vi ‏197 KB

    Hi,
    i can suggest following
    Refer to an example VI called as "High speed data logger.VI"  in conjunction with "High Speed data logger reader.vi" in Labview examples. Alhrough the logger might be in Tradiditional Daq format, it can be quite easily converted to Daq Mx format to store data in Binary (I32 format) . I have used this for many of my applications and i have found that the data retrieved does not have any "messups".
    Why not keep a seperate file for each card? This way, you do not have to load your application with extra process. You only have to acquire and save. After saving in Binbary format, you can retrive it offline, convert it to ascii format and merge the data files of various cards to get one consolidated ascii data file.
    hope this helps
    Regards
    Dev

  • How to record multiple midi channel data to multiple midi tracks in Logic?

    Dear All,
    I have an electric organ from Yamaha, and it has 3 keyboards, upper keyboard, lower keyboard, and pedal keyboard. They are all running in different midi channels:
    i.e. upper keyboard: midi channel 1
    lower keyboard: midi channel 2
    pedal keyboard: midi channel 3
    When I try to create 3 midi tracks in Logic to listen to the 3 keyboards, I found that their midi signal just mixed together. Meaning, all 3 midi tracks can listen to all 3 keyboards...
    Please noted that I am using a single USB Midi interface (1-in, 1-out) to connect the electric organ with macbook.
    Can someone give me a help here? I suppose I can setup 3 midi tracks in logic to listen to 3 keyboards signal separately.
    Thanks,
    Eric

    Ahrenshof wrote:
    I had a similar situation when I first got LS and received this useful reply from Apple-
    in Settings>Recording, check the box for "Auto demix by channel if multitrack recording".
    Be aware that the Settings are song specific, compared to Preferences, which apply
    to all songs. Set your controllers to send on specific MIDI channels and set the same channels in the inspector of your tracks.
    I have a 2x2 midisport however, so I don't know if you will have an issue because you have only 1 I/O.
    If so, you might have to learn about 'Multi instruments", I haven't had the need.
    Yes, this is correct. We have two recording stations with ESI M4U 4x4 midi interfaces. We are recording 4 instruments at the same time and they all send their data on a different channel. I created midi instruments for all of them in Environment just to have them more easily available in the Arrange window. Also make sure you have the correct midi channel set per track in Logic.
    When the option to "auto demix by channel" is set and you are recording, it may seem that Logic is recording only on one channel (only one region being created). But as soon as you hit stop, it will expand to multiple channels.

  • Multiple channels acquisition and Number of samples per channel

    Hi,
    I'm a new labview user and I need some help in trasposing an old traditional NI-DAQ acquisition software in a NI-DAQ-mx one.
    I followed the tutorial (#4342) but I found a problem with Analogue 2D DBL Multiple Channels Multiple Samples DAQmx Read Vi.
    I'm trying to acquire 8 voltage signals from a NI-USB-6341 device. When the Number Of Samples Per Channel I set is below the number of channels (8), the software acquires only a number of channels equal to the number of samples per channel I set.
    Is that a normal behaviour?
    Thank you
    Daniele

    This is my code. The problem is the same with or without the code for the scan backlog indexing.
    Tomorrow I will try with the code from the example.
    Thank you
    Daniele
    Attachments:
    acq code.jpg ‏119 KB

  • Multi Channel USB Data Acquisition

    I am using the following VI for arduino HC-06 bluettoth data acquisition. I would like to acquire multicahnnel data 
    Could you suggest me how to acquire multichannel data from USB? To do this, in what way  i have to program the arduino?

    Thank you very much for your suggestions. its working.
    But if i give input to channel 2 or 3 or 4, they are not responding. only channel 1 is responding irrespective of input pin. what could be the reason for this?
    earlier, i was acquiring single channel data at 57600 baudrate, i was getting pure sine wave signal upto 90Hz, after that it was started distorting.
    Now, it started distoring above 20Hz, i think i need to increase the baudrate to 230400 to get 4 channel undistorted signal upto 100Hz,
    but arduino supports upto 115200 only, what shall i do??

  • How can i avoid phase delay in annalog input data acquisition of multi channels

        I am using a PCI-6251 M Series board and wish to acquire two analog signals and output one analog signal simultaneously.  I have a question about multi-function -synch ai-ao.vi .With this Vi I work out annalog  input of one channel  and   data output of one channel synchronously.I take some  change in the vi which I make the sampling rate and sampling number of input and output channel be equal. But when i increase the input channel from one to two,a problem come that is the data acquired always shift towards one direct which depends on the sampling rate(for example data shift turn left when 250kS/s,right when 200kS/s).  Does the phenomena mean phase delay or lag during accquring data? or mean data loss? how it happen ?
         I wonder if the acquisition on both channels is perfectly simultaneous.I  hope the start of data  acquisition each time be the same all time.
              I would appriciate it  if any comment and suggestion.
                Attachments: modified VI from the Multi-Function -synch ai-ao.vi
                I  delete some part about data processing  in while cycle.vi in additonal file

    The specifications for the PCI-6251 state that it is not a simultaneous sampling board. This means that the board has one A/D converter which is multiplexed between channels. How much time delay is between channels is determined by how the board timing works, but it cannot be less than the reciprocal of the maximum sampling rate. For that board this is 1/1.25 MS/s or 800 ns. The delay could be as much as the reciprocal of your actual sampling rate. You need to look at the detailed specification for the device to determine the intersample delay. Some boards require addditional delay when switching channels to allow the multiplexer and amplifier to settle.
    Perhaps you can sample at a rate that is high enough that the delays produce acceptably small phase shifts. If your signals a deterministic enough, you may be able to calculate the shift and compensate.
    If you need true simultaneous sampling, you will need to check the specifications to be sure that the device you select offers that capability. I took a quick look at NI's web site DAQ search page and that is not a top level search option, but as you start to specify channels and sampling rates it becomse available.
    Lynn

  • Displaying real-time data using gui meter from multiple channels.

    I am using DAQ USB-6009 for my assignment. Part of my task is to display real-data from multiple channels in the form of gui meters.  eg. irradiance and voltage...
    I used a split signal to separate the signals from different channels coming out of the data output terminal of the DAQ assistant. The problem is that I do not know which vi to connect in between the split signal and the gui meter. I am looking for one vi that is capable of handling signals (measurement)  and outputting the data to the gui meters simultaneously and individually based on the channel they are coming from.

    Thnx for your tip, Dennis.
    However, I have another problem that just occurred to me when my VI manages to execute as I wanted.
    I noticed that the needle on my gui meter will only "appears" to be responding to every changes to its input when I have set it to run continuously and the only way to stop it is via abortion which might leave the resources (eg. external hardware) in unknown state. Is there any safer and workable ways to organise the VIs using while loop?
    I have placed my DAQ assistant, write to measurement file (vi), add function, split signal and gui meters all in 1 single while loop.
        DAQ-------> write to measurement file
                 |
                 |                                                 ​                   |--------------------------------> add function----> gui meters
                 ---------------------------------------------> split signals ---|--------------------------------> add function----> gui meters
                                                      ​                                |--------------------------------> add function----> gui meters
    If I do the following steps,
    1. press run continuously to start the VI
    2. click the same button to disable continuous run when the VI has completed its task.
    3. click the stop button in the front panel to stop the while loop
    Does doing these steps ensure that I will not leave resources in unknown state? Is it a safer way to stop a VI which is running continuously?
    Pardon me for I am new to LabView. Even though, I have read the user's
    manual and tried out all the execises, there are some concepts that I
    need clarification on and mistakes that I need to discover through more hands-on.

Maybe you are looking for