inverted waveform channel values

Hello world

Anyone know how I can reverse the values of a tiara waveform channel? (practically activates the function of inverse matrix 1 d of Labview).

See you soon

Hi Saloutios,

So let's say your channel signals departure has waveform properties that define the X axis range from 0 up to 0.999 with a stage with 0.001, for a total of 1000 values.  You ask how to redefine the properties of waveform so that the x-axis instead starts to 0.999 and goes down to 0 with-0,001 step width?  If that's what you want, just redefine the properties of waveform like this:

Adjust the strings = Data.Root.ChannelGroups (1). Channels (3)
StartValue = Channel.Properties ("wf_start_offset"). Value
Increment = Channel.Properties ("wf_increment"). Value
Length = Channel.Properties ("length"). Value
EndValue = StartValue + (Length-1) * Increment
Channel.Properties ("wf_start_offset"). Value = EndValue
Channel.Properties ("wf_increment"). Value = - Increment

Brad Turpin

Tiara Product Support Engineer

National Instruments

Tags: NI Software

Similar Questions

  • Displays the absolute time of a waveform channel

    Hello

    I would like to display the absolute timestamps on the x axis of a 2D graph in the DISPLAY of the waveform channels in a PDM file. The timestamp of the first sample is stored in the wf_start_time property.

    I found this article , but I don't want to generate a weather channel because the benefit of waveforms is to avoid storing the part x of the signal in the files.

    Is there another solution since 2007?

    I use DIAdem 2011 and LV 2011.

    Thanks in advance

    Hi Yohanna,

    The only way to display the datetime values on the x-axis of the graph in SIGHT and the only standard way to do the graphics in the REPORT, is to create a DateTime String.  DIAdem in 2011 it is much easier to do, since you can use the standard ANALYSIS function "Generate digital channel", by selecting the option buttons 'values of x-part of a waveform channel' and 'Create channel time (with absolute time reference).  You can also use the standard ANALYSIS function "digital channels <==>waveform.

    Brad Turpin

    Tiara Product Support Engineer

    National Instruments

  • How to access the channel values?

    I'm new to scripting language DIAdem.  I TDMS has a group and several channels with String type all.   How to read the first 4 characters of each string values and store into the new channel?  Example of data file attached.

    I tried for the statement in the Script window

    Ch("[1]/result") = Ch("[1]/Frame")

    or

    Ch("[1]/result") = Right (Ch ("[1] / framework", 3))

    All gave me error...

    Hi NiCoder,

    It's the way you read and write individual channel values, but what to do value-by-value is much slower that make them all with a single call to ChnCalculate():

    Set Group = Data.Root.ChannelGroups (1)
    Define FrameChannel = Group.Channels ("Frame")
    Set ResultChannel = Group.Channels.Add ("Result", DataTypeString)
    iMax = FrameChannel.Size
    FOR i = 1 TO iMax
    ResultChannel (i) = Right (FrameChannel (i), 3)
    NEXT ' I

    Brad Turpin

    Tiara Product Support Engineer

    National Instruments

  • Read channel values

    Hello world

    I have a very common problem. In a SOUTH dialogue box, I load and display channels in a channel-drop-down list box. If everythings perfect so far, but I have a few text strings and I text entries whose length can vary, but I can't understand how to display the text string values in a drop-down list box, after that the corresponding text string is selected. It can be very simple, if there is a command which is sth like "read channel values. I got an idea, which is a lot more time, I can create a dynamic table and use a drop-down-list list box - but I'm in kind of a hurry. So if you have an idea about it, I'll be very grateful.

    Thanks in advance

    Hi fscommand.

    I don't know if it might be useful for you, but if you want to write or read the text values of the channels is a command called CHT.

    For example: reading MyText = CHT(3,"Group1/TextChannel")

    writing for intLoop = 1 to 10 CHT (intLoop, MyChnName (0)) = 'Value' & Next intLoop //for loop writes the values

    Greg

  • First Max value to find and add the previous channel values

    Hello, I would like to be able to parse a string to find the first maxima (inflection point) and then add channel so that all the values are equal to the maximum

    the index where the maximum was found.

    To explain better, in the attachment, the original channel's Ych and the channel in the annex is Ych_appended.

    Any help would be appreciated.

    Thank you

    The feature you're looking for better using the SCRIPT of DIAdem.

    First of all, you can find the first maximum in a channel by using the ChnPeakFind function. The document below explains how to use this:

    http://digital.NI.com/public.nsf/allkb/DD069B95FB938C4286256FC8006A09CD?OpenDocument

    The channels that you specify in the function call will contain the value x and y of the first maxima. Then, you will just need to:

    1. Copy the original using ChnCopy channel.

    2. Find the index of the value to your channel original x axis at which the peak occurs.

    3. Browse the newly copied channels, replacing the inside with peak values until you reach the index of the value found in step 2.

    I hope this helps.

  • Read analog output channel value internally

    According to this you can read the values of analog output of return without having to physically connect the wires.

    By using the technique described in the example given (DAQmx_Read_Output_Internal_Channels.vi) I'm reading a current area of OCCUPANCY on my compactDAQ cDAQ-9174 with a module of analog output current OR-9265.

    The output channel is created in MAX and my vi can write values to him without problems

    But when I try to create an analog input channel to read the output, an error occurs.

    What I am doing wrong?

    This is not supported by my hardware?

    Or is the example given in the above incorrect link?

    The example is 10 years old. Maybe, it does not work in LV2013.

    Hi Jocker,

    The link was not attached to your message, but I guess that's it: http://digital.ni.com/public.nsf/allkb/CB86B3B174763C3E86256FFD007A2511 as there the example of vi you mention.

    The error you are getting is due to the use of the channel for analog output and trying to configure the task as a task of entry. You must use _aoX_vs_aognd as the channel of the task rather than on the output channel. This compares to the ground for the analog output values.

    The NI 9265 is not on the list of the C Series modules that have internal channels:

    http://zone.NI.com/reference/en-XX/help/370466W-01/mxdevconsid/9211interchan/#GUID-E13ADE46-5CB8-491...

    So I guess that the module is not able to compare its output to ground. He would appear in the dropdown of the channel names if available.

    Pete

    Applications Engineer OR

  • 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

  • Waveform chart - values y get

    Hello

    I'm working on a group project where my team member gives me a graph of waveform as output of their under vi.  I need to use the amplitude (values of y) on the graph of waveform for my part.  I think I'm supposed to use "array index" to do this, but I'm not sure how.  Could someone maybe give an example? Thank you

    Hi Sara,.

    This is because the data type of your waveform graph is in fact a cluster, if you turn on context help (ctrl + H) and move your mouse over the wire, you will see the components of the cluster (two doubles and an array of doubles).

    You can use Ungroup to extract various components (the table is what you want). If you move your mouse over the graph of a waveform with context-sensitive help you activated, you can see what each part of it.

    The first double is x 0 (the starting x position), second double delta x, and the last part is the table of amplitudes (values of y). At the bottom of the context-sensitive Help window is a detailed help link that will lead you in aid where you can get more information on the waveforms.

  • syntax of the attributes of waveform channel name

    We build waveforms (waveform data type) of readings of OPC tag. We want to put the ChannelName attribute for the names of tags, but I don't know if maybe it's not valid for a channel name (in particular spaces and percent signs). for exaple:

    "TC_EXA_DIE11_ % OUT" or alternatively "Die 11% Out.

    should I be out white space or signs % of filtering?

    TIA

    lmd2

    Sorry to have disturbed anyone

    thing the easiest was to build it and don't check - no error

    spaces and % are both well

  • PES 10 - reading RGB channel values with any pointer to image?

    I'm used to see the line of State or in a box of suspicion adjacent to a few pointers such as the pipette tool values RGB or ARGB space flown over. I don't see something like this in PES 10. Is it available?

    Yes.  Display the information (window... window Info).  You will see a reading running of what lies under the cursor:

    Ken

  • Comparing two digital channels or waveform

    Hello

    How to compare two digital channels or the y-axis of the same lengths waveform channels and find the line that has about the same value in the channels. For example, suppose we have two digital channels X and Y which has about the same value in line 15. I need to write a script to find out in which line the canals coincide.

    Kind regards

    X.Ignatius

    Hi X.Ignatius,

    I subtract channels and use the CHNFIND function to search for string values that are zero or nearly zero.

    Greetings

    Walter

  • How do I either set channel name of a graph of cluster or get a 1 d waveform chart to start different time (t0) for each line of the waveform?

    I have a chart single 2D out a conditional of a loop indexing output such that over the rows of the table are not the same size. -Basically, they have different starting and ending points and sizes. -Not so concerned by the endpoints, because as soon as I get correctly starting points, everything shows fall in place.

    The challenge is that when I try to have the variable t0 (start time) for each line, the wave of construction vi form would always keep each line at the same starting point.

    I used the approach bundled with success (the cluster approach ensures that each waveform starts at different times according to the guidelines of my t0 defined for each line) but then I'm not able to get in the channel names I could make using the graphical approach (wave generation) waveform.

    In essence what I get here, I'm losing here.

    Because I don't want one of my mentors, Bob and Altenbach have fed up with me I have attached a vi this time

    Attached VI shows a combination of the two attempts (first with the waveform graph) and then with the graph of cluster

    1. with the first (graphical waveform), I get my channel names as you wish, but the alignment of the wave is not correct.

    2. with the second (graphical cluster), the alignment is good, but I can't do the names of channel in the chart, even if they are present in the cluster.

    I read some reviews that mentions that attributes can be displayed with waveform and data Dynamics (not clsuters) so I guess that's why.

    I saw another report indicating the start time for a waveform 1 d will always remain the same for the rest lines defined for the first line even if changed for the following lines in a loop.

    So I guess my question is: what is the way around questions like that?

    First of all, let me be the first to the congratulate and thank you for finally posting a code!  I'm not 100% certain I understand your question or your code, but I have an idea, perhaps, of what you want to do, so I wrote a little VI who made something simple that could be relevant.

    You mention waveforms of different lengths and beginning at different times.  You also want everyone to have a unique attribute (although I'm not sure what you want to do with the attribute).  So, I did the following:

    1. Generated an array of 100-sample random to represent one second of a waveform.
    2. Created 4 waveforms on this 100-sample basis.  The first waveform (channel 0) is just these 100 points.  The second, 1 channel, is the concatenation of string 0 with the base of 100 samples, or a waveform "double".  Channel 2 is 1 string concatenated with the base, and channel 3 is 2 string concatenated with the base.
    3. In order to trace the four channels that they rest 'on' the other, the waveform has the number of the channel added to it.  Channel 3 is 3 + (4 copies of the basis of 100 points), a waveform 400-point random centered around a shift of 3.
    4. All channels have dt value 0.01 (but I guess I could have varied, as well).
    5. To make the channels start at different times, I started channel N N seconds before channel 0 (by subtracting the index of the loop, I, T0).
    6. For each channel, I created an attribute called "Chan" equal to "Channel N" (where N = 0, 1, 2 or 3, as the case may be).

    This is the plot that results. Scale X is the absolute time value (no Date) using the 24-hour HH: mmS format.  You can see that the plots are 1, 2, 3 and 4 seconds of time, and are offset from each other by a second.  I used the trace attributes to change the name to the respective attribute.

    The code to do this is very simple - I almost don't need to show it, because I think it is completely described by the text above, but this is here:

    Now, it was not that much faster that some of your previous posts, when you refused to your postcode, "guess us" what you wanted (but not to not correctly guess), you tried to "push" us in the right direction (still refuses to post code), and no one seemed very happy?

    Bob Schor

  • How to assign values to specific parts of a channel with VBS?

    I need to change a continuous from one channel to a constant part, like a (30: 50) = 1 in MATLAB. It can be done with a loop, but with a very low speed. I tried for example ch (10:40:5) = 1 which does not work. And I can't think of a good keyword to search for in the help documents.

    Hi reko,

    If it's really just 30 values, then direct access to Channel.Values (i) will be quick plent.  If it's much more values, and if you have them in another channel, you can use the DataBlCopy() command.

    To find a selection of useful commands like this, go to the help system, click on the 'Content' tab, open the node 'Programming Reference', then the 'Thematic Programming Reference' node, then click on "working with data".

    Brad Turpin

    Tiara Product Support Engineer

    National Instruments.

  • "No valid source or target channels specified. Cannot run. "error when you try to convert to digital channel waveform

    I'm trying to convert a waveform channel in one digital channel and a channel of absolute time, but I get the "no valid source or target channels specified. Error cannot run. ».

    I'm trying to concatenate several files TDMS InsightCM so I can display the data in a continuous flow over time. If the first file loaded (one of the channels in the group "Signals") convert the same channel, it works fine, but when I try to do the same thing with any of the channels from the second file (one of the channels in the group "Waveforms1"), I get the error.

    Hi JEBalles,

    I was able to reproduce this behavior when I chose a digital channel as my channels to convert. In this case, it looks like you run the operation on the speed profile > Mod1-Ch0 A NL, which is a digital channel.

    Could you try to select a waveform another channel? It looks like [3] Mod1-Ch0 A NL is a waveform channel.

    Kind regards

  • How to set the minimum value of a graphic waveform window?

    I have a graphics property of waveform "minimum value", but the graph is not take the value that I gave him. He tends to zero, as well as the first two sliders that I put on the graph. The maximum value "will be" no problem, just like the second slider value. Everyone knows about this problem? Here's a screenshot...

    Is there a reason why my chart does not have what I have to say?

    Thank you

    Sometimes you may have problems if the new minimum is higher than the maximum of old.  Try to write at least again in another node in property after you set the maximum value

    Without seeing your VI and some parameters of the example, (old max and min) new max and min, it is otherwise difficult to say.

Maybe you are looking for