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.

Similar Messages

  • 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

  • Audio Volume Sliders for multiple channels of audio

    I don't even know if this is possible, but I was wondering if
    there was any way you can set up volume sliders to control multiple
    channels of audio. For a project I'm working on I am going to have
    background audio and comentary. I want the user to be able to
    adjust the volume of both the background audio and the comentary.
    Is there any was I can make seperate sliders for each of those
    tracks of audio?
    Thanks!

    you can not.
    the only workaround i can think of would be to create a volume curve on one track, and then duplicate that track as many times as needed, and drag the regions of your other tracks into these duplicated tracks.

  • 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.

  • 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

  • How to trigger data recording to a text file for multiple channels for a certain voltage threshold?

    I am working with 6 channels, from each of which I am obtaining voltage values ranging from 0.6-6 V.  I am using the DAQ Assistant to acquire and write the data to a text file.  However, I only want the data to be written to the text file when the difference in voltage (DeltaV) from one data point to another is greater than or equal to 0.04 V.  I am acquiring the data at a sampling rate of 64 Hz.  Any ideas on how to accomplish this?  I have attached my current VI. 
    Attachments:
    Data Triggering.vi ‏116 KB

    Faizah wrote:
    I am obtaining voltage values ranging from 0.6-6 V.  
    I only want the data to be written to the text file when the difference in voltage (DeltaV) from one data point to another is greater than or equal to 0.04 V.  
    Your code does not do what you describe above..
    I just want to make sure I understand your request...
    Let's say you have the following signal:
    0.00
    0.01
    0.00
    0.03
    0.02
    0.01
    0.03
    0.04
    0.07
    0.05
    0.08
    0.03  < delta greater than 0.04, so start recording
    0.11
    0.21
    0.45
    0.93
    2.87
    5.85
    5.86 < delta less than 0.04, so stop recording
    5.87
    5.89
    6.00  < delta greater than 0.04, so start recording
    5.85
    5.86  < delta less than 0.04, so stop recording
    etc..
    Is the above what you are describing?  
    Right now, your code does this:
    0.00
    0.01
    0.00
    0.03
    0.02
    0.01
    0.03
    0.04
    0.07
    0.05
    0.08
    0.03 
    0.11
    0.21
    0.45
    0.93
    2.87 < threshold greater than 1 so reset timer
    5.85 < threshold greater than 1 so reset timer
    5.86 < threshold greater than 1 so reset timer
    5.87 < threshold greater than 1 so reset timer
    5.89 < threshold greater than 1 so reset timer
    6.00  < threshold greater than 1 so reset timer
    5.85 < threshold greater than 1 so reset timer
    5.86  < threshold greater than 1 so reset timer
    4.35 < threshold greater than 1 so reset timer
    2.21 < threshold greater than 1 so reset timer
    1.09 < threshold greater than 1 so reset timer
    0.98 
    However, you did not provide a set start time  to the Elapse Time (I never use Express VI's so I'm not sure what will happen..) However, something does not appear correct with the logic.  I'd have to check.

  • IIR filter for multiple ATD data

    I have 3 ATDs simultaneously sampling. The digital IIR filter works on the first board data of 16 waveforms. The second and the third ATD data do not get filtered at all. They just output zero for all the channels. I tried different instances of the IIR filter to be used with different ATD data and the result is the same. If I turn off the digital filter, then the data shows up correctly.
    Please help.
    Thanks,
    Narayana

    Hello Nadim,
    Thank you for replying. In fact I just came from the lab after solving the problem. Yes, it is an analog-to-digital board - with 16 inputs. All these boards are tied together with respect to sampling-using a synchronization cable. the ATD board is what NI used to call PCI-MI0-16E-4. During my troubleshooting, I realized that the data coming from the first board has a t0 and dt value in the waveform attributes. The other two boards did not have these two attributes - they were zero. Once I gave the waveforms the proper dt and t0 value, the IIR filter could operate on the waveforms. So the problem was solved.
    But thank you for replying. If I did not make myself clear above, I can post an image of the code.
    Thank you,
    naroowal

  • VBS script for auto integration for multiple channels

    Hello there,
    I would like to create a Diadem script to auto analyse multple channels in a tdms file.
    As I haven't yet gone on the diadem advanced course, I need help.
    I have tried the recording mode but I must pick each channel manually then integrate it (but I have around 150 separate channels !)
    I would like to therefore create a routine which starts at the first channel, integrates it, times it by 3600, then chooses the max value and stores this in a new channel.
    It would then continue down the list until all channels are complete.
    I need a loop routine , but don't understand yet how to create it....one day I'm sure it will appear simple ...
    Can anybody help ..?

    Hi adek,
    Why don't you post a typical data sett of yours with 150 channels.  That way the code we give you will work without any edits needed on your end.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instrumens

  • 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.

  • Etherchannel setup for multiple channels

    I have one 3750x and four 2960s. I want to set up etherchannels with two fiber pairs for each 2960 to two interfaces on the 3750. Does the port channel number on the 2960 have to match the port channel number on the 3750 for the two interfaces the fiber is plugged into? For example, port channel 1 on the 3750 g1/0/5 - 6 and port channel 1 on the first 2960. Then port channel 2 on the 3750 g1/0/7 - 8 and... should it also be port channel 2 on the second 2960? The instructions aren't very clear.
    http://www.cisco.com/c/en/us/support/docs/switches/catalyst-3750-series-switches/69979-cross-stack-etherchannel.html

    Hi Jessica,
    NO - The channel numbers do not need to match.
    Imagine you were channelling to a server for teaming
    The server would not care what he channel number on the Cisco box was at all.
    Personally I would match.
    On the 3750 I would regard that as my main end
    So say chan numbers to
    2960-1 21
    2960-2 22
    2960-3 23
    2960-4 24
    Then on
    2960-1 chan 21 to 3750
    2960-2 chan 22 to 3750
    2960-3 chan 23 to 3750
    2960-4 chan 24 o 3750
    Its just what suits you
    Regards
    Alex

  • How to use one dynamic connection managers for multiple parallel data flow tasks

    hi there:
       I have 6 databases residing on the same server. What I want to do is  call a store procedure with identical name on each database dbo schema and transport results to a centralized place. The key is to have those SPs run in parallel instead
    of in sequence as each SP may take around 10 mins to finish. 
    The simplest way is to create 6 OLE DB connection managers and create 6 DFT tasks. However, I do not want to maintain 6 OLE DB connection managers as there is a chance to have more connection  managers.
     What I did so far is to create a OLD DB connection manager and use expression to set up connectionString properties so that it will get populated by variables at run time. It is fine when running all SPs in a Foreach Loop Container. However, it takes
    around 60 mins to finish.
      When I try to run it in parallel ( basically created 6 DFTs but use only one Dynamic Connection Manager), the connection string gets confused therefore all DFT tasks failed.
       Does anyone here have some experience on this topic?
    Thanks
     hui
    --Currently using Reporting Service 2000; Visual Studio .NET 2003; Visual Source Safe SSIS 2008 SSAS 2008, SVN --

    Yes, basically, on the connectionString property of ONE OLEDB, you are using an expression to supply value and this expression is pointing to a variable. 
    In this case , you can update this variable from a table which contains many connection strings. It's good if you want to execute Store procedures in a sequential order. When in parallel mode, this will cause issues as connectionString gets overwritten. 
     I am thinking about using script task to exec sp.
     The whole idea is that I do not want to maintain a large number of Connection Managers. 
    Hope it helps
    --Currently using Reporting Service 2000; Visual Studio .NET 2003; Visual Source Safe SSIS 2008 SSAS 2008, SVN --
    So you are not able to run parallel executions using same conn mgmr, even with dynamic connectionstring, is that correct? Yes, script task will be a way to go if you wish to execute it in parallel, you may connect to SS and query the proper conn string with
    SELECT/WHERE clause in each script > pass it to a script variable > use that script variable and execute the proc. This will require only two things to change in each script, the WHERE condition to get the conn string and the proc name (you may even
    get the proc names the same way you get conn string) and everything else will be same. Let us know how that goes. 
    Hope no two or more procs doing insert/update/delete on the same tables.

  • Manual Bank Reconciliation Statement for multiple dates

    How can we enter ONE manual BRS for multiple posting dates?
    Below is the scenario for which we need multiple posting dates in one bank statement.
    We receive and enter in SAP the Bank reconciliation statement at the end of every month.  The system considers Posting date as end of the month ( the entry date or a single date what we enter).  The transactions however belongs to many dates of the month.  So while posting the bank statement system considers only one posting date and picks up the exchange rates of one date ( that is the posting date).  It results in undesired exchange rate differences.
    To elaborate more please check the following example:
    1. Incoming Payment on 01-12-09 in USD (USD = Foreign Currency, AED = Local Currency ) with Exchage rate 3.8.
    2. Incoming Payment on 06-12-09 in USD with Exchange rate 3.9
    3. Incoming Payment on 09-1209 in USD with Exchange Rate 3.7
    If all of the above transactions are posted at one posting date the system picks up only one exchange rate at the posting date.  However the system should pick up the respective exchange rates on the transaction date.
    I hope I am able to communicate properly.
    Waiting for your expert opinion forks.
    Amir

    How can we enter ONE manual BRS for multiple posting dates?
    Below is the scenario for which we need multiple posting dates in one bank statement.
    We receive and enter in SAP the Bank reconciliation statement at the end of every month.  The system considers Posting date as end of the month ( the entry date or a single date what we enter).  The transactions however belongs to many dates of the month.  So while posting the bank statement system considers only one posting date and picks up the exchange rates of one date ( that is the posting date).  It results in undesired exchange rate differences.
    To elaborate more please check the following example:
    1. Incoming Payment on 01-12-09 in USD (USD = Foreign Currency, AED = Local Currency ) with Exchage rate 3.8.
    2. Incoming Payment on 06-12-09 in USD with Exchange rate 3.9
    3. Incoming Payment on 09-1209 in USD with Exchange Rate 3.7
    If all of the above transactions are posted at one posting date the system picks up only one exchange rate at the posting date.  However the system should pick up the respective exchange rates on the transaction date.
    I hope I am able to communicate properly.
    Waiting for your expert opinion forks.
    Amir

  • DAQmx multichann​el read error. DAQmx believes there are multiple channels in my task.

    Hello,
    I recieve the appended error message when attempting to use DAQmx Read in my VI.  LabVIEW is telling me that I am attempting to read a single channel when my task is configured for multiple channels.  However, as you can see in the task configuration pane, that is not the case!  If I attempt to use DAQmx Read to generate a waveform with multiple channels, the VI executes without error but I do not want a 1D waveform array..  Any tips?
    Regards,
    Steve
    Solved!
    Go to Solution.
    Attachments:
    multi_chan_errr.JPG ‏42 KB
    channel_Vin.JPG ‏108 KB

    This is exactly why I ALLWAYS hide my DAQ Tasks inside a "Resource Module" 
    As I use the term a "Resource Module" is a special case Action Engine tha exposes only that subset of functionality that a specific project needs to take on a given resource external to LabVIEW.  And, it provides a single point of entry to access that resource by keeping private data private.  Had you used the technique here you would have had one vi to look at.  and, there likely would have been no "Reconfigure to add channel" method available to cause trouble.
    Jeff

  • Is there a way to acquire a set number of points from multiple channels?

    I had set up a VI to use AI ONE POINT.VI for multiple channels. Getting one data point for me is useless. I need, say, 100 data points from multiple channels at once. Is there a way to do that? Is there an example program I'm not seeing that already does that?
    Thanks!
    p.s. I have Labview 6.1

    Hello,
    Thank you for contacting National Instruments.
    As Dennis had mentioned, there are many example programs that ship with LabVIEW that demonstrate how to take measurements from multiple channels with either a finite or continuous amount of data to be acquired. In LabVIEW 6.1 you can find these examples by going to Help >> Find Examples >> Hardware Input and Output >> DAQ >> Analog Input >> General.
    In these examples, if you would like to sample multiple channels, you simply need to add the physical channels separated by a comma for example: 1,3,5 would sample channels one, three, and five. You can also use a colon to sample a sequence of channels for example: 4:6 would sample channels four, five, and six. This makes it easy for you to choose the chann
    els that you would like to sample without having to make any modifications to your code.
    Regards,
    Bill B.
    Applications Engineer
    National Instruments

