Generation of series in multiple channels

Hi forum, I need to ask a few questions. Any help is appreciated.

(1) I need help with the generation dynamic series in several channels. Here, we can see how the dynamic data set generated by a single channel. But I can't find anywhere, how to generate several series signals in multiple channels.

(2) what is the limit for this generation series? I think it depends on the material, but I don't know, what is the limit. My hardware is SMU-6544.

(3) it is possible to generate different signals in different channels using scripts? and to start the production in these channels at the same time? the example given in the script generation labview is unfortunately only for the generation of a channel.

Thanks in advance,

Kind regards

Yan.

Hi Yan,

Produce on several channels with multiple data is difficult without a tool to view the data, or series of each channel bitstream concatenated into a software ADE and transposed before be downloaded into memory.  To make Visual things here, I'll assume that you want to generate a pattern of 3 bits on sample of channels 0, 1 and 2 is 8 wide.  Assume the following models of the series bit for each channel:

ch 0: 0101 1010

CH 1: 0000 1111

CH 2:0100 1101

So the question now is, how do you load this in the SMU-6544(or any other HSDIO hardware)?  Of the two options, you can use Digital Waveform Editor (NEWS) to create visually and save to a file type HWS then load a DJ using the API HSDIO.  It is the easiest in my opinion.

The second way is construction examples of data based on a basic example.  I want to say is you take it all binary streams and built a 2D table so that it looks like:

01011010

00001111

01001101

An array of 3 x 8 and then transpose the table that turns into:

000

101

000

100

111

011

110

011

Here you can see we have 8 lines, each line is a sample, and in the form of U32 read in decimal, you get 0, 5, 0, 4, 7, 3, 6, 3.  That's what you can load into our niHSDIO U32 function write a waveform.  I hope you can see how this translation occurs and how it looks like in terms of load on the jury.  Each sample usually contains data for all channels, where each bit in the U32 is one of the 32 channels available on your device.  So if you want to write a '1' on Channel 5, you would load a value of 0000 0000 0000 0000 0000 0000 0010 0000 in the form of sample, where the 5th bit is 1 and all the other bits 0.  In decimal, you would write '32' value.

With regard to the limitation of the size of series, if your flow rate is slow enough you can disseminate and make an almost endless stream, but assuming that you are running at the maximum rate, your series of waveform size is limited by the size of your on-board memory.  Since each sample generation is 32-bit, which is 4 bytes for example, if a memory size of 32 MB will correspond to 8MS bitstream series max.

For any questions or comments are welcome.  Thank you.

Tags: NI Hardware

Similar Questions

  • Replace negative values in multiple channels with "0'.

    Hello

    I'm calculating and then by creating a cumulative channel, multiple channels. Negative values in these channels aren't necessary, and I need a nice way to replace each negative value in these channels with a value of '0'.

    My current code is:

    Do
    Do
    If Data.Root.ChannelGroups (2). Channels (i). Values (II)< 0="" then="" data.root.channelgroups(2).channels(i).values(ii)="0    ">
    II = ii + 1
    Loop until the second > Data.Root.ChannelGroups (2). Channels (i). Properties ("length"). Value
    II = 1
    i = i + 1
    Loop until I > Data.Root.ChannelGroups (2). Channels.Count

    It works, but I don't like. He adds a few seconds when running my script, which was almost instantly. Is there a better way to do it?

    Thank you.

    Hello Kevin,

    The fastest way to go through a channel and check the values less than or equal to 0 is through the canal's calculator. The code below takes all the channel first channel group (with the exception of the first string that is be the weather channel in my example data set) and replaces the values<0 with="" 0="" through="" the="" iif="">

    Set Group = Data.Root.ChannelGroups (1)
    iMax = Group.Channels.Count
    FOR i = 2 to iMax
    Adjust the strings = Group.Channels (i)
    Formula = "= IIF (y '.<0, 0,="">
    Call to calculate (formula, Array("y"), Array (Channel))
    NEXT ' I

    In this example we overwrite the existing values of data channel with 0, but you can also copy the channels to make sure that your raw data is available.

    The calculator of channel is extremely fast for this type of operation because it does not create a loop to go if each line separately and check the values he...

    I hope this is useful,

    Otmar

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

  • How do switch you between multiple channels to indicate which channel to acquire the data from?

    I'm trying to builld a VI where I can have an option to enable or DISABLE multiple channels depending on the modules plugged into the chassis and then acquires the data of the channels which are turned on and where other acquisition parameters do not change. Is there any specific/switch where can I do this? Please answer as soon as possible. Its quite urgent. Thank you

    You use DAQmx?  To change the assignment of the data acquisition channels, you must close the currently open session and then create a new session with the new channel definition.  So the order of execution:

    Create task or virtual channel - read - clear task of triggering and synchronization of the configuration - set new channel list and to create a task - read - clear task, etc...

  • Dedicated for each channel from multiple channels in a single task task disadvantage

    Hello

    My current acquisition software (C + c++ / GCC) encapsulates the methods rather clumsy niDAQmx C to interface with the data acquisition equipment in a class that represents a task of acquisition. This way I can create several instances, for example counter input, analog input, analog output, their terminals and the class supports all work low level as ensuring input analog fake internal is started if there are only counter entries such as the sample clock starts, or configure reminders N-sample, etc.

    It seems to work very well, and also the time seems to be good, because first of all the tasks on multiple instances of my wrapper. For triggered early, that I use

    DAQmxCfgDigEdgeStartTrig(mTask,mTriggerTerminal.toAscii().constData(),DAQmx_Val_Rising)

    in-house.

    Now my real question: what is the advantage of multiple channels, when everything seems to work fine with multiple tasks and only one channel per task? I don't see the disadvantage, it would first classify necessary acquisitions in types (I, ao,...) because several strings in a single task must be of the same type. With my approach I need not care because each channel still gets its own task.

    I don't know I'm missing something here. Maybe someone can explain it to me, maybe some limitation of multi-tasking, I have not yet read.

    Hey!

    Unless you specified for managing the it (simultaneous sampling) or modular instruments and hardware devices (see link )

    You cannot perform two tasks at the same time that access to the analog inputs, for example, because the

    ADC is a shared resource that is connected to a multiplexer, and that only one task can work in it at a time given. (see here )

    Similar restrictions often apply to other types of operations.

    I'm not aware of any performance issues, perhaps a little more memory could be used.

    So as long as your hardware supports what you are doing, you should be ok, I think,

    and it is only a question of clarity and intelligibility, ease of use and structure.

    As you use classes, I'm sure you've heard about encapsulation - so it is a

    question of how you want to design your application.

    In addition, when you work in LabVIEW, tasks feel more natural to the principle of data flow, because you have a thread for your data acquisition,

    and it works very well with our modes of standard design.

    So, if it is better for you (and works with the hardware), you can give all the channels its own task.

    Hopefully this might clarify some things,

    Kind regards

    Rome

    OR Germany

  • filter multiple channels

    Hello, I have another problem here, just started to learn the filtering and decided to practice on the job making, im if you have this one question: I have two signals on channels of entry of two pressure sensors that come with high noise. I tried to split the signals, filter, and then merge again to send to waveform, but it does not somehow, and I thought that if there was a specific filter for multiple channels, I read that some TREES can divide signals itself and merge them automatically, but I couldn't find one. suggestions for beginners? Thanks in advance

    PS by the way, managed to filter one of the signals manually split and for some reason, the waveform to the display of the data of pressure with sound sensor stops working after apprx 3 sec, it kind of drags a bit and then goes black blank, so any suggestions on this point, would much appreciate

    PPS two graphics of waveform showing the initial data of the sensors go blank after a while at the same time black

    Hello Pomplamoose,

    I forgot to mention something: If you set playback VI to N samples then wire a constant for the number of samples per input channel. A good way would be to read in samples of 1000 per iteration.

    Part Fliltering:

    First of all, if you want to filter the high sounds you use Lowpass Fliter.

    Attached you will find your VI with 2 ways how you can filter your signals.

    (1) easy solution with express filter VI.

    (2) VI of Butterworth filter, the way in which you the tried.

    Some explanations to 2):

    If you use the butterworth VI as a low pass/high pass filter filter, it ignores the entrance of high cut-off frequency. The entry, you should use is the lowcutoff FREQ.

    In VI I provide you with there is no synchronization of the signal information once it is filtered, because you only use data of Y of the type of waveform. If you have calendar information in your signal you could do that with the construction of a waveform type after you filtered the data Y.

    Therefore, you have no synchronization of the signal you need to resize the chart you can see the filtered together signal.

    To merge the signals after you their filtered, you have 2 ways:

    (1) build an array of filters.

    (2) use the signals of fusion VI.

    If you need help just ask, otherwise mark as resolved.

    Kind regards

    Markus Mayr

  • Select multiple channels for a single task - control and shift keys do not work

    Hello

    Following the advice of several other positions, I try to choose several physical channels in the drop-down list so that I can then use the function "unflatten channel channel" later. It seems that if I hold this key is pressed or cntrl, I should be able to select multiple channels in the list, however, this does not work for me. I tried to go in the "navigation key" property for the control channel to task, but there not all listed associations. Someone else has encountered this and found a solution?  I previously around that by declaring several channels by a colon (for example, ai1:3), but it does not work for the unflatten function.

    Thank you

    Claire.

    If I understand correctly, I think that you need to do is use a task property DAQmx. Try to use the channels property to get an array of strings.

  • How two generations different wafeforms on ao channels USB-6353

    I'm use DAQmx driver from a C++ code to control a device USB-6353. It is possible the same task to generate a sinwave on Dev1/ao0 and a Triangle on ao1/Dev1 waveform?

    Thanks in advance

    Yes you can, simply create a task generation to the MAX with two channels, set this task as in DAQmx Timing input and then create an array with 2 elements, one for each waveform.

    I send you an example where you just change the enter task and the table. You need an array containing two elements, one for each waveform.

    Of course, you will have the same frequency of sampling for two generations!

    I hope that helps!

  • generation of functions to create channels of AO

    I'm trying out a sinusoidal signal through a USB-6211 using this task Create Channel. I can't find a single example of using this function once the task has been created. All the 17 examples provided by OR use the adjustment of the tension of the AO create and must use an external function generator. Examples exist on how to use this thing? List of specifications of USB - 6211 BTW ' AO waveform modes:

    "Non-periodic waveform.

    "Periodic regeneration mode waveform of FIFO aboard"

    'Regeneration of periodic signals of buffer host, including the dynamic update'

    I don't know what the previous alternatives that seem to indicate that it is capable of producing waveforms, unlike other queries that came during my search for previous question.

    Hi walter donovan,.

    Only two devices support .vi DAQmx Create Channel (AO-FuncGen): NI ELVIS II and NI ELVIS II +, which have a function dedicated to the hardware level generator. You cannot use the channel type of the generation of AO functions with any other device. Sorry for the confusion.

    Brad

  • Can I synchronize compactDAQ and cards for the generation M Series DAQ waveform continues non-regenerating in RT

    Hello

    I use a M Series DAQ card (6229) multichannel and multipoint make reading and writing of waveforms, all synced to a clock generated on the 6229.  Now I need to extend that to a "remote" (10 m) location and I was planning to use the Ethernet (9188 or 9184) CompactDAQ chassis or maybe 9144 Ethercat slave.  Before I have buy and learn the hard way, I thought I would ask some advice:

    My questions are:

    (1) using the DAQmx can I access the IO on 9184 or transparent 9144 using a multichannel multipoint DAQmx task as I do for the PCI 6299 card?

    (2) are all of these chassis supported if I use RT on the host?

    (3) is the best way to synchronize and trigger the remote system to the host using a digital line between the 6229 plug-in and the chassis from a distance, and if so, how can I connect it to the chassis and set it as a sample clock?

    Any help would be appreciated.

    Hi AnthonV-

    You make perfect sense.  And, I am pleased to report that you can program your analog output task CompactDAQ to use a clock timed by material, like your M Series device.  In fact, it is possible (and perhaps even likely) that the same code of OR-DAQmx you use for M-series can be used directly on CompactDAQ also long that the AO, relaxation and sources of timing and similar channels can be updated to point to your CompactDAQ chassis.

    As I've mentioned before, please note that only the CompactDAQ USB chassis (except the cDAQ-9172) are compatible with the PharLap LabVIEW RT objectives.  I don't know if this will meet your needs for a > extension of 10 m from the host system.

  • Agilent 548xx of multiple channels

    I downloaded the driver off of or site and I am able to set up scaling and relaxation and playing channel. Problem is that my client test requires sometimes read 2 and sometimes 3 channels of reading also. The pallet under configuration has a VI to set the mode to channel 2 or 4 channels, but I can't get this to work. Tried to change the order that I configure things in, not help. Anyone using a former stretch of Agilent and multiple playback channels or know an example in this sense?
    Thank you
    lmd2

    Thank you Rob, Yes, I use a 54825A which is supported by this driver, but set up several channels is only valid for the 54845A. Find the work around Similarly if subPalette is a function called hp548xx Actn on Off.vi in State Action
    I used this to force the three channels to be activated and could then configure them and retrieve the waveforms on the three channels.
    Thanks for the reply, weird that one of the functions is limited to one model while the rest of the functions are valid for the whole family, but at least there is a simple workaround solution.
    Thanks again
    lmd2

  • How to read multiple channels based on the external clock

    Hello

    Normal 0 false false false MicrosoftInternetExplorer4 / * Style Definitions * / table. MsoNormalTable {mso-style-name: "Table Normal" "; mso-knew-rowband-size: 0; mso-knew-colband-size: 0; mso-style - noshow:yes; mso-style-parent:" ";" mso-padding-alt: 0 to 5.4pt 0 to 5.4pt; mso-para-margin: 0; mso-para-margin-bottom: .0001pt; mso-pagination: widow-orphan; do-size: 10.0pt; do-family: "Times New Roman"; mso-ansi-language: #0400; mso-fareast-language: #0400; mso-bidi-language: #0400 ;} "}

    I use 6254 multifunction for playback of tension with VC ++ 6 as the development tool.

    Based on the documentation NOR I created tasks like this.

    DAQmxCreateTask (_T ("Voltagetask"), & taskHandle);

    DAQmxCreateAIVoltageChan(taskHandle,sChannels,,DAQmx_Val_NRSE,0,10,DAQmx_Val_Volts,);

    DAQmxCfgDigEdgeStartTrig (taskHandle, "PFI2", DAQmx_Val_Rising);

    DAQmxCfgSampClkTiming(taskHandle,"PFI2",303000,DAQmx_Val_Falling,DAQmx_Val_FiniteSamps,nSamples);

    DAQmxStartTask (taskHandle);

    After the generation of clock finished thanks to the DAQmxReadAnalogF64 function, I tried to read samples of each channel.

    DAQmxReadAnalogF64 (taskHandle, DAQmx_Val_Auto, 10, DAQmx_Val_GroupByScanNumber, read, m_nStates & sampsPerChanRead, NULL);

    Total number of samples (nSamples) available in the buffer when the task is created with a single channel and several channels are still to come as even. In several modes of channel returns total sample by channel, which is equal to the total number of samples divided by the number of channels at once.

    For example, if a total number of clock 8000

    With single channel, it reads all the 8000 samples (m_nStates = 8000, sampsPerChanRead = 8000)

    When two tracks he read 4000 samples per channel and so on. (m_nStates = 8000, sampsPerChanRead = 4000)

    If any body know, on every clock how to take samples of all of the configured channels.

    Thanks in advance,

    Renjith.

    Renjith,

    Please note that the behavior, I explained is in line with the provisions should only if you use your clock as I convert clock. You can find information about the different types of synchronization of the analog inputs using NOR-DAQmx; the element to search for is "clocks".

    Since you do not set the clock to convert MY (should be DAQmxSetAIConvSrc()), the fact that I mentioned above is only informative for you, but does not apply to your question.  Sorry for responding too quickly without looking in your code between quotes...

    In order to answer your question, we take a look at the approach to programming DAQmx:

    If you configure your task to be "finished", the task will stop running if the number of samples per channel is acquired. In the case of an external clock (not configured as I convert clock), served it in the sampling interval. The sample clock will automatically receive a sample for all channels with a single clock pulse. From this point of view, the installation program you have in your program seems correct.

    If you do not get the number of samples that await, the fault must be somewhere in your playback function. Do you get any error messages?

    DAQmxReadAnalogF64 (taskHandle, DAQmx_Val_Auto, 10, DAQmx_Val_GroupByScanNumber, read, m_nStates & sampsPerChanRead, NULL)

    If you set m_nStates set to 8000, it's here. You say the Read function to retrieve 8000 samples. None. So if you have two channels, DAQmx acquires 2 x 8000 samples, but read you only 8000 samples... Please change m_nStates to

    m_nStates = #channels x #samples by channel

    This should solve your problem.

    hope this helps,

    Norbert

  • HP printer 2640 series: fax - multiple Pages

    Dear Sir.

    I'm going to 2640 HP printer series with installation of fax. I wish to send multiple pages through a fax.  Please intimate how that's possible.

    I look forward to your return soon.

    Thanks & best regards,

    Devinder Kumar,

    E-mail: [personal information deleted]

    Hi @Jindi,

    Welcome to the HP Forums!

    I noticed your post you are trying to send multiple pages using the fax, with your printer HP Deskjet 2640. I'm happy to help you!

    Please, try the steps in this guide, sending a fax, in the section send a fax from the ADF.

    If you are unable to reach a resolution, please click on accept solution. If you appreciate my help, please click on the thumbs up icon. The two icons are below this post.

    Hope this guide helps!

  • First Audio interpretation is a track with multiple channels.

    We have 4 audio channels, sometimes 5 or 6 channels (component of integrated audio system, LAV, ramps, etc.). All these channels are in a wav file.

    I want that first pro to interpret these data so that it uses only ONE piece on the timeline, with all the channels that have been heard in this track.

    I watched this tutorial, thinking that it would:

    http://TV.Adobe.com/watch/short-and-suite/mapping-audio-channels-in-premier...

    However, for some reason I can't find an option to do what I want. Did I miss something in the window change Audio channels? I can set the number of tracks to 1, however, it does not allow several channels...

    Now, if this IS possible... Can I still change each channel individually in first?

    I appreciate your response and your knowledge.

    Thank you.


    Sorry, I couldn't find a post edit...

    But this post saved my life, for all who have had the same question!

    Dealing with multiple audio channels in a track: Adobe Premiere Pro

  • Continuous sampling PlotStripChart DAQmx and multiple channels

    I modified the sample code sychAI DAQmx - AO.cws slightly to provide more output wavforms. I can read at the same time on a single channel without problem. Then when I try two channels I read in an array of N (N > have a lot of examples of PlotStripChart 2, N = 2 with 2 tracks so it updates a point at a time...) I don't want that.)  samples. 0 to N - 1/2 is what AO1 (output channel 1) written on, and N/2 to N - 1, that's what written AO2. Now, if I put the number of tracks 2 and try to draw on a stripchart I get the range 0 to N - 1 on both routes.

    How to draw a picture of say 10000 samples on 2 tracks with table grouped by channel?

    Thank you

    I changed my DAQmxReadF64 to the group by number of Scan instead of channel and set skipcount = 0 and staringIndex = 0 and which has worked exactly as I wanted... but according to documentation it should not work.

Maybe you are looking for

  • Turn on data connection

    Hi, I think I have disabled the data connection on my DEXT somehow, since suddenly I didn't have access to anything about data (and the 3 G symbol does not appear on the top most). How can I turn it on? Thank you Paulo Matos

  • A few days ago I installed some updates and since then, Norton does not work. It shows a red exclamation point.

    Original title: norton malfunction A few days ago I installed some updates and since then, Norton does not work. It shows a red exclamation point.Help, please.

  • Windows Mail Security Popup

    Suddenly, I get a Windows Security popup asking username and password everytime I try to send or receive e-mail in Windows Mail.  This information is in the account profile, the block remember password is checked, and there has never been a problem b

  • Download several files

    I have looked for and found info on downloading files of large files (download juggler), only zipped/compressed and adding files and resources directly to a project.  My question is on the additional resources download separately. For example, once c

  • Using Smartphones blackBerry 8300

    It's what my screen has a small balck with number 1 to the left of this one.  I have no messages in any folder or saved e-mails or recorded telephone messages too weak to describe what it is, how can I get rid of it