Analog trigger with NI9205 PFI0

I have a problem to trigger an analog acquire with NI9205 (C module in  Compact DAQ)
i use the PFI0 line, but the acquire don't start when i send a trigger gignal (5 to 0V)
the error:
could you help me?
Thanks a lot!

You set your task up to run at a rate of 2400 samples per second, and request 64 samples to be read. This means that it will take at least 37.5ms to take the data.
Your DAQmx Read function has a timeout of 10ms set.  This means that the read will always timeout before the required samples are read as the error is indicating.
For this configuration you should not need to wire the timeout setting of the DAQmx read at all, I recommend removing that input!
Craig H. | CLA | Systems Engineer | National Instruments

Similar Messages

  • Is it possible to start a PCI4472 and a PCI-MIO-16E-1 simultaneously using an analog trigger (with pre-trigger)?

    I would like to start several PCI 4472 and a PCI-MIO-16E-1 simultaneously. All boards are connected via a RTSI cable.
    My program works fine if I use software trigger, or an analog trigger from a PCI4472 channel. However, the analog trigger works only when I set pre-trigger (or pre-scan) to 0.
    Is it possible to start a PCI4472 and a PCI-MIO-16E-1 simultaneously using an analog trigger (with pre-trigger)?
    Thanks.
    Ian Ren

    Hi, Bill
    I think it is possible to set more than 38 pre-trigger scans on a single 4472 card. I've done this before. You can verify this by running the Labview example "Acquire N - Multi-Analog Hardware Trig.vi" which comes with LabView.
    What I try to do but without success/luck so far is to start data acquisitions of several 4472 cards and a PCI-MIO-16E-1 card using an anlog trigger (with pre-trigger).
    Thanks for your help.
    Ian

  • Monitor multiple channels for analog trigger with DAQmx drivers

    Hello! I would like to start a data acquisition of multiple analog channels (16) from an analog trigger. I would like trigger to monitor four of the (same) channels, and trigger when any one of them reaches a certain voltage. I found an example that would work with the Traditional DAQ drivers (using occurances), but can't figure out how to do something similar in DAQmx.
    Time is also an issue, as I would like to collect the first 80 milliseconds of data after the trigger (at a rate of 500,000 Hz).
    I'm using LabView 7.0 and collecting data off of two PXI-6133 cards.
    Thanks for your help!

    Hi Denise-
    After some research, I have found that it is not possible to use the functionality of DAQ Occurrences in DAQmx. Ironically, the reason that this functionality is available in Traditional and not DAQmx is due to the exploitation of an inherent limitation of Traditional that was upgraded in DAQmx. The multi-thread capability of DAQmx is a major advantage for most applications, but in this case it prevents the use of occurrences as they existed in Traditional DAQ.
    In short, this means that you can't directly use this functionality in DAQmx. You can however emulate this functionality with minimal software analysis of the incoming signal. I have attached a modified example VI that logs data to a chart only when the analog level of one of the channels being measured has exceeded a user-defined reference value. Basically, the task is running continuously in the background but the data is not actually logged until the signal is above a predetermined "trigger" level.
    Please let me know if the attached example is helpful for your application. You will see the input channels listed in the format "DevX/ai0:y" where X is the device number and y is the highest channel number of interest.
    Regards,
    Tom W
    National Instruments
    Attachments:
    Cont Acq&Graph Voltage-Int Clk Analog SW Trigger.vi ‏83 KB

  • Analog Trigger with PXI-6229

    I have an application using a PXI-1010 chassis, PXI-6229 DAQ, communicating with MXI-4 to the host computer.
    For task triggering, the only direct option I'm finding is the digital trigger. However, I need to trigger on a low-lever analog signal (180mv). Can this be accomplished indirectly and start the task with a minor delay? If I can trigger the signal on the positive slope, I could have potentially a 1ms delay to begin the task and not affect my data.

    Hello Russ,
    The M Series 6229 should be able to support hardware analog triggering. Take a look at the following example to see how to accomplish this in LabVIEW.
    http://venus.ni.com/stage/we/niepd_web_display.DISPLAY_EPD4?p_answer=&p_guid=DC9C549F7FDC1973E034080020E74861&p_node=DZ52000&p_rank=&p_source=External&p_submitted=N
    If this doesn't work out for you and you don't mind having a delay between the low-level analog signal and the start of the task, you could always use a software analog trigger. Examples of this can be found in the LabVIEW NI Example Finder.
    Take care,
    E.Lee
    Eric
    DE For Life!

  • How to do an analog trigger with bipolar levels of detection and start acquisition with pre-trig samples

    hello,
    I use PXI 4472 with accelerometers. I want to trig as soon as the acceleration is out of the window +/-50g and recover the previous samples before the trig. Is it possible to do it?
    I try the daq-mx functions trig on analog windows and a number of pretrig samples but without success. My first sample detected is always over 50g, it seems that the number of pretrig samples has not recognized. Anyone to help me?
    Thank you. 

    Hi Chouca,
    It should be possible to do what you are trying to do:
    type of trigger: analog window triggering (acquire data when the signal leaves the window)
    Action caused by trigger: reference trigger
    I will try and get a 4472 to check that by myself.
    Maybe it would be easier to check the behaviour of the system with a precise voltage generator instead of the accelerometers.
    Best regards,
    Thomas B. | CLAD
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    >> Inscrivez-vous gratuitement aux Journées Techniques : de l'acquisition de données au contrôle/com...

  • Error 89131 while trying to analogue trigger with NI9205

    Hi Guys,
    I have an NI 9205 mounted in an NI cDAQ-9178 chassis which I'm trying to use to supply an analogue trigger to a data capture task I'm implementing. I followed the instructions in http://digital.ni.com/public.nsf/allkb/851828B06A20E01B862571DA0005591A to set up the NI9205 to provide a digital trigger to a second input channel when the analogue level exceeds a certain threshold. However, when I run the vi I get the following error:
    Error -89131 occurred at DAQmx Start Task.vi:1
    Possible reason(s):
    An attempt has been made to perform a route when the source and the destination are the same terminal.
    In many cases, such as when configuring an external clock or a counter source, you must select a PFI, PXI Trigger, or RTSI line as the source terminal.
    Property: Start.DigEdge.Src
    Property: Start.DigEdge.Edge
    Source Device: cDAQ1
    Source Terminal: ai/StartTrigger
    Task Name: _unnamedTask<31>
    I'm not sure why this is happening, since I'm following the white paper instructions. Does anyone have any ideas? I've uploaded the VI for you to take a look at.
    RB
    Attachments:
    DAQmxtest.vi ‏28 KB

    Hi RottenBorough,
    The error you are getting clearly refers to the ‘Start.DigEdge.Src’ property, which means the ‘DaqMx start trigger’ polymorphic VI is used in the ‘start digital edge’ configuration in your code. I could not find this VI used in this configuration in the file you have attached. Are you doing this in another part of your code? Also I have the following questions after going through your VI:
    1) Is there any specifc reason why you are generating a counter pulse output and not using it? I feel you would not need this if you are just trying to trigger another task using analog triggering.
    2) Also, I noticed that you have not used the cDAQ internal digital edge ( for eg: /cDAQ4/ai/Start Trigger) to trigger another task (as mentioned in the KnowledgeBase article).
    One reason I can think of for this error is, you might be trying to set a source for your ‘DaqMx start trigger’ through the external terminal, while it has already been configured to use this source because of the option selected through the drop down arrow of this polymorphic VI. But as I have mentioned before, I do not see you setting up digital edge triggering in the code you have attached. It is worth checking if you are doing such a thing in another part of your code.
    Thanks and Regards,
    Supreeth.K
    Applications Engineer
    NIUK

  • Problems with setting up analog trigger with NI 6289 with VB6 [with error 200265]

    I have been trying to synchronize an analog input read with an analog signal generated by the Multifunction DAQ (NI 6289). Basically, the voltage AO signal is fed into a laser and the resulting intensity profile is read into a photodiode, which generates an AI signal read back into the DAQ. The two channels have the sampling rate and buffer size / number of samples.
    However, triggering has presented with some problems; the manuals were not very clear on the subject of connecting channels, and no sample programs exist so far that demonstrate this on VB6.
    What I have tried is physically connecting /Dev2/ao0 with /Dev2/APFI0, ( Dev2/ai0 is connected separately). Below is a little snippet of code:
    'initialization goes here
        DAQmxErrChk DAQmxCfgAnlgEdgeStartTrig(inputHandle, "Dev2/APFI0", DAQmx_Val_Slope1_RisingSlope, txtOffset.Text)
        DAQmxErrChk (DAQmxReadAnalogF64(inputHandle, numSampsPerChannel, 10#, DAQmx_Val_GroupByScanNumber, dataBuffer(0), numSampsPerChannel, sampsPerChanREAD, ByVal 0))
        DAQmxErrChk DAQmxWriteAnalogF64(outputHandle, numSampsPerChannel, False, 10#, DAQmx_Val_GroupByScanNumber, optData(0), sampsPerChanWritten, ByVal 0&)
        DAQmxErrChk DAQmxStartTask(outputHandle)
    I received the following error, -200265, "attempting to use an invalid analog input trigger", at the line ReadAnalogF64.
    Attached is the code I used for the triggering event. Any help would be greatly appreciated.
    Attachments:
    Trigger method.txt ‏2 KB

    Refer to this thread please.
    Message Edited by Chris W. on 04-10-2009 10:32 AM

  • Analog trigger with 6071e in C

    I'm using the NI6071e MIO board and what I need is to perform SCAN_Op continously on 4 AIs. When a trigger of 1.1V reached in AI2 - stop trigger, I need 300 samples pretriggered plus 200 samples of poasttrigger data (total of (300+200)*4 = 2000 samples. I'm writing code in C, using the Microsoft VisualStudio and the traditional NI-DAQ library. Does anyone can explain on how I should perform it? Does anyone have similar code?
    I've been directed to a LAB View example that unfortunatly I can't read.
    Thanks,
    Nir.

    Hello,
    I'll try to offer some tips. It looks like you are trying to set up two different triggers for an analog input. This can not be done. Some different options for you are to use pause triggering, reference triggering, or some sort of software triggering. Pause triggering will allow you to collect data when the voltage is above (or below) some trigger value. When the voltage drops below (or above) the trigger value it will no longer acquire data. Another option is using a reference trigger. You can set up a reference trigger to acquire a predetermined number of data points before and after a trigger. Another option might be to use your analog signal as a start trigger for a continuous acquisition. Then, in software, monitor the data being acquired from the trigger channel. When the trigger channel acquires some data that is below your trigger level, stop the acquisition in software (after you have acquired all of your post-trigger data points). I hope this information helps!
    -Alan A.

  • How to synchroniz​e two analog output with USB-6353 sharing a trigger

    I'm have the need to synchronize two analog output on the same device (USB 6353) sharing a trigger signal on PFI0.
    The programming environement is Visual C++ , and the code I wrote is as following:
    DAQmxCreateTask ("", &Ao0TaskHandle);  // is the task handle for the analog output Ao0
    DAQmxCreateVoltageChan((Ao0taskHandle,"Dev1/Ao0","​",-5.0,5.0,DAQmx_Val_Volts,NULL);
    DAQmxCfgSampClkTiming(Ao0taskHandle,5000.0,DAQmx_V​al_Rising,DAQmx_Val_ContSamps,1000);
    DAQmxCfgDigEdgeStartTrig(Ao0taskHandle,"/Dev1/PFI0​",DAQmx_Val_Rising);
    DAQmxCreateTask ("", &Ao1TaskHandle);  // is the task handle for the analog output Ao1
    DAQmxCreateVoltageChan((Ao1taskHandle,"Dev1/Ao1","​",-5.0,5.0,DAQmx_Val_Volts,NULL);
    DAQmxCfgSampClkTiming(Ao1taskHandle,5000.0,DAQmx_V​al_Rising,DAQmx_Val_ContSamps,1000);
    DAQmxCfgDigEdgeStartTrig(Ao1taskHandle,"/Dev1/PFI0​",DAQmx_Val_Rising);
    DAQmxWriteAnalgF64(Ao0taskHandle,1000,FALSE,10.0,D​AQmx_Val_GroupByChannel,AOdata,NULL,NULL);  AOdata is a buffer containing a sinwave
    DAQmxWriteAnalgF64(Ao1taskHandle,1000,FALSE,10.0,D​AQmx_Val_GroupByChannel,AOdata,NULL,NULL);
    DAQmxStartTask(Ao0taskHandle);
    DAQmxStartTask(Ao1taskHandle);
    What happen as result of the code is that only the Ao0 channel get the sinwave output , but not the Ao1 . It seems the two channels are not synchronized.
    What is wrong in my code?
    Please any help non referred to a LabView soloution , first because I'm not a LavView programmder and secondly the project impose C++ as the unique environement.
    Thanks
    Enky

    It will depend on what you are programming the NI 5112 device with.
    If you are using LabVIEW, you can use the example program attached below. In it, it will show you how this is done.
    If you are using VB, VC++ or CVI, you can look at one of the NI 5112 shipping examples that are installed on your computer. These are located in the VXIPNP folder. For example, the VC++ example would be located here:
    C:\VXIpnp\WinNT\NISCOPE\Examples\c\MStudioC++\5112​Sync
    These examples will show you how to synchronize the two digitizers.
    Let me know if you have any questions about these examples.
    Brian
    Attachments:
    Multiple_NI_PXI-5112_Synchronization_Demo.llb ‏151 KB

  • I use a PCI MIO 16E board with an analog trigger. So I wire chann

    el 0 to the PFIO line, and I enter "PFI0"as the triggering channel on the front panel , I put a level,and I declare channel0 and 1. When I do a DAQ it seems that PFI0 detects the signal as I haven't a timeout, but it doesn't trigger off at the good level.

    el 0 to the PFIO line, and I enter "PFI0"as the triggering channel on the front panel , I put a level,and I declare channel0 and 1. When I do a DAQ it seems that PFI0 detects the signal as I haven't a timeout, but it doesn't trigger off at the good level.I noticed you posted an earlier question that generated several responses about the valid sources of an analog trigger. Was there a reason you decided to use the PFI0 option over just telling LabVIEW to use Analog channel 0 as the trigger source? At what voltage level are you wanting to trigger?
    Also, if you use the Analog Trigger examples in LabVIEW or the DAQ examples for your compiler, do you get better results?

  • Anyone have an example of a PCI-6250 Digital and Analog Aquistion with Analog Post-Trigger?

    Hey All,
    We're trying to set up a post trigger data capture of parallel absolute strobed Gurley 17-bit encoder data (ignoring MSB for 16-bit aquisition) with an analog signal that is the output of a torque load cell.  The trick is to use the analog signal level as a post-trigger to stop the data aquisition.
    1) can the analog signal be recorded and used as the trigger?
    2) does anyone have an example using the PCI-6250 (or 6251)
    Thanks in advance for your help,
    -Drewksi 

    Hi Drewski,
    You can use the APFI0 line as an analog trigger for your signal. However, in this case you need to connect your analog signal to both the analog channel you want to acquire at and the APFI0 line.
    Assuming you are using LabVIEW,you can check the "Acq&Graph Voltage-Ext Clk-Analog reference.vi" example. This examples uses an external clock but it works also with the internal clock. All you have to do to change the control to onboard clock.
    You can find this example in LabVIEW Help >> Find Examples >> Hardware Input and Output >> DAQmx >> Analog Measurement >> Voltage
    Best Regards,
    Faris
    Bueller

  • How to catch an analog hardware trigger from the PFI0/TRIG1 pin?

    I have a PCI-MIO-16E-4 DAQ Board, a BNC-2090 Connector Block and LabVIEW 6.1. How do I configure a VI like the example 'Acquire N - Multi-Analog Hardware Trig.vi' to accept an analog input trigger from the PFI0/TRIG1? What parameters do I give to the AI Config, AI Start and AI Read VIs? The parameter 'Trigger channel' only seem to accept channel numbers, so what channel number do I have to give to make it undestand that I want to catch the trigger using the PFIO/Trig Channel?
    Thank you.

    Hi,
    look into Help!
    AI Start needs on "analog chan and level" the string "PFI0" to use PFI0 for analog trigger input. In the example it is the control "trigger channel".
    Unfortunatly the help is not complete. "analog chan and level" is a cluster of two elements, the channel name and the level. The level is not explained in help.
    Waldemar
    Waldemar
    Using 7.1.1, 8.5.1, 8.6.1, 2009 on XP and RT
    Don't forget to give Kudos to good answers and/or questions

  • High speed sampling with analog trigger

    I am a new user of DAQ card and I need to sample the analog signal with a high speed.
    I will use a sinusoidal-like wave to trigger the sampling and set a voltage around the peak of trigger wave with rising slope. When the voltage arrived, I only sample one point from CH0 or CH1. The frequency of the trigger wave is about 5MHz and I heard the LabView only works at KHz level. Is it possible to use LABView to realize my application?
    If it's possible, would you mind telling me how to realize? Or if it's not possible, would you mind telling me what to do? My DAQ card is PXI-5112.
    Thank you very much!!!

    Hello amo71993,
    I guess in this case the solution is creating the little app programatically, save it as a VI and the use it as a function (subVI). Nevertheless I will be researching to see if there is another option and I will post it here.
    Regards.
     

  • How can i capture 6 differential analog in lines using PFI0 as a clock?

    Alright here's my setup, i've got labVIEW 8.6.1; i'm using a PXI-6259 i've got 7 diff. analog in lines and a parity line sending parallel data into the 6259. I also have a "strobe" line, which is to be used as the clock. When sending the data on the analog lines into the 6259, the strobe will go high when there is valid data, and only when there is valid data. the width of the strobe is 330u seconds with a 170u second low between each pulse. there is a total of 368 pulses. i have the strobe line wired into the 6259 on pin 11 (PFI0). The data lines go valid 15u seconds before the strobe goes active, and remains valid for another 15u seconds after the strobe goes low. I'm trying to capture one sample on the analog-in lines for each strobe, put the values into an array, and translate them into ascii characters based on the data sheet for the piece of equipment i'm emulating. My daqassistant doing the capturing is timing out, and never showing any data out. is it because i'm using a digital trigger with analog diff. inputs? any ideas?
    thanks,
    Kris

    I don't see the connection between your test vi and your actual setup.  If you have equipment sending data and the trigger, your vi only needs to configure one DAQ device.  Your test vi shows and AO and some POs.  Not sure what those are.  Look at the snippet below to see how it should be done with discrete DAQmx functions instead of an express vi.  This way you can see all of the settings.  What are you using for a clock source?  It should be on-board clock.  Make sure your rate is set correctly and your number of samples is set correctly.
    - tbob
    Inventor of the WORM Global

  • How can I set up a delayed analog trigger on PCI 6115 DAQ

    I have an S-Series PCI 6115 DAQ which I’m running with Labview. I’m using it to measure signals from an acoustic emission sensor and two force transducers. I’d like to set up a delayed analog trigger which will start acquisition on all three channels a period of time after a selected channel’s voltage exceeds a threshold.
    Currently I’m using the AI Config VI in line with the AI Start VI and AI Read VI to capture data after a analog hardware trigger occurs. A software trigger probably wouldn't work because I have to sample my data at 10MS/sec. My setup works fine for triggering without any delay or skip counts. However, if I set the delay or skip count in the additional trigger parameter field of the AI start VI, there is no effect, and the device still starts capturing data immediately after the trigger is received. What is the cause of this, and how can I get around it?
    Also, is it possible to sample the channels of a PCI-6115 DAQ at different rates? Right now, I’m sampling all my channels at 10MS/sec and throwing away data on all channels except one. However, this seems relatively slow and eventually I would like to attempt pseudo-real time control using my data.

    rpursley8 is right about needing to get the counters involved if you want a hardware timed delay in your application.
    Concerning whether or not you can sample at different rate, check this document out.
    Sampling Different Channels at Different Rates with NI-DAQmx
    Otis
    Training and Certification
    Product Support Engineer
    National Instruments

Maybe you are looking for

  • Mail address incorrect in Mail when part of a Group but correct in AB

    Is there a way to remove previous addresses that have been received in Mail? One of my frequent contacts shows an incorrectly formatted address when I create a new message. It shows the name and the email address but it does not include the first < o

  • Install earlier versions of LabVIEW over later versions?

    I have LabVIEW 8.5, 2009, and 2010 installed on an Windows XP machine.  I would like to install LabVIEW 7.1 and 8.0 on that same machine.  Is it safe to installed those without first removing the later versions? Or do I have to first uninstall the la

  • Prices change at checkout in the Skype Shop

    Hi I live in Australia, and would like to purchase a RTX DUALphone 4088 (2 Handsets) from the Skype Shop Australia. It's advertised as AUD174.99 reduced to AUD 157.49 with free delivery. However, when you go to checkout through ChatandVision, the pri

  • No data found exception when calling a new page from existing page

    hi i have a screen which has a delivery id and i am calling a new page with a different view object and a application module.I need to pass this delivery id in the main page to the view object query in the second page. i have defined the second page

  • ActiveX can't create object when VB Script called from Labview

    I have an interesting issue that I can't find a solution for. I am using the DIAdem Run Script.VI in Labview to call a script that opens an Outlook object and sends an email. When the script is called via LabView I get this error: However, when I man