DAQmx channel chain
I'm looking for in the abstract, of the user, the internal routing of counters in my data acquisition tasks. So on the front panel, I have a control for device name to which I want to add specific channels for in my code. The only way I can think to do is to concatenate the channel to it (for example, "Ctr0InternalOutput") and to mount the device name in a string, but how do I get this string to a single channel that can be used as a source for a schedule vi DAQmx? Unflatten channel doesn't seem to work like this out just a string and I need a terminal type of NOR.
See you soon
As far as I know that you can treat it as a string. Just concatenate. (Note the slash)
If you really want to be the right type (rather than let LabVIEW He has catalogued for you), you can insert a typecast.
Tags: NI Software
Similar Questions
-
How can I remove DAQmx channels
I'm a bit new to LabVIEW and many of you may see this as a very simple question, but how do I remove DAQmx channel (if it is the correct term, or is it jobs?).
I have played and seem to have a few redundant channels and wish to remove them. I have searched for a while now and can't seem to find it anywhere.
You must open DaqMX by clicking on:
Once DaxMX is open, you need open channels box:
Then, you click with the right button on the channel or the task you want to delete, then select Delete.
-
ini to physical channel DAQMX channel
I would like to save all my physical channels DAQMX as strings in an ini file. My program reads information in string and convert to the physical channel DAQMX. Is a kind ride the only way to convert a string to a type of DAQMX channel? I wanted to tell all of my information communications in an ini in case something change. Thank you!
Not cataloged. You can wire a string directly to the entrance of the channel.
-
Writing a string flattened to a Description DAQmx channel
Hi all
I have an application in which I have a main VI and VI configuration. The latter configures how the façade will also look although the way in which the data acquisition system (which is driven by the main VI) will be exploited. In the configuration VI, the user selects the channels as well as a good description of the string (which is contained in a cluster of enums, Boolean and numeric values). I am able to write the description of each string in the description property of DAQmx channel as a string (example below) and then read the string in the back and reformat it as some type of delimited string in which I understand the structure and can decode correctly using different string functions (for example the tokenize string (, string digital, etc.). I thought I'd get a little smarter on this subject and simply flatten the clusters to a string and write these binary strings in the description. However, when I read this back from the description, I get error 74 - structure of memory or data corrupted. Did anyone tried something like this before? Is there a better way to do this? What could I do it wrong? Any help is appreciated. Peace, Matt
Hi Matt,
There are a few screws LabVIEW for coding/decoding Base64: http://decibel.ni.com/content/docs/DOC-5544
I have not tried, but I expect that you can flatten to a string, convert the binary string to a string in Base64, and then define the string Base64 Descr property of the node DAQmx channel property. Data recovery would be the exact opposite.
Brad
-
Is there a programmatic access to the Calibration Wizard of DAQmx channel in LabVIEW?
Hello
I'm making my own external calibration of my SMU-4300 OR against a HP 3458 A using an amplifier to the source of several different voltage for the 4300 points. I use the channel calibration Assistant in the DAQ Assistant to my virtual channel manually set and save each point. This utility works great for me because I don't want to accidentally erase the external calibration constants and adjustments are seamless later (without having to apply one of the constants of calibration every time I have a measurement, it has simply everything for me in the background). The only problem is that manually configure each condition to calibrate is extremely slow and tedious; I want to speed up the process by creating a VI that opens/closes relay and resolve tensions that I want to calibrate.
I was looking around the Calibration DAQmx palette, but I was unable to find a screw that had the same effect as the wizard of calibration channel without changing the external calibration constants. Anyone have any suggestions to achieve this? Worst: I'll create a linear scale and apply it to my channel, but I have to find a way to merge it with the already existing scale...
Thank you
Jack Grantham
Validation engineer
Texas Instruments
Hi Jack,
I recommend you to programmatically create a custom scale to correlate your reference known to your desired reading levels. You can then apply this custom scale for all the tasks you want to apply benchmarking. This knowledge base article explains how to create a custom programmatically through our API DAQmx scale:
http://digital.NI.com/public.nsf/allkb/F7DAE47B4408A86F8625765700767FCD
Who will work for you?
-
Sample quantity sample DAQmx channel property Node substitute in LabVIEW when = 1
Problem:
LabVIEW seems to be the substitution of a value of 1 to a value of 2 for the node property DAQmx Sample Quantity.Sample per channel for a continuous acquisition mode.Information:
I have a task created in MAX (version 4.4.0f1).
When I updated To Read samples 1 the task runs successfully in MAX.
When I read the task in LabVIEW (8.5), the property node Sample Quantity.Sample per channel (i.e. the samples to read) is converted to a value of 2.
If the value is greater or equal to 2 to the MAX, then the Sample Quantity.Sample by channel in LabVIEW property node returns the correct value.I get the same problem with a real or simulated device.
Question:
Is this desired behavior?Side note:
If N samples (acquisition of buffer finish) is selected samples To Read cannot be 1 because it causes an error 200077 - must greater than or equal to 2.
But no error will occur when the task is saved as a continuous (continuous buffer acquisition). I don't know if this is related. The error generated is:
Error-200077 occurred to the DAQ Assistant
Possible reasons:
Measurements: Requested value is not supported for this property value.
Property: SampQuant.SampPerChan
You asked: 1
Valid values begin with: 2
Valid values ending with: 8589934590Shouldn't
Hi JG,.
Remember that the number of samples (one associated with DAQmx sync settings) is not relevant for continuous acquisition. To read a sample at the same time, you simply specify this in your DAQmx playback function. When you configure MAX to read an excerpt, it makes this same functionality automatically.
You will not be able to get the value of another property node as the value is converted as soon as the channel is created (the value non-sous the constraint is not stored anywhere by the driver). It should not be a need to this value in your code, if you want to read a sample to a schedule the DAQmx read simple example of function. The amount of samples by reading is not part of the task itself, but is defined when running as an input to the function read DAQmx.
You get the error message indicates that your device supports should not single-point HW timed - I would have probably asking which device you were using.
-
Best way to pass the name of the e/s DAQmx channel Veristand 2011 Custom Device?
I'm building a custom device that will run a DAQmx task on the target of RT.
I use VS2011 and alsoSimple custom device tool, which, at this point I'm not sure if it can work under VS2011...
I created the fine libraries and custom device (a PWM input called InputPWM) has added to the Explorer from the system. Running it returns the following error when I deploy:
-----------
LabVIEW: Type VI reference is not part of connector of VI.
=========================
NEITHER VeriStand: Open VI reference in Custom Devices Storage.lvlib-> pen device reference (Interface HW) .vi-> Custom Devices Storage.lvlib:Initialize Device (Interface HW) .vi OR VeriStand Engine.lvlib:Initialize Inline Custom Devices.vi-> NI VeriStand Engine.lvlib:VeriStand Machine.vi engine-> Engine.vi NI VeriStand Engine.lvlib:VeriStand-> NI VeriStand Engine.lvlib:VeriStand .vi engine Wrapper (RT)
c:\NI-rt\VeriStand\Custom Devices\InputPWM\InputPWM Engine.llb\InputPWM RT pilot VI.vi----------------------
On the console, it says that the error is 1026, LabVIEW: Refernece VI is not valid.
I suspect that a potential problem is that I used a DAQmx e/s in the Configuration.ctl and the InputPWM RT pilot VI.vi in the framework can not deal with this type. So my questions:
-What is the easiest way to pass the names of e/s to the custom device? For a quick test, I could go to hard code, but a more generic solution would also. Should be based on the address for the e/s MAX? Do I have to create the ctr under the DAQ hardware in VS?
- or said by the way, is there a way to review these screw frame to see where the questions is, as you would with LV - RT?
THX.
L.
If you use the tool of easy custom device, just put everything you need inside the cluster configuration data and these data will be in the home page of the custom (for the user to set) device and be available at runtime in the RT device custom code.
You could have them type the name of the DAQ card and have an array of names for the channels to use. You then create the task running. or something like that. You like.
-
How can I save a constant DAQMX queue (string) and back again?
Is small question a standard function call that would do this for me?
Thank you in advance for the help
Hey,.
A picture is worth more then a thousand words:
That would be the way to search for a certain device. But remember that if you have more such devices, it must be one.
You can also check if the device is simulated.
See this just as a hint. You may need to do more to ensure that always have the right device!
Christian
-
Writing to the nodes property DAQmx channel does not refresh the channel values
Hi all
I have a riddle. I created a task programmatically in LabVIEW and programmatically added several analog input channels to the task. It's easy.
I wish that my user must be able to modify the individual channels within the task. To this end, I created a set of screws that allow it to change the settings appropriate to the channel (for example, if it is a channel of thermocouple, it can change the type of thermocouple, CRC value, etc... If it is a strain gauge channel, it can change the coefficient of fish and so on). These screws all works beautifully, like the VI where they live.
The specific question that I have is that writing to the channel property nodes refreshes not communication channels. See the images below. The first image is the code that needs to define new channels of communication:
Note that immediately after setting the property nodes, I read their values back, just to see what comes out back.
The second image is an image of the public Service immediately after the execution of this VI. Note that the values read from the channel property nodes did not updated to match to the set of values, but instead kept their initial configuration values:
What I am doing wrong? I fought this for a few days now and I'm stumped.
Thanks for your time!
Diane
Hi, Diane. A week ago, I also had a problem changing the channel properties (not sure that our situtions are exactly comparable, but...). My 'solution' to want to change the appearance of the task was to just throw the original task and recreate all the elements of the task from scratch.
I've not done enough 'experiments' to work when you can and cannot change, but am now much more cautious...
Bob Schor
-
get the number of wired physical channels?
Hello
I need to create a Subvi, and in this sub - VI, it is important to know the number of physical channels connected to the entrance of the Subvi.
Is the only way to do than writing another "channel search and County" - Subvi, which examines the "physical" channels - wire? Something looking for a ': 'and',' and who treats this information then.
Or is there a better way to do it?
Or has someone already written such a Subvi, which counts the number of channels wired?
Thank you very much
Andy
If you ask to know how many channels is in a physical channel DAQmx? If so, just the physical channel to Unflatten DAQmx channel chain wire. You'll get a table. The size of table function will give you the number of channels.
-
-200428 - change a channel in a predefined task of DAQmx
I was sure that I had done this before, but maybe not. I have a Setup task in MAX spanning 3 different analog input modules on a cDAQ chasssis.
I'm trying to change the type of thermocouple on the TC channel from the installation configuration data. So, I have the task selected as a constant and feed it into a knot DAQmx task to the list of channels. I can see the list of channels very well and all channels are present, but when I try to break the chain of the thermocouple out of the table and feed it into a knot DAQmx Channel, I get an error-200428, that value must reference a valid task or valid virtual channels.
Clues?
Hey Mike,
Can please try as shown in the jpg attached you.
Christian
-
DAQmx showing not readings to multiple channels
Hello
I am trying to acquire values of temperature of 3 consecutive using a task DAQmx channel as shown in the attached photo.
I have a loop of producer-consumer for fast reading and writing samples in a file.
To specify the channels, I typed in the box connected to a terminal of "physical channel" (not shown in picture) as follows:-SC1Mod2 / ai2:4. This is to acquire a reading of analog channels 2, 3 and 4. The program must then write a file reading on channel 3.
The code works perfectly if I purchase samples of 1 channel only.
When I try to acquire multiple channels, I don't see readings on one of the task of acquiring Wired Digital indicators.
I would appreciate your input on what might be wrong with the code.
Thank you.
kumv10 wrote:
The broken wire seen in the photo is the result of adding more channels to the task of acquiring. I managed to get around this by specifying a different, but even with an intact wire data type, the program is not displayed readings since the 2 remaining channels.
Instead of use for dynamic data Type, then the channels Split, just use an array of Index to get your three values.
-
Data channel read name DAQmx without installed DAQmx
We have data files, including a header with the names of channels in the DAQmx channel name format.
Now, we want to send a Labview application to our customer by which they can open these files and just seeing the names of channels in the form of text. Can we make such an application without requiring the customer to install DAQmx. We use Labview 7.1.1 and after installing the application, it asks for nivaiu.dll, nipalu.dll nipalut.dll and so on. Change the simple arrays of strings file header gives compatibility on old data problems.
Concerning
Dan Larsson
Problem solved!
Control of channel name DAQmx can serve as a binary file read model without installing DAQmx separately. I found a Subvi calling "DAQmx unflatten string. After the removal of this call everythings working.
Sorry for all you mind!
/ Dan
-
Channel to channel physical DAQMX
Hi all
I have control of the physical DAQMX channel connected to a channel to create DAQMX (digital out). The channal control will give options for each line, for example, cDAQ1Mod4/port0/4, but I want an option with a set of lines (without having to type in it). Is it possible to put a range of line such as cDAQ1Mod4/port0 / line0:7 in option? I don't want to ask the user to have the knowledge to do so.
In addition, I won't need the user to know what the number of data acquisition and what are the module before running the test. For example, cDAQ1 is 'tester1' and module4 is "digitial 12V output ' and I want to put these option in the user interface as checkbox, and I built the value of the physical channel in the program to supply DAQMX Create Channel. How do I do that?
Use an enum on your front control and write the text you want as the descriptions for channels. On the block diagram, use the integer value of the enum to the index in an array of physical string constants DAQmx.
Richard
-
Error-200431, DAQmx create Channel .vi (I-voltage-Custom with excitement)
Where is past ".vi DAQmx Create Channel (I-voltage-Custom with excitement)?
I tried to use this VI of force measurement with an NI PXI-4472. He responds with the 200431 error... You asked: more: voltage: Custom with excitement, you can select: sound pressure, voltage: microphone,...
It seems to me to be an internal error of the VI's Version of LabView 8.6.1
Hi Suse,
Thanks for your reply.
It's the right device but the bad VI.
PXI-4472 is an excellent camera for the dynamic force measurement using Quartz sensors. I was intending to use the .vi (I-voltage-custom with excitement) to configure entry and IEPE excitement, but I got the error code. I have now managed by using the pure (I-voltage) .vi entry configuration and IEPE using the DAQmx channel property node.
However, I tried the .vi (I-voltage-Custom with excitement) with appropriate PXI-4220 simulated device, no error.
Concerning
T.Knox
Maybe you are looking for
-
No idea why my TV guide continues to lose information? Every day that I turn it on, the guide is empty, to play a channel. After playing for a second, the guide is updated for this channel only. Bit annoying.
-
on startup, I get an error of hard disc.message also says press Ctrl/Alt/Del to restart.Sometimes it works and after doing this five or six times, the computer loads windows etc.Sometimes, I also have a read error when the computer is used and the sy
-
History of intrigue more display
Hello I have a waveforn field to display the data on the data acquisition system. However, it shows only the data from the last 10 seconds or more. How I change to show, say, all the data of the last hour? I tried to use property nodes and change the
-
How to change the display setting
Separated from this thread. When you go to the monitor tab and check the drop down menu on the colours: what choices do you have? What is the model of the video card you are using and how do you know what it can display? I mean that your video card i
-
Hi all I copied a video to holiday on a Virgin DVD + RW but when I try to play on the same laptop where it was copied from, I get the message "Windows Media Player cannot play the DVD. The disk has been created in a way that does not support the play