10-23-2007 08:59 AM
10-24-2007 01:27 PM
Evan Prothro
RF Systems Engineer | NI
10-25-2007 07:59 AM
Hi Evan,
Thanks for the info. After more discussion with the powers that be, I expect to need a PCI card of some sort to handle the incoming data and I am not so much tied to writing our own drivers as our own GUIs. So, I'm curious about the DACmx API. I understand that NI has an NI-DACmx API. Is that specific to a PCI card you sell that can handle the high speed data?
On my end (PC software) I do some data massaging (scaling for different measurement units, etc.) and my big concern is that I will not have the time to do this. Also, if I'm using a graph, the update rates on the graph will have to be such that they don't block data being added to the array for any major length of time, but I can play with that on my end to see what works best. I have not done high speed DAQ before and I'm trying to anticipate the issues it will cause on the PC side. The rest of the folks here are EE firmware people (forgive them :-), so I'm it. I have some time before I have to attack this particular beast, but I would like to get as many of my ducks in a row beforehand as I can.
Thanks again,
Judy
10-25-2007 12:45 PM
Hi Judy,
I just wanted to chime in and say a few things. The Measurement Studio
DAQ Assistant allows users to quickly create and run DAQmx applications without
doing really any coding at all. We generate the code for you automatically and
go even a step further of allowing you to customize the DAQ component that is
created. This would be the case where you may want to add functionality to your
DAQ component that leverages capabilities of your device that are not supported
by the DAQ Assistant, such as advanced timing or triggering settings. With the
DAQ Assistant, you simply configure a GUI with what types of measurements you
want to take and then you’re ready to rock 'n roll.
Now, as Evan mentioned, you can also just use the DAQmx API directly instead of
using the DAQ Assistant. Both paths provide a different set of benefits
including:
Advantages of Using the DAQ Assistant
Advantages of Using the DAQmx API
Measurement
Studio offers a variety of helpful components including user interface
controls, analysis libraries (i.e. you mentioned data massaging so this should
help), additional DAQ examples, documentation and walkthroughs, and even a
simplified network communication protocol (i.e. network variable
library).
If you are going to be doing TCP/IP communication, you could consider our VISA
driver. There is a VISA .NET API that we offer that can communicate to a variety
of resources. We do explicitly have TcpipSession and TcpipSocket classes you
can use.
As far as getting data to the graph, we offer several graph controls including
the ComplexGraph, DigitalWaveformGraph, ScatterGraph and WaveformGraph (this is
probably the graph you will use). With the scatter and waveforms graphs,
you can configure your plotting however you like. You can use those controls to
create a strip chart, scope chart or graph by configuring the axes of the graph
and using plot methods that append new data to the plot or display only the
most recent data in the plot. It sounds like you might want to chart your
data which we have methods for. When you chart data on a waveform or
scatter graph, the WaveformPlot and ScatterPlot objects append
the new data that you specify to the data contained in the plot. When you
append data that is outside the current minimum or maximum range of the XAxis
or YAxis that is associated with the plot, the plot area of the graph
scrolls to display new points.
That's just a brief summary of what's available to you.
If you have any questions, please feel free to ask.
Best Regards,
10-26-2007 09:12 AM
Hi Judy,
I was looking through my post and wanted to clarify a few statements I made
just to make sure we are all clear on Measurement Studio and DAQ integration.
So for starters, to simplify the creation of NI-DAQmx applications, Measurement
Studio provides the DAQ Assistant. The DAQ Assistant was designed to be a
starting point for you to go off of to create your own DAQmx
applications. As I mentioned earlier, the DAQ Assistant provides a nice
GUI interface for you to interactively configure your measurement tasks,
channels, scales, etc. We then generate the equivalent DAQmx code for
you. The code that is generated uses the DAQmx API. This
simply means that the code generated by the DAQ Assistant is the exact same
code that is found in the DAQmx API (i.e. you could write that code yourself
from scratch if you wanted since its just DAQmx API calls).
Anything you can do using the DAQmx API, you can also do using the DAQ
Assistant. We allow full customization of the DAQmx code generated by the DAQ
Assistant which allows you to integrate any additional DAQ functionality you
wish such as advanced timing or triggering settings. It is important to state
that you are not choosing the DAQmx API over the DAQ Assistant since the DAQ
Assistant generates DAQmx code.
To clarify what comes with what, you don't need to buy Measurement Studio to
get access to the DAQmx .NET API. That is freely distributed with our
DAQmx driver. However, you do need to purchase Measurement Studio if you
want the DAQ Assistant. There's also additional documentation, examples and
walkthroughs for DAQ programming as well.
Hope this clarifies things!
Best Regards,
10-26-2007 11:08 AM
Hi Jonathan,
Thank you for all the information. I am passing it on to the higher ups and you've been great to clarify all this for me. I really appreciate it.
Judy
10-26-2007 11:12 AM
Hi Jonathan,
One last question... What language are the DAQmx API and DAC Assistant written for? I know that .NET allows you to use components generated by various languages in your managed code and MSIL handles the integration, but I just wanted to know if these two packages are available to C# and C++ code.
Thanks,
Judy
10-26-2007 11:26 AM
10-26-2007 01:05 PM
Thanks again, Jonathan.
Judy