Maybe you are looking for

  • Importing text file databases into address book

    I have a large csv formatted (all that easily allowed by my exporting database) that I want to import into addressbook. By the instructions this should work and so I diligently configured the "Text file import" screen to align the fields as they shou

  • DFSR crashing every 15 minutes

    Good Morning I am facing an issue with DFSR where the DFSR service crashing every 15 minutes. An event is logged in the application log as below The server OS is windows 2003 server R2 with SP2 . Could anyone help? Event Type: Information Event Sourc

  • Weird burn problem on Aluminium iMac

    OK so I have a year old iMac and I have noticed that at the bottom of the screen, just above the dock I can see a bit of burn in on the screen. it's from the bottom of the firefox window and is only a pixel in height but it can be annoying as I have

  • Stock posting of Insp. lot in alternative unit of measure

    Dear All, I have a material whose Base unit of measure is Ton and alternative unit is PCS. There is an insp. lot of 10 Ton. Now i want to do its stock posting in PCS. So how can i do that.

  • Why show aaa sessions and users nothing to see when using telnet instead of SSH

    i follow this  http://blog.skufel.net/2012/06/how-to-integrating-cisco-devices-access-with-microsoft-npsradius/ after show aaa sessions, there is nothing to see, but i actually can login with active directory account is there aaa when using telnet?