Sample quantity sample DAQmx channel property Node substitute in LabVIEW when = 1

[cross posted from LAVA] 

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: 8589934590

Shouldn'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.

Tags: NI Hardware

Similar Questions

  • DAQ channel property node

    Hello world

    According to the statement, NOR for the verification of the Pxi4330 procedure, I need "Disable calibration shunt for the channel by using the property node DAQmx Channel, you can find custom I/O" DAQmx - data palette purchase LabVIEW. "'" ' Select the analog input"General properties" conditioning of signals ' bridge ' Shunt Cal "activate property of Shunt Cal. "but I can't select this property that I want to say there is no property such as?

    What is everyone knows what the problem is? I lost 3 hours to solve this stupid problem, still can not find it.

    When I choose the General Properties property, analog, node there are two options that are not the answer.

    Please help me on this

    Thank you

    Hi Eric,.

    You have an SMU-4330 installed on your system? There are MANY properties of different devices, and to avoid confusion of the properties that do not apply to you, DAQmx tries to hide the properties that are not applicable to all devices in your system.  If you don't have an installed SMU-4330 (or a simulation of SMU-4330), then the property you are looking for appear by default.  To find it, you have two options:

    Option 1: turn off the property node filtered by right-clicking on the channel property node, by choosing "Select filter...". "and then selecting"display all the attributes:

     

    or Option 2: install a real SMU-4330 or simulated in your system. You can install a device simulated through the program of Measurement & Automation Explorer (MAX):

  • Why can not find the option "Transfer of data and memory" in the channel property node?

    Hi all

    I'll try to find some properties such as "data transfer and memory" in my node property 'DAQmx' Channel, as below ".

    But in my Labview 8.5, I can't. I reinstalled the NOR-DAQmx driver, but it didn't work. What I get is

    I missed something? Thank you.

    Kind regards

    Bo

    Hi Bo,

    Take at look at this knowledge base article.

    3ESBHEL2 Ko AE: lack of properties in the DAQmx nodes property

    Let me know if this solves your problem.

    Concerning

    John P

    Technical sales engineer

    National Instruments

  • 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

  • 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

  • niDMM property node

    niDMM property node I use LabView 2011 on Win7. I'm working my way through the part of the "verification Procedure" of the "NI PXI-4071 calibration procedure. Step 5 of the procedure of verification of applications invoking an "accessible property niDMM node in writing to set the resistance of the NI 4071 entry" with the schema of Figure 5.» How is called this property node? Is there a control it is called from? Please provide the required steps. Thank you

    For me, the Instrument of e / s->-> NI-DMM instrument Drivers

  • LabVIEW 7.1 IVI - C Wrappers and VISA property node do not work together?

    Hello world

    I want to use the property node VISA with LabVIEW 7.1 Wrapper of two companies different well known instrument, Rodhe-Schwarz and Agilent Technologies.
    The two companies releasead their IVI - C for NI LabVIEW 7.1 drivers version NI Instrument Driver network and they are ready to be installed and used.

    I found a bug manifested that the LabVIEW 7.1 version that the bug is not present in whhen versions 8.0 LabVIEW or LabVIEW 8.6 than these IVI LabVIEW of LabVIEW 7.1 wrappers are used.

    Everyone could exeperience this bug if they have LabVIEW 7.1 installed and are trying to use the version of LabVIEW 7.1 of these wrappers which are published in NI Instrument Driver Network under the links below.

    Agilent ag81150ni IVI Driver for LabVIEW 7.1 install from here. Used in simulation that by definition simulate = 1

    http://sine.NI.com/apps/UTF8/niid_web_display.download_page?p_id_guid=55798957B1A633BDE0440003BA7CCD...

    Rodhe Schwarz rsngpt IVI Driver for LabVIEW 7.1 install from here. Used in simulation that by definition simulate = 1

    http://sine.NI.com/apps/UTF8/niid_web_display.download_page?p_id_guid=E3B19B3E91D6659CE034080020E748...

    After the installation of these two complete drivers close LabVIEW 7.1, if it was open, and then restart LabVIEW 7.1. You can see two new ready to be used as LabVIEW 7.1 IVI drivers in the LabVIEW Instrument Driver pallet wrappers in a LabVIEW 7.1 VI test.

    Open a new white VI and of the use of the Instrument Driver Palette two VI known, initialized with Options.vi and Close.vi adding them on the block diagram, connect all THMs. Accept all default settings except simulate parameter which must be defined as = 1 simulation.

    The two VI run OK mode of simulation without errors.

    Now select a property in the advanced Panel of VISA node and press this node between 'Initialize them with Options' and 'Close' VI and make all necessary in-out connections and error.

    Run these two simple screws of simulation

    1. When I run pilot Rodhe Schwarz IVI the property node going OK until the end. No error
    2. Whne I run Agilent IVI driver the property node is always out of the error Code 7.

    Question is why they behave different with regard to the property of node when it is used with the LabVIEW 7.1 envelopes? BTW, the failing VI of wrappers Agilent LabVIEW 7.1 works very well in labVIEW 8.0 and 8.6. That means that this problem is limited only the version of LabVIEW 7.1.

    I posted the same question on the set of LabVIEW and nobody chose their interest in there so I decided to post here. As this question is also linked to IVI, VISA drivers, it is possible the person of this group to get a clue about this annoying behavior.

    I've attached screenshots of the PNG files that show the difference of different behavior of VISA property between these two drivers node.

    ScreenTestShots.zip (152 kb)

    Thank you

    Sorin


  • How to use property nodes?

    Hello world

    I am a beginner of LabVIEW. So I want to know about the property in detail node. Please please someone help me to know the function of each property node...

    Thank you in advance,

    Hi Achuthaperumal

    I understand that you are a beginner of the LabVIEW. But I think it's too difficult to explain the function of each property node.
    Because there are a lot of property node in the LabVIEW.

    The main reason we use a property node is we want to change a LabVIEW action programmatically.

    When you create a LabVIEW program, you can change the behavior of "every indicator/controller etc." by changing the property.

    But in this method, you cannot change during the execution of the program.
    For example, if you want to control "the color of the Boolean indicator."

    You can use this property of node

    => Can I programmatically change the colour of the façade? http://digital.ni.com/public.nsf/allkb/0DDBDB2FE2F54A5286256918006D7BB9.

    If you want to know the function of each property node, I will recommend you to use LabVIEW HELP.

    Tepig

  • Detecting by programming error of channel type (so-called task invalid when I transmit channel in the reference entry)

    Hi all

    I am having some problems of data collection with a VI that I put together using LabVIEW 2010 and DAQmx 9.5. My DAQ hardware is an SMU-6341 in a chassis SMU-1071. I have a single VI which runs through all the tasks and controls that are channels in each task. Channels are then moved into a knot of channel property to check the type of channel. It allows me to adjust program which DAQmx read that I use to read data from the buffer.

    I get error code-200428 stating that the task I'm passing in the channel property node is not valid. It then gives me the CHANNEL name that the task is not valid. Am I assuming I can switch from channel at the entrance to a property DAQmx node reference? I know that the task and the channel of the task are configured correctly because I can see the voltage on the digital output terminal.

    Any help with this would be greatly appreciated.

    Best regards

    Ryan

    Types of channel properties are weird.

    You must connect the task in the upper left entry of the channel property node, not the channel.

    Then choose the 'Active channel' property and add another property to the node which is chanType.  Son of your channel in the first and get the chantype of the second property.

  • Property node "DAQmx system" global channel does not read changed MAX global channel of data after the 1st round

    I use the property system DAQmx node to read all the data the scale for global for thermocouple in MAX I use MAX 4.4, LV7.1.1, with a SCXI chassis in a PXI-1050 chassis. It seems to read the properties very well on first run. However, if you then change a channel property overall Max (for example a ladder or a type thermocouple factor) and it saves to the MAX, and then runs again the property node, it still read old data Max. To get it to read the changed data, it must close the VI, and then reopen it. It's painful when you recalibrate a vast set of thermocouples using MAX.

    Is it possible to force the node of system DAQmx property to reread MAX whenever it is executed, without closing his VI?

    See attachment. Run called standalone VI... PRINCIPAL. See instructions on the VI.

    Thank you

    Tim

    Hi Tim,.

    Your main VI has not been updated is because you do not clearly the task after every time you call the DAQmx property node.

    Attached is a modified version of your code that works. I just added the Task.vi clear DAQmx in the FindChanProps.vi.

    Best regards

    Faris has

  • Total number of samples per channel

    Hello

    I was wondering if you can call a function that returns the total number of samples per channel read. I try to get a precise timestamp.

    I use DAQmx ANSI C developer environment.

    According to NOR:

    Option #1:

    Try and do exactly what the driver is doing.  This will require you to do exactly what you do in the displayed example.  Call time current system immediately before calling the DAQmx Read and subtract dt * x where x is the number of samples already acquired.  It will take you to know exactly how many samples were acquired.  It can be found by calling the Total property of the samples by chain acquired immediately before the DAQmx Read.  This is to introduce some points for innaccuracy.  For example, you're time system is already innaccurate to a certain amount.  In addition, it takes some time between the system times call, calling the total number of samples acquired and calling the DAQmx reading.  If 2 samples are acquired between the call to the time system and the total number of samples acquired, you could be shifted a few samples.  For the slower clock rates, you will have more precision.

    I try to attempet to program this solution, but cannot find the total number of samples per channel acquired property. If anyone can help me, your help will be very appreciated.

    Thank you for your help,

    Vladimir

    Hi Vladimir,.

    Here is the property you are looking for (as the C reference help):

    You will be able to get accurate relative timestamps, since we know that our acquisition is based on a sample with a certain dt clock.  The value of initial time must still come from the OS.

    Best regards

    John

  • samples per channel and the number of samples per channel

    in my DAQ mode samples finished program, there are two screws: timing and read.vi DAQmx DAQmx.

    I have to set the parameter to "samples per channel" DAQmx timing.vi and 'number of samples per channel' on DAQmx read.vi... Is there a relationship between these two?

    My laser runs at 1 K Hz. I want to go to the wavelength, wait for a number of shooting lasers, read the data and move on to the next page...

    Thank you

    Lei

    In your case, the VI will acquire the lesser of either:

    The "samples per channel" that you have defined on the timing DAQmx VI

    -OR-

    The number of iterations of your for loop (N) times the 'number of samples per channel"that you have defined on the DAQmx read VI

    The "samples per Channel" VI DAQmx of timing for a finite acquisition dictates how many samples the DAQ hardware should acquire in it's onboard buffer before indicating that the acquisition is complete.  "The number of samples per Channel" on the read DAQmx VI dictates how many samples the DAQmx driver must return buffer on board the aircraft to your application.

    Let's say the "samples per channel" on the calendar DAQmx VI is set to 50.  Thus, the card will acquire 50 samples and place them in the edge of the buffer, then stops.  Suppose we have the 'number of samples per Channel"on the DAQmx reading VI the value 3 and what we call the VI in a loop For which runs 10 times.  Thus, every time the DAQmx lu VI is called, it will wait until there are at least 3 samples in the buffer, and then return these three.  We call the VI a total of 10 times, then we will answer 30 total samples.  Thus, the last 20 samples acquired the card remains in the buffer and are destroyed when the task is disabled.

    Now let's say that we increase the "number of samples per Channel" on our DAQmx Read VI at 10.  VI Read will wait until 10 or more samples are in the buffer, and then return these 10. Thus, we will be back all 50 samples map acquired by the 5th iteration of the loop For.  The 6th time we call him VI DAQmx Read it expires, because there will never be another 10 samples in the buffer, and the VI returns a warning.

    This clarifies things?

    The purpose of this behavior is to allow you to both set the total number of samples that the DAQ hardware will acquire and also control how much of these samples is returned whenever you call the DAQmx Read VI.

    Kind regards

  • sample per channel and read sample

    Hello everyone

    I'm new in LABVIEW and I have some difficulties with something.

    I put t know exactly what is the difference between the sample by channel and the sample to read. According to me, knowing that the sample by channel is the size of the buffer that is larger than the sampling frequency, but I put t know what is the sample to read.

    I ve tested with different sample per channel and read. Sometimes I get an error and sometimes know and I would like to know why. If you have examples because I understand better, it will be great.

    I really need to understand this part of my project

    Thanks for your help

    Tony GIBERT

    Hi Roro,

    As you mentioned, when the size of the buffer absorbing continuous samples, you can specify the sample by placing a value to the entry "samples per channel" on schedule vi. The entry of 'number of samples per channel' on reading vi which automatically names a control / constant with 'samples to read' specifies the number of samples you want to remove from the buffer in an appointment during playback of several samples (N). This link may provide a little more detail. I am also attaching a good example of the finder OR example that you may find useful to explore. I assume you are using the DAQmx driver put then please let me know if this isn't the case, but the same principles should apply in any event.

    This means accordingly for sampling at a given rate, you must make sure you're pulling data in large enough 'chunks' so that the buffer overflows (which may well be the cause of error that you see). On the other hand if your sampling rate is slow and your reading vi is having to wait the number of samples to read you have specified to be available, he can lift a time-out error. You can avoid this by increase your sampling rate, reduce your samples to play or increase the time-out specified read vi entry (-1 means it will wait indefinitely).

    Let me know if this helps and how you will.

    All the best.

  • I can't stop finite samples daqmx read between the two?

    Hi all

    I want to read data from 10 seconds to a trigger is received. for this im using daqmx task finished sample mode and read the data on the trigger getting. It works fine but I can't stop my vi between the two when its reading of the data. I have to wait for it to complete the reading of values, and then stop the vi.

    so I switched to continuous sampling mode that allowed me to stop the vi whenever I want.

    I just want to know is there any means or the property using which I can stop my task over daqmx read when I want?

    I guess you call DAQmx Read with extraordinary value (-1) for samples of #.  It is also the default if left thread continues.  In a finished sample task, it means to wait until the memory full buffer has been filled with samples before returning.  Once you make that call, you cannot directly finish soon.  You're stuck waiting for buffer fill or for the timeout expires (default 10 seconds).

    One way to avoid getting stuck is not to ask for samples that do not exist already.  You can query a DAQmx Read property, known as the "Samples available" or something like that and son of this result in a call to DAQmx Read.  Such a call will return immediately whatever data are currently available.  Subsequent calls will give you samples.

    -Kevin P

  • Sampling 2 channels at a frequency of 400 kHz

    I'm trying to taste 2 channels to 400 Khz using 6251 NI USB DAQ and I want to acquire the data for about 20 minutes, for which I use the continuous sampling mode. But I get buffer on stream errors. To solve this problem, I used the buffer.vi of entry so I can manually declare the size of the buffer, I put samples of 100 M, but I always get an error. If I set the memory size greater than 100 M samples buffer I get another error that says the requested memory cannot be attributed (error-50352 occurred at DAQmx start Task.vi:1).

    My first question is, how is the buffer size allocated, it is in the acquisition of data or the memory of the computer and what is the maximum? My second question is in regards to recording data to a file, no of samples per channel determines how many samples is stored in each file, if not how can I determine this? Finally, what should the value should I use for no.. samples per channel (samples for each file)? I'm new to labview so I would be really grateful of any information or suggestion. I have also attached my vi.

    Thank you

    You may find it useful to update DAQmx 9.0 for this development.  A new feature in DAQmx 9.0 will record all the data to a PDM for you.  Not to mention that the main advantage of the speed, this function will also produce a file of 1/4 size only in writing, given to bracts.  It is really easy to use this feature (compared with other options) and it can save you a lot of time.  If you install DAQmx 9.0, an example can be found in the finder example under input/output hardware > DAQmx > Analog measures > power > TDMS Streaming-... (there are 5 examples here).

Maybe you are looking for