CVI6 and DAQmx

Hello,
Some years ago I have writtenan application that acquire 11 analog
signals at every ten seconds and display it and store etc..
(simple datalogging)
Unfortunately this application has been written in CVI 6 using easyio
function nidaqAISingleScanOp ("daq::1!(0:10)", 0.0, 0.0, adcReads);
Actually we need to change the analog input board using a new one
(pci-6220) that support NIDAQmx and NOT old DAQ functionality required by easyio CVI library.
Does it exist a "wrapper"for CVI6/NiDAQmx or I have to rebuild (and
rewrite) the application using CVI7.1 ?
I have noticed that it exist for Labview:  may I use it wit some "tricks"?
Thanks in advance
Raffaele

HI  NICK:
Can you provide me example for simultaneous data acquisition using several (may be 5 or 6) Analog Input channels.
I am beginner with Lab Windows .  I haveCVI 7.x and   NiDAQmx   PCI-6220 card.
Please provide me with some more examples.
Anyways Thanks for your previous example.
Thanks
Regards
Dinesh

Similar Messages

  • LabView 8.2.1 and DAQmx Base with Linux

    Hey,
    we use LabView 8.2.1 here with Linux. Recently the new version of NI-VISA (5.0.0) and DAQmx Base (3.4) were released and work with OpenSuSE 11.2. But there is no integration of DAQmx Base into LabView 8.2.1 in the iso file.
    Is there a possibility to implement that?
    Thanks in advance,
    Alex

    Hello Alex,
    thank you for posting at the National Instruments Forum. It is not possible, to use the latest NI-DAQmx Base Driver 3.4 with LabVIEW 8.2:
    NI-DAQmx Base 3.4 supports
    - LabVIEW 2010
    - LabVIEW 2009
    - LabVIEW 8.6.x and
    - LabVIEW 8.5.x
    If you need LabVIEW 8.2.x support, you have to use NI-DAQmx Base 3.3, this one supports
    - LabVIEW 2009
    - LabVIEW 8.6.x
    - LabVIEW 8.5.x and
    - LabVIEW 8.2.x
    It is not possible to add LabVIEW 8.2.x compatibility to NI-DAQmx Base 3.4. I hope, this clarifies the version compatibility.
    Best Regards
    MarianO

  • Controlling NI2568 Switches using VB6 and DAQmx

    Can the NI-2568 (and similar) switches be controlled using VB6 and DAQmx?
    I got the impression from the "NI-DAQmx C API VIsual Basic 6.0" Help, that by using the "Digital Output API ",  it could be done very similarly to opening/closing a discrete , but no samples were included.
    I just need to close a few relays and don't know if I have to install the "NI-Switch" software or not.
    If it can be done, what would be the channel string to pass to the DAQmxCreateDOChan dll function
    (in place of "Dev<x>/Port<y>/Line<z>").  MAX shows my (simulated-don't have the hardware yet) switch device to be "PXI1Slot3" .
    Thanks,
    Jon 

    Hi Jon,
    You can also use NI-DAQmx Switch functions to control PXI-2568 rather using NI-SWITCH (NI-SWITCH installs ready-made VB examples)
    You can use functions such as
    DAQmxSwitchSetTopologyAndReset, DAQmxSwitchCloseRelays, DAQmxSwitchOpenRelays to control individual relays in PXI-2568. ANSI C Examples for DAQmx switches can be found at C:\Program Files\National Instruments\NI-DAQ\Examples\DAQmx ANSI C\Switches. This can be used to write VB 6 code. Refer to  using "C Examples to create VB 6.0 Applications" in C:\Program Files\National Instruments\NI-DAQ\Docs\cvb60daqmx.chm for help on converting C examples to VB 6.0.
    Kalyanramu Vemishetty
    Automated Test Systems Engineer
    National Instruments

  • Old VI, new LabView and DAQmx Driver

    I was given a VI that was made with LabView 2012 and DAQmx drivers 7.0. I am in LabView 2013. Would this VI still work if I installed new drivers (drivers that are compatible with LabView 2013)? Do I have to install LabView 2012 or can I just install new drivers?
    Solved!
    Go to Solution.

    DAQmx 7.0 was not compatible with LabVIEW 2012.  In fact, it was barely compatible with 8.1.  Perhaps you meant 9.7?
    Just use the new drivers and save the VI(s) in LabVIEW 2013.  You shouldn't have any issues.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Measure ai (current) and ci (puls width) with NI6023 and DAQMX

    Hi I need to measure ai (current) and ci (puls width) with NI6023 and DAQMX.
    My problem is that I can measure the two by them selves.
    But I need to measure both at the same time!
    Is it possible?
    How does the code look?
    J;-)

    Hello
    DAQmx support multitasking operations and you are therefore able to execute multiple tasks at the same time.
    I do not know what software you are writing your code in, but if you are using LabVIEW you should just place the two tasks in parrallel loops and execute them or have both VI's runninng at the same time that are performing the tasks!
    Regards
    Mohadjer

  • USB 6009 and DAQmx Base Concerns

    Hello,
    I just received a USB-6009 multifunction DAQ device along with DAQmx Base for use on Windows XP with LabWindows/CVI ver 7.1.  Both the 6009 and DAQmxBase are successfully installed however I have several questions, I hope I am missing something obvious:
    1. The Task Configuration Utility is not needed for use with LabWindows/CVI?  I believe I read this in the Getting Started Guide.
    2. There is no function panel for the DAQmxBase functions?  I even searched the installation CD and found no .fp files.  So the only way to know what functions are available with DAQmxBase is to open the NIDAQmxBase.h file and search through the function prototypes?  Then, to know what a function does it is necessary to open the C Function Reference Manual via the Windows Start button and search for the function name of interest?
    3. When creating a digital input or output channel with DAQmxBaseCreateDIChan or DOChan is it only possible to setup a "channel" as an entire port?  Is it not possible to setup a channel as a single input or output line?  Similarly, once the channel is configured is it only possible to read or write an entire port with DAQmxBaseReadDigitalU8 or WriteDigitalU8?  I was expecting something similar to the DIG_out_line function used in Traditional NI-DAQ where a board number, port number, line number and state are passed so that a signal output line can be set on or off.
    Thanks in advance for the assistance,
    - Aaron

    Aaron T. wrote:
    Hello,   I just received a USB-6009 multifunction DAQ device along with DAQmx Base for use on Windows XP with LabWindows/CVI ver 7.1.  Both the 6009 and DAQmxBase are successfully installed however I have several questions, I hope I am missing something obvious:   1. The Task Configuration Utility is not needed for use with LabWindows/CVI?  I believe I read this in the Getting Started Guide.  
    **The Task Configuration Utility is not necessary, except that there is significant functionality missing from DAQmx Base but present in the utility. That includes a lot of what DAQmx calls "proerties", and includes things like the convert rate for AI scanning.
    2. There is no function panel for the DAQmxBase functions?  I even searched the installation CD and found no .fp files.  So the only way to know what functions are available with DAQmxBase is to open the NIDAQmxBase.h file and search through the function prototypes?  Then, to know what a function does it is necessary to open the C Function Reference Manual via the Windows Start button and search for the function name of interest?  
    **I don't use CVI so I don't know anything about this. It strikes me that even if you have such a panel reading the documentation is a good idea
    3. When creating a digital input or output channel with DAQmxBaseCreateDIChan or DOChan is it only possible to setup a "channel" as an entire port?  Is it not possible to setup a channel as a single input or output line?  Similarly, once the channel is configured is it only possible to read or write an entire port with DAQmxBaseReadDigitalU8 or WriteDigitalU8?  I was expecting something similar to the DIG_out_line function used in Traditional NI-DAQ where a board number, port number, line number and state are passed so that a signal output line can be set on or off.  
    **Well, the ReadMe file says that USB-6008/9 is supported with both Line I/O and Port I/O. On the other hand, the documentation for DAQmxBaseCreateDOChan and DAQmxBaseCreateDIChan say for the lineGrouping parameter, "Always pass DAQmx_Val_ChanForAllLines." So your question is a good one! Perhaps one of the NI engineers can comment on this.
    - Aaron
    Thanks in advance for the assistance,
    John Weeks
    WaveMetrics, Inc.
    Phone (503) 620-3001
    Fax (503) 620-6754
    www.wavemetrics.com

  • Why can't I install virtual devices in NI-Max with windows 7 and DAQmx 8.7.1

    Hi all!
    I just got some new machines running Windows7 32 bit. The old ones didn't survive a fire, the DAQ devices were resqued. After I installed DAQmx 8.7.1 including NI-MAX I found out that my device (PCI-6014) wasn't displayed in the device section. The device was however displayed in the windows hardware section!!
    I also wasn't able to setup a virtual device other than some RTSI-cable. NI-MAX version is 4.1.1.
    I cannot use a newer version of DAQmx as I have to work with LabView 7.1.
    Another machine, same windows7 and same DAQmx didn't give me this problem, so what could possibly be wrong? Can't use this machine as it has no high PCI slots in it....
    Regards,
    Ronald

    I think you're right about that one, I should have upgraded every time when I got the new CD's. On the other hand, I developed some way in reusing quite a lot of my work. So I only have to update these vi's in order to get my programs running again I guess. The nice thing of it is that this would be the perfect opportunity to go through my work of the past 7 years and look what's really needed and what can be thrown in the bin.
    About the LV7.1 version: You're right. NI allows you to use them besides your new versions. I think I've got to play a little around with my virtual machines in order to get multiple versions (and multiple DAQmx versions) running aside of each other. Lucky for me is that a lot of analysis is done after the DAQ has been done!!
    Thanks,
    Bye

  • Callback Visual C++ 6.0 and DAQmx

    I'm using Visual C++ 6.0 and trying to use a callback function in DAQmx. I am using the example "VC_ContGen_IntClk". This program compiles and runs fine in .NET but in Visual C++ 6.0 I get an undeclared indentifier error.
    In my .h file for class CniDAQ I declare the function: int32 CVICALLBACK DoneCallback(TaskHandle taskHandle, int32 status, void *callbackData) ;
    and the .cpp file defines int32 CVICALLBACK CniDAQ:oneCallback(TaskHandle taskHandle, int32 status, void *callbackData)
    However in the call: DAQmxErrChk (DAQmxRegisterDoneEvent(*taskHandle,0,DoneCallback​,NULL));    ---- DoneCallback is flagged as an error as an undeclared identifier.
    Can someone please help with this?
      Thanks,

    Hello,
    A good starting point demonstrating the use of DoneCallback would be to run the following example. It shows how to use a Done event to output a finite number of voltage samples to an Analog Output Channel using an internal sample clock. This example can be found by navigating to Start»Programs»National Instruments»NI-DAQ»Examples»DAQmx ANSI C»Events»Done»Mult Volt Updates-Int Clk-Done Event. Does this error still occur?
    Regards,
    Ali M
    Applications Engineer
    National Instruments
    Message Edited by Ali M on 03-23-2010 06:24 PM

  • Uninstall LabVIEW but leave run-time engine and DAQmx

    Hoping there is an easier way to do this, basicall we are developing software on a customers computer that we buy and will eventually ship to them. However we can't ship them LabVIEW so we make an executable and just keep the run time, DAQmx and MAX. Is there anyway to do this easier than uninstalling LabVIEW and reinstalling everything else?
    Windows 7
    LV2013

    Under Windows, try going to Control Panel | Programs and Features and find National Instruments Software. You might be able to select all except the run-time, DAQmx and MAX, then select uninstall. If not, then perhaps consider just making a full installer for your LabVIEW executable solution, this will clearly install only the necessary components for your code to work (if it's LabVIEW 2013).
    Thoric (CLA, CLED, CTD and LabVIEW Champion)

  • Using a 9263 and DAQmx to write long files

    I have a 9263 in a cDAQ-9172 chassis. I have some very long waveforms (3 days worth of 250Hz sample rate signals) that I would like to play out. I have been fighting with this for some time and I run into one problem or another. I figure I should be able to loop through and send blocks of data as the buffer empties. I started with the DAQ Assistant, and used that to generate the code for continuous playback.
    The code I am trying to write alternates indefinitely between a sine and a triangle wave. I figure if I can do this, then I can easily adapt this to my main code block.
    The problem I am having is that the Write function blocks and my whole application locks up. I have the second status loop running in parallel, but it does not run while the program is is blocked in the Write function. So my front panel dies and is unresponsive to user input until the write completes and it loops back. I would like to have a graph display to display the waveform on the screen like the MAX test application, but that won't work if the program is tied up waiting for the Write function to return.
    Is there any way to do this as a non-blocking operation and get notified when the buffer is getting close to being empty? I had an application like this working with the simulated device and I was checking the "SpaceAvail" property, but this does not work the same way with the real device.
    Attached is some test code that I am working with. Any help is greatly appreciated.
    Brian Rose

    Hey Brian,
    Thank you for posting your code.  I took a look at it and I think I found a program in the NI Example Finder that will help you with your application.  You
    can find this by opening up LabVIEW and going to Help>>Find Examples...  Once the example finder opens you can go to Hardware Input and Output>>DAQmx>>Analog
    Generation>>Voltage>>Cont Gen Voltage Wfm-Int Clk-Non Regeneration.vi.  You will notice that this code is very similar to yours, but it utilizes the while
    loop differently.  The main thing is that your create channel, timing, and clear task VI’s should not be included inside the while loop.
    You mentioned that this portion of code will be going into your main program, so what exactly is the entire program doing?  The reason I am asking is because
    you said that you were running into a blocking issue on your DAQmx Write VI.  This is most likely occurring because of the large amount of data that you are
    writing, so one way to get around this would be to put the while loop containing the DAQmx write VI outside of the while loop with the rest of your program. 
    This is known as parallelism, and a nice example of this can be seen here.  Your code would be able to run side-by-side, thus allowing the rest of your
    program to run uninterrupted from your DAQmx write VI.  Please let me know if I may have misunderstood your application, or if you have any further
    questions.

  • How to sync CAN (traditional) and DAQmx input on PXI?

    At the moment I am reading analogue samples and counter values on my PXI system. The counter value is incremented by an external pulse (i. e. current time). Because the pulse is the actual time, the AI sampling has to start in sync with the first incoming flank. This sync'ing is done via the DAQmx trigger VI which is set to "start at flank" (see picture). Because I am recording the counter values, too, I can always determine the time for each AI sample.
    Is it possible to start AI and CAN signal sampling in sync with the first incoming pulse flank? As before, I want to store the counter values as well, so that I have time information for each sample. Is this sync'ing solvable with VIs or do I have to use a different CAN card with an external trigger input?
    The CAN card is of type 8464 XS.

    Hello,
    please see the links below.
    http://digital.ni.com/public.nsf/allkb/95EB3CB8E92D30FB86256F2C00672C44?OpenDocument
    http://zone.ni.com/devzone/cda/tut/p/id/4204
    Regards
    Rüdiger

  • Use virtual channel name as input to DAQmx Write? LV8 and DAQmx

    I've created a task for digital output that contains 8 named channels using the DAQmx Create Channel VI in Labview. Is it possible to use the channel name as an input to the DAQmx Write VI to reference the desired channel? I tried wiring a string with the channel name to the "task/channels in" input but I get a -200428 error that says the Value passed to the Task/Channels In control is invalid.
    The help "name to assign" input for the DAQmx Create Channel VI says
       If you use this input to provide your own names for the virtual channels, you must use the names when you refer to these channels
       in other NI-DAQmx VIs and Property Nodes
    OK, so how do you use the name assigned in other VIs?
    George

    George,
    I think that there may be some confusion here about the difference between local and global virtual channels.  First of all, please take a look at the following knowledge base:
    Physical Channels, Virtual Channels, and Tasks in NI-DAQmx
    As discussed in this KB, local global channels are created inside a task, and they only apply to that task.  In the help file for the DAQmx Write VI, the "task/channels in" description says "if you provide a list of virtual channels, NI-DAQmx creates a task automatically."  When you wire a string to this input, a new task is being created, and unless the channel name that you wire in is a global virtual channel (listed in MAX), you will get the error 200428 that you mentioned.  This is because that virtual channel that you are specifying is local to another task and is not associated with this new task. 
    One solution to this issue is to use the DAQmx Save Global Channel VI to save your local virtual channel as a global virtual channel before calling DAQmx Write.  Once this is done, you can then wire the same string constant to the "task/channels in" input of DAQmx Write or other DAQmx VI's. 
    The help text is still correct, but is only applicable in certain situations.  For example, if you create and name an analog input local virtual channel with DAQmx Create Channel, you could then use this channel name as the source input to a DAQmx Trigger VI configured for an analog edge start trigger.  You could also use that channel name as the input to the "ActiveChans" DAQmx Channel Property, which would enable you to modify the properties of that particular channel. 
    Hopefully this information is helpful to you.

  • URGENT: PXI-1033 and DAQmx problem

    I bought new laptop with Express Card slot Dell Inspiron 6400. I have PXI-1033 with integrated MXI bridge, Express Card 8360 and PXI-modules: PXI-6251, 6115, 5114 and 4071. I installed drivers 8.3 and plugged in PXI modules into PXI-1033. I first power up PXI-1033 and than power up laptop (with Express Card in it). Laptop can not start, again can not, blue window, and at last start. In MAX is listed PXI chassis with bridge and all modules, but mx is not listed and I can not use it from LabVIEW. What is the problem?

    Hi,
    To clarify, do the PXI modules show up under DAQmx devices?  What color is the Link LED on the 1033?  Do the cards all show up in Windows Device Manager correctly?  Also, are you able to power on the laptop successfully now every time, or does is have trouble booting each time you try and start it up?
    Have you inspected the MXI cable for bent pins or any visible damage?
    Thanks!
    Adam W
    Applications Engineering
    National Instruments

  • PXI-4351 and DAQmx?

    Hello,
    We are considering to buy a PXI-Chassis with an PXI-6229 for general measurement and two PXI-4351 for temperatur measurements.
    I already wrote a big library of VIs to use PCI and PXI-card undere DAQmx (almost 6 months of development).
    But I read in the specification of the PXI-4351 that this card is only supported by the traditional DAQ driver.
    Is it true, are may be the DAQmx 8.1 support the PXI-4351. If not, does anybody know if the card will be soon part of the DAQmx?
    Thanks,
    Risotto

    Risotto,
    the PXI-4351 works quite differently than a multifunction DAQ device and it comes with it's own instrument driver which is based on traditional NI-DAQ. The instrument driver was just updated to support LV 8. There are currently no plans to support NI-435x devices with NI-DAQmx
    Best regards,
    Jochen Klier
    National Instruments Germany

  • How to control a solenoid via PXI-2520 and DaqMx Switch

    I am a LabView novice with Core 1 and Core 2 training so I am familiar with the fundamentals of LV process flow however, this is the first application I am attempting to develop that is not a simulated training VI. That said, I am having trouble ironing out the necessary logic to control a 10 solenoid 2 position valve manifold. I have developed a VI that will contact and disconnect a particular relay in the style of the "Switch Controlling Individual Relay.VI" on my PXI-2520 module but these are single instance events. Ie. i set the device, name the relay, and tell the VI which action (make or break) and run the VI. What I am trying to develop is a continuously running VI where any one or multiple solenoids can be energized/de-energized using simple boolean control whereby each relay is represented by a switch on the front panel.
    It is clear that a while loop is necessary and a series of case structures or State Machine architecture is necessary but all my attempts have been fruitless. the common failure mode tends to be when following iterations of the while loop tell a switch that is already open to reopen or vise versa thereby causing an error. My thought here ist that some feedback from a former  iteration is necessary so that only "unequal" boolean values for the former iteration calls a case to connect/disconnect. What are your thoughts?
    Eventually this VI will also need to control these solenoids automatically (i think DaqMx Create scan list with software triggers will suffice) but each action willl need to be timed. For now though it is most critical that I have the capability of operating the solenoids manually and dynamically.
    Thankyou,
    DK01

    Welcome to the forums! 
    If you can, please post a snippet of code from what you've attempted so far. We can take a look at it and make some recommendations. 
    One of the lessons in Core 1 also talked about the use of the event structure. It may be a good use case for an event driven state machine that can modify the states of specific switches. 
    Nathan M.
    Applications Engineer
    National Instruments

Maybe you are looking for