NI board with 4 analog output

Hello,
I'm looking for the cheapest national instrument with this specifications:
Ethernet communication
1 channel Analog input
1 Digital input
4 channel Analog output
All I found was the Ni sbrio board but the problem that I don't need 80% for its features.
Thank you for your help

Hi,
Before recommending a particular product, it would be beneficial to understand some the requirements you need for the analog inputs, analog outputs, and digital inputs. What signals are you reading and how fast do you need to sample the signals? Also, what is the general application? Are you going to be logging data or providing control?
Answering the above questions will help us better determine the correct device for your application.
Tannerite
National Instruments

Similar Messages

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

  • What is the best way to Sync Digital Output(TTL) with Analog Output?

    I am trying to generate Analog waveform that synchronize the rising edge of a digital signal(TTL). The ttl will be used as trigger for camera. The board I have is USB-6343X. In my draft,  I used a clock as ttl so I can tune frequency easily. Could any one tell me what's the best way to accomplish such task? My draft seems working, but I hope there's more neat way. Thanks in advance for any help!
    Kind regards,
    Eric

    Hi Econg,
    You should be able to trigger your TTL output with the analog output by using the ao/StartTrigger as your trigger source on the counter task. You wouldn't have to have the extra Get Full Terminal Name.vi in your analog output task.
    Here is an example using your modified code. You will have to change the cDAQ1/ao/StartTigger to *your device*/ao/StartTrigger, but it should then trigger the counter output at the exact time when the analog output starts.

  • How to trigger a TTL output with an analog input

    Hello,
    I have an apparatus for measuring the flame speed of various hydrocarbon/air mixtures.  The chamber uses central ignition as the means for igniting the mixture.  My goal is to film the ignition process with a high speed Phantom video camera.  I control the ignition with an analog output signal from a SCC-68 DAQ.  I would like to trigger the camera with the same signal that triggers the ignition sequence.  The camera is triggered with one TTL pulse so ideally I would connect the output analog voltage signal to an input analog voltage port that would be used to trigger a counter output that generates one pulse.
    I have a sample VI that triggers a digital pulse each time the analog trigger level is met and it works for what I am trying to do but I do not understand how the two channels are connected. I also can't figure out how to make the VI end after just one pulse.  In the VI the digital counter is supposedly triggered using the /Dev1/ai/StartTrigger slot on the DAQ but nothing is connected to this slot.
    I need to first figure out how to make the output_pulses_on_sine_wave.vi terminate after a single pulse is generated. Then I can try to incorporate it into the VI that I use to control the ignition and measure the temperature and pressure once the mixture is ignited.
    John
    Attachments:
    output_pulses_on_sine_wave.vi ‏27 KB

    I am using the USB-6259, sorry for the confusion.  I would be nice if I could trigger with an analog signal to the ignition system but it is controlled with a high voltage relay that operates when 12 volts are supplied to it. It really isn't a trigger as much as powering on the high voltage relay. To control it, I have a 12 V supply line that is switched closed using a SCC-RLY module.  Could I somehow connect the 12 V supply to one of the buses and use a digital trigger to supply the 12V on command to the high voltage relay?
    Thanks for the quick response. 

  • Synchronize two boards with RTSI

    I want to synchronize two PCI-6713 boards to generate analog output signals with RTSI,but I don't know I should use "Route Signal.vi" or "RTSI Control.vi" and where I should put them in the diagram...
    Plaese help me....thanks!

    cooler wrote in message news:<[email protected]>...
    > I want to synchronize two PCI-6713 boards to generate analog output
    > signals with RTSI,but I don't know I should use "Route Signal.vi" or
    > "RTSI Control.vi" and where I should put them in the diagram...
    > Plaese help me....thanks!
    Hi I have an example of just how to do this. I have done so with 3
    boards in a chassis. I will send you those examples if you can email
    me. [email protected]

  • Which audio interface(s) for 16 to 20 analog outputs?

    Hi. I wonder if anyone can help me...
    I'm running Logic 7.2 on a black MacBook. For my inputs I am using the MOTU 8pre, as this is convenient especially when recording drums with my band... no scrambling together of pre-amps... no faff...
    The thing is... I've been given a shed load of gear (literally), including a 24 channel analog mixing desk and tons of outboard rackmounted effects units/compressors/gates...
    I would REALLY love to integrate the two systems, especially at the mixing stage, by routing my Logic tracks to the desk. Unfortunately, the MOTU 8pre only has a couple of analog outputs (+ headphone out).
    To make this a venture worth undergoing, I'm going to need a minimum of 16 analog outputs. 20 would be great if possible.
    I suppose my initial questions are:
    1. Can I daisy-chain 2 firewire audio interfaces (each with 8 analog outputs) to give me a total of 16 analog outputs?
    2. Bearing in mind I have a low budget, could anyone advise me on which units to get. I don't think I could afford any more MOTU gear, unless I find an amazingly low priced second hand item. What about Edirol or M-Audio?
    Thanks in advance.
    MS

    This is worth checking: http://www.ioneconnects.com/product.shtml
    Based on new DICE II firewire chip with JetPLL technology (should have much lower jitter than regular firewire Audio devices that are not built on DICE II).
    I believe that you can choose the configuration you need.
    The only question for me is whether they are affected by apple's firewire streaming bug. But as I've heard that in the info of 10.4.9 SDK is a statement, that core audio bugs were repaired, I hope the offset streaming problem will be finally the past...
    Man I am really considering this firewire snake, as it definitelly has many ins and outs - including 4 AES/SPDIF in and out!!!
    I am going to upgrade my studio and two of those will probably give me enough ins and outs for all my needs (musicians + outboard hardware and a summing mixer). I was also thinking about Symphony (PCI solution seems to be still more stable than firewire) and some I/O "modules" from apogee, but that is much more expensive. And I 've read only positive info about the DICE II, so maybe I will give a firewire another chance...

  • 6035E Analog Output problem

    I have a 6035E with two analog outputs ("0" and "1").  Output 0
    seems to work just fine, as do the analog inputs I've tried.  The
    problem is that output 1 does not.  It only seems to give
    -13V.  Any thoughts?  Thanks1

    Please see this thread.
    -Alan A.

  • PICe-6259 with DasyLAB 9 - How to do Analog Output

    Hi,
    I'm trying to get a small project working in DasyLAB 9.0.2 and I need some serious help.
    I'm working with a PCIe-6259 and NiDAQmx 8 is installed.  I simply want to create a program that uses a slider to adjust the analog output on 4 channels and read the slider value on a meter.  This is a fresh installation of DasyLAB.
    Here's the program that I setup and the errors that I get.
    I select:  Modules -> Input/Output -> NIDAQ -> Analog Output.
    I adjust the properties of the DAC module to include channels 0,1,2,3 and select OK.  (I don't adjust any of the other properties)
    I then select: Modules -> Control -> Slider
    I adjust the properties of the slider to include the same channels as above.
    I then select: Modules -> Display -> Analog Meter
    I adjust the properties of the meter to include the same channes.
    The meters and Analog output are wired in parallel.
    I get the following errors:
    NI-DAQmx: Error Message
    Driver: Task DA00, Version: 0.15
    Possibly Reason:
    -> The module can process the number of "values to be written".
    File: ProcessData_KONTINUIERLICH.H, Line: 39
    When I press OK I get:
    NI-DAQmx: Error Message
    Driver: Task DA00, Version: 0.15
    Possibly Reason:
    -> The driver does not use all NI-DAQmx task channel names. This is not valid, reconfigure the module to use all task channels.
    Note: A NI-DAQmx task for analog / digital / frequency output must not have more than 16 channels. If you need more than 16 channels for the output, you must use more NI-DAQmx tasks.
    File: MODUL_DA.C, Line: 2131
    Any help to point me in the right direction would be greatly appreciated.
    The next part of my program will include acquiring data from the analog channels, but I need to get the AO working first.  I've run into some issues with Analog Input as well, but I thought I should start with AO first.
    Thanks in advance!
    Chris

    Here's what I did using the NI-DAQmx simulation mode:
        - create two tasks
                Analog Output - 4 channels, 1k output rate, 100 samples to write, Continuous
                Analog Input - 4 channels, 1k input rate, 100 samples to read, Continuous
        Save them. Start up or synchronize DASYLab (Under Measurement Boards Settings - NI-DAQmx - Synchronize with... in earlier versions, it's under Hardware Setup)
        - Create Slider. Open Slider properties, click on Options, Synchronize to the AO task that you created. This step is really important - it ensures that the data rate matches what NI-DAQmx is expecting.
        - Connect Slider to NI-DAQmx AO module, configured for 4 channels.
        - Create AI module. Connect to the AI task that you created.
        Press Start. It should run. I can't verify absolute accuracy in simulation mode, but, I received no errors.
        Your first error is probably the result of the timing being wrong - the Slider defaults to the "Driver" timebase. The rest of the errors seem to be a cascade off the first.
        Note - my simulation did not work without the Analog Input. It generated no data. That may be an artifact of the simulator, but, once I put an Analog Input on the worksheet, it ran okay.
        I hope this helps.
    - cj
    Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab.

  • DAQ Assistant in subvi not updating output to DAQ board with each call...

    Hi All,
    I am calling a simple subvi that creates a user-defined number of pulses with "Square Waveform.vi."  This square wave (with the given total number of pulses) is then used as an input to a DAQ Assistant controlling an analog output signal on a NI USB-6259 DAQ board.  I am using Labview 8.5 right now.
    However, each time I call this subvi from my main program, the output I measure from the DAQ board is identical to whatever I set in the first call (i.e., if i created two pulses in the first call, I get two pulses on every call, regardless of the input I feed to the subvi).  The multiple calls to this subvi are made in sequential frames in a stacked sequence.  I believe stacked sequences are frowned upon by good labview people, right?  But putting that aside for the moment...
    The "#-of-pulses" input I give to the subvi is updated in a subvi front panel number indicator and a graph of this waveform.  Just not in the real output I measure from the board.  Why is the hardware output being asserted (with the original input value) before this new number can reach the DAQ Assistant?
    The sloppy fix to this is just to put that square wave creation code in my main program each time I need it.  This does work and fixes my problem.  However, I would like to use subvis to keep things clean.
    I am not a good Labview programmer, but have used this software for a number of projects and am stumped by this.  Any ideas?
    Thanks,
    John

    Hi John,
    I am running your code over here and seeing
    the same results.  I believe the problem is that the DAQ Assistant is
    being called inside a loop (really a sequence structure, but
    nonetheless more than once).  Sometimes it is difficult to troubleshoot
    the DAQ Assistant in cases like this--it is trying to be "smart" and
    seems to be avoiding re-configuring its parameters inside the loop. 
    This is intended to improve loop speed for when customers are
    performing continuous operations.  In this case, it is performing a
    finite generation, and the number of samples generated appears to carry
    over from one loop iteration to the other.
    It sounds
    like you have discovered one workaround for this already: putting a DAQ
    Assistant in each frame of the main VI.  Two other options that come to mind are:
    Use the lower-level DAQmx functions inside
    the sub VI.  Here you will have explicit control over when the task is
    created and cleared, and when parameters are set.  You can find
    examples of how to use the DAQmx API in the Example Finder at:
    Help >> Find Examples... >> Hardware Input and Output >> DAQmx
    Write
    a consistent amount of samples to the DAQ assistant by "zero-padding"
    your signal.  For example, instead of writing [10, 1010], try writing
    [1000, 1010].  In this case, it wouldn't need to reconfigure the number
    of samples to generate.
    One lesson to take away here is
    that the DAQ Assistant is good for basic functionality, but for more
    advanced control over the execution and configuration of your task you
    should learn to use the lower-level DAQmx functions.  In this case it
    sounds like the problem is actually a bug.  I'll file a bug report, since the DAQ
    Assistant is not checking for waveform timing changes even though your
    timing is set to Use
    Waveform Timing.
    Thank you for pointing out this odd
    behavior--out of curiosity which version of DAQmx are you using? 
    -John
    John Passiak

  • I am using an NI PCI 6024 E board device for an analog output application. Can I generate two independent waveforms, one on each analog output channel?

    I am using an NI PCI 6024 E board device for an analog output application. Can I generate two independent waveforms, one on each analog output channel? In attach I send a example of my vi to control one chanel, but i need to control both but with diferent waveforms.
    Is the vi correctly programed to this propose?

    Yes you should be able to do that. look at the signal generation examples shipped with LabView
    You can create a 2 D array, with each row representing a wave form per channel. The number of points of the wave form (per row of the 2 D array) represent the number of points in the output buffer
    The wave forms can have different amplitudes/shapes, and therefore they are independent in this sense.
    However, you need to set the update rate,which is the same for both channels. The update rate together with number of points per buffer determines the frequency of the wave forms. This means the two wave forms will have the same frequency.
    To have different frequencies, you need to have say, on wave form with one cycle per buffer, and the other waveform have 2 cycles
    per buffer. in a case like that the frequency of the second channels is twice that of the first channel, and so on
    The two wave forms are then not truly independent, they may have different amplitudtes/shapes, but related in frequency.

  • Using analog outputs in labview with

    I have recently started using the USB personal measurement device PMD1208-LS from measurement computing with labview. I am having problems with using the analog outputs in labview i keep getting error message 41 "This function can not be used with this board" The outputs are working fine when tested with the supplied software but not when using the Aout vi in labview. has anybody else had problems with this and know how to resolve them? I have the analog inputs all working fine in labview.
    Thanks

    I have used the PMD12208FS and I used this vi to use the analog outputs for it.  I obtained it from Measurment Computing ftp site.  The data value is in mV.  Hope this helps.
    Attachments:
    PMD1208FS_AOut_lv61.vi ‏17 KB

  • How to control two different processes with one DAQ output board

    Hi! I posted this in the Signal Generators forum, but I'm reposting here in case someone on this board has suggestions for a way to get around my problem programmatically (ie. within LabVIEW). Thank you for any help you can provide.
    Patrick
    I have a PXI-6722 8-channel, 13-bit analog output board, and with this I want to independently control both the temperature (thermometer excitation/heater control) and magnetic field in my experiment. Unfortunately, it appears that I cannot do both simultaneously, which is totally unacceptable for my application.
    Currently I'm using separate VI's for field and temperature control. This is the start of the problem, because in DAQmx you can't have 2 output tasks on the same card at the same time. In order to remedy this situation, I used MAX to create a global task containing all 8 13-bit analog outputs. However, it now appears that each time I do a write operation on this task (from whichever VI) I must write to all of the task channels, rather than just the channels I want to change. This would be fine for the temperature controls as they are of the type "set an output voltage value and hold it until told differently," so I could re-write the currently held values for channels that are not being changed. Magnetic field control will not work in this way, because we need to do very smooth field sweeps which require an analog waveform to be sent and sampled at a high rate (so that the steps are as small as possible). So if, for example, a thermometer's excitation voltage or a heater's power need to be changed during a field sweep (as is often necessary to maintain a constant temperature, via PID), then the sweep will be disrupted, potentially causing a dangerous magnet quench.
    Does anyone have any ideas on how I could make this work? It seems very wasteful to buy a second output board when I still have lots of free channels on the first.
    Thanks,
    Patrick

    I'd probably create a third process that just updates all output values on the card whenever necessary.
    One way is to send messages via queues from the temperature and magnetic field control routines to the third process. The third process doesn't do anything unless it gets a message from one of the two other processes. The message should contain the channel task ID to change along with the new value. Use the LabVIEW queue VI's, using a type definition to specify the message type either when you create the queue or use the variant VI's. Once it gets a message, it updates the changed channels, not modifying the others (use a shift register to store an array with the current set of output values).
    Hope this helps.
    Jason

  • 2 analog output channels with different frequencies

    Hi,
    hope that somebody can help me:
    I created two physical tasks, analog output channels.
    I should give signals (triangle signals) to a scanner. The problem ist that I need these triangle signals with two different frequencies.
    I can create the signal with each of the task, but not together. Can I solve this problem somehow?
    Ah, and of course the 2 tasks should start together...
    Thanks for your help!!
    Telly

    You didn't mention the type of device you're using, so I'll assume it's a standard MIO. A typical MIO only has one AO timing engine, so you'll have to create one task for both channels and use a single update rate for the task. You will have to make the output frequencies different by passing different data for both channels.
    For example, let's say your update rate is 1KHz. The data for channel 0 is 1000 data points of a single cycle of a triangle wave. The data for channel 1 is 1000 data point of two cycles of a triangle wave. When you run the task, you will get a 1Hz triangle wave on channel 0 and a 2Hz triangle wave on channel 1.
    Good luck,
    Joe

  • How do I configure 128 channels of DIO and 128 channels of Analog output with the availabili​ty of 3 pci slots

    I have only 3 slots of PCI or 4 slots of ISA bus, I want to configure with the minimum possible modules to attain 128 channels of DIO and 128 channels of analog output. This is inturn fed to the PCM (Pulse code Modulator). The cards will be placed in industrial PC.

    Associate Engineer-Marketing,
    Using just those 3 PCI slots you're not going to be able to get the 128 analog output channels. You will probably want to go either the MXI-3 (PCI bus extender) to a PXI chassis or E Series DAQ card to a SCXI chassis for such a high channel count system. Which analog output cards and which digital I/O cards you will want depends on your application. You will have to decide whether you will need static or dynamic analog output as well as whether you need clocked digital I/O or not. I highly recommend contacting our internal sales department at 1-800-433-3488. They are great at helping specify systems.
    Ames
    Applications Engineering
    National Instruments

  • Loop in combination with Analog output

    Hi
    I have modified the script thats translate a value in to a static analog output voltage. The value comes from another online running application. The analog output value must remain static until a new value arise. I'm using VB6 and DAQmx 8.5 on a XP computer. The DA converter is NI USB-6211. I have tried to play around with the Start/Stop and clear commands but my script still makes the program highly unstabile.
    So am I using the commands correctly?. And have I setup the write commands correctly too. Can anyone allso explain how to use the command Doevent correctly
      Dim taskHandle As Long
        Dim clockEdge As Long
        Dim sampsPerCycle As Double
        Dim desiredSampleClockRate As Double
        Dim resultingFrequency As Double
        Dim amplitude As Double
        Dim numSampsPerChannel As Long
        Dim numChannels As Long
        Dim errorCode As Long
        Dim errorString As String
        Dim sampsPerChanWritten As Long
        Dim XICVolt As Double
     '  Create the DAQmx task.
        Call DAQmxCreateTask("", taskHandle)
        '  Add an analog output channel to the task and check to see whether there is only ONE task.
        Call DAQmxCreateAOVoltageChan(taskHandle, "Dev2/ao0", "aoChannel", "-10", "10", DAQmx_Val_VoltageUnits2_Volts, "")
        Call DAQmxGetTaskNumChans(taskHandle, numChannels)
        If numChannels > 1 Then
            errorCode = -1
            errorString = "Please specify only one channel."
            Err.Raise errorCode, , errorString
        End If
    Data_is_recorded:
        If Actualcycles = expectedcycles Then
        GoTo end_script
        Else
        If Actualcycles > lastcycles Then
        DoEvents
         Call DataPoint.GetDataPoint(thenumberOfDataPoint, theXvalue, theYvalue)
            XICVolt = (theYvalue / 10000000#)
        '  Write to the desired channel(s).
        Call DAQmxWriteAnalogF64(taskHandle, 1, True, 10#, _
            DAQmx_Val_GroupByScanNumber, XICVolt, sampsPerChanWritten, ByVal 0&
        Else
         lastcycles = theWF.GetActualNumberOfCycles(sampleIndex, 0)
         End If
        GoTo Data_is_recorded
    end_script:
    End If
    call DAQmx.stopTask(Taskhandle)
    call DAQmx.clearTask(taskhandle)
    Best regards
    Peter

    David Weber wrote:
    thanks lot for all the great feedback. That's really helpful. I think I'll go for the NO_MERGE hint. A first test with this looks good.Keep in mind, only undocumented hint MATERIALIZE along with subquery factoring clause WITH (for which this hint was created) will work in real queries:
    SQL> select my_id as id
      2       , my_id as same_id
      3  from (select /*+ NO_MERGE */ xxx_test_pkg.get_id(1) as my_id from dual),emp where rownum < 6;
            ID    SAME_ID
            20         20
            21         21
            21         21
            21         21
            21         21
    SQL> select my_id as id
      2       , my_id as same_id
      3  from (select xxx_test_pkg.get_id(1) as my_id from dual where rownum=1),emp where rownum < 6;
            ID    SAME_ID
            22         22
            23         23
            23         23
            23         23
            23         23
    SQL> select my_id as id
      2       , my_id as same_id
      3  from (select /*+ MATERIALIZE */ xxx_test_pkg.get_id(1) as my_id from dual),emp where rownum < 6;
            ID    SAME_ID
            24         25
            26         27
            28         29
            30         31
            32         33
    SQL> with t as (select /*+ MATERIALIZE */ xxx_test_pkg.get_id(1) as my_id from dual)
      2  select my_id as id
      3       , my_id as same_id
      4  from t,emp where rownum < 6;
            ID    SAME_ID
            34         34
            34         34
            34         34
            34         34
            34         34
    SQL> SY.

Maybe you are looking for