Channel Syntax in ChnDel vs. ChnAlloc in DIAdem 9.1 SP2c

Hi,
I just updated my DIAdem 9.1 to SP2c and found some inconveniences in the change of the syntax of ChnAlloc. Since SP2b you have to give just the name without the "Group/" part. But ChnDel still needs this! This is pretty ugly on working in loops. I have a script which runs over a dozen groups and creates/modifies some channels (about half a dozen source channels and a dozen result channels). To be on the save side I delete the channels before allocation (if I rerun a script I don't want to get old results). Using "On Error Resume Next" this is no problem if the channel doesn't exist, but not inlcuding "Group/" in ChnDel will result in deletion of the channel with this name in a inactive group!
So with the new syntax for ChnAlloc I have to use two different channel name strings for deletion and allocation. This isn't nice! I'd rather prefer usage of "Group/Channel" anyway as this is clearer. And else ChnDel("Channelname") should just act on the current group and not delete a channel with this name in another group!
It took me quite a while to figure out why my script didn't work as expected (and I updated while writing this script, so it worked first).
So long,
    Carsten

Hi all,
I will try to explain the difference:
ChnDel requires the address of the channel which should be deleted. You can use one of the following possible channel address terms:
"Group_Index/Channel_Index"  
Address a channel via specific group index and specific channel index (since DIAdem 9.0)
"Group_Name/Channel_Index"
Address a channel via specific group name and specific channel index (since DIAdem 9.0)
"Group_Index/Channel_Name"
Address a channel via specific group index and specific channel name (since DIAdem 9.0)
"Group_Name/Channel_Name"
Address a channel via specific group name and specific channel name (since DIAdem 9.0)
"/Channel_Name"
Address a channel via Defaultgroup and specific channel name (since DIAdem 9.1)
"Channel_Name"
Address a channel via specific channel index (since DIAdem 1.0) DIAdem is looking for the first channel with the name "Channel_Name" in order of the channel numbers. This is necessary to be compatible to older DIAdem scripts.
"Channel_Number
Address a channel specific channel number (since DIAdem 1.0) DIAdem is using the channel numbers. This is necessary to be compatible to older DIAdem scripts.
Different to that is the command ChnAlloc. The first parameter is the Channel name. You can make a suggestion for this Channel name and DIAdem checks whether this name is OK (necessary because of unique channel names in a channel group, if the name is not OK DIAdem fits the name automatically).
In DIAdem 9.1 the command ChnAlloc was overdetermined. You could specify the target channel group together with the channel name suggestion and additional to that with the 6th parameter. That was a bug which was fixed with the service pack.
To work more easily with the generated channels we added a return value to the command ChnAlloc for DIAdem 10. This return value is an array with all generated channels. The channel name syntax depends on the current channel name address syntax which is by default "Group Index/Channel name".
I hope this clarifies the problem.
Greetings
Walter

Similar Messages

  • Diadem V9.1 SP2c - Dataplugin VBOX "*.vob" File - "Racelogic_VBO.uri" - installer - NI-USI.msi

    Hi,
    I tried to install the "Racelogic_VBO.uri" Dataplugin in Diadem V9.1/SP2c! During installation there was a message  that "NI-USI.msi" was not found.
    In the description there was Diadem V10.0 mentioned as supported Software!?
    I've installed "usiUFF58.exe" bevore, but it doesn't work till now!
    My OS = WIN XP SP2
    Where can I download NI-USI.msi (1.2.0)?
    Will this dataplugin also work with V9.1 ?
    Can anyone help me?
    Thanks a lot!

    Hi gunter70,
    The Racelogic_VBO DataPlugin says at the download page that it expects DIAdem 10.0 or later, and the UFF58 DataPlugin says at its download page that it expects DIAdem 10.1.  Generally the DataPlugins are posted on the web in the lowest possible DataPlugin version so that the greatest number of DIAdem and LabVIEW installations will be able to use them.  Sometimes the DataPlugin makes use of a feature that was added between DIAdem 9.1 and 10.0 or between 10.0 and 10.1, etc.  In this case we have no choice but to post the DataPlugin in a version that will be incompatible with some DIAdem and LabVIEW installations out there.
    NI-USI is the software layer that a DataPlugin "plus into", and it ships with DIAdem, LabVIEW, and CVI (these are NI software products).  When we ship a new version of DIAdem, we ship a new version of USI.  Unlike DIAdem and LabVIEW, where you can have multiple versions installed at the same time on the same computer, NI-USI can only exist in one version on a given computer.  My recommendation to you is to go to www.ni.com/diadem and download the DIAdem 10.1 evaluation version.  You can try out the new features of DIAdem 10.1 if you like (the DataFinder is really cool), but the main reason for installing this is that you will then get version 1.4 of NI-USI.  This latest version of NI-USI will automatically replace your current 1.2 version.  Then even after you uninstall DIAdem 10.1, you will still have NI-USI 1.4, which has been tested extensively with DIAdem 9.1.  This should enable you to run both of the DataPlugins you mentioned in your DIAdem 9.1.
    Regards,
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Diadem V9.1 SP2c - DAT Files parameter settings change during work

    Hello,
    we use Diadem V9.1 SP2c in our company. There are a lot of colleagues using this software.
    We use also parallel Diadem V6 / V8.
    If we store Data (.DAT format)  with V9 (Settings: ANSI, REAL32,..) the settings of the parameters change during the work with V9!!!
    Originally I made a startscript  setting up all these parameters in the right way.
    What can I do, do avoid these changes in V9 during work? Older Versions can't open this data generated with V9 e.g. 'UNICODE' settings!
    Thanks!

    Hi again,
    I am a little confused about the fact, that Diadem worked withe the wanted settings for a while and than changes the settings by itself somehow.
    We dont know of any problem, where Diadem changes settings "by itself".
    A possible reason for the problem might be a failure in the script.
    If you change the settings without running the startscript (just via the Diadem Menu), does the settings change back after a while, too?
    Regards,
    Stefan Henke
    NIG

  • Creating a time channel in the data portal and filling it with data - Is there a more efficient way than this?

    I currently have a requirement to create a time channel in the data portal and subsequently fill it with data. I've shown below how I am currently doing it:
    Time_Ch = ChnAlloc("Time channel", 271214           , 1      ,           , "Time"         ,1                  ,1)              'Allocate time channel
    For intLoop = 1 to 271214
      ChD(intLoop,Time_Ch(0)) = CurrDateTimeReal          'Create time value
    Next
    I understand that the function to create and allocate memory for the time channel is extremely quick. However the time to store data in the channel afterwards is going to be highly dependent on the length I have assigned to the Time_Ch. In my application the length of Time_Ch is variable but could easily be in the order of 271214 or higher. Under such circumstances the time taken to fill Time_Ch is quite considerable. I am wondering whether this is the most appropriate way of doing things or whether there is a more efficient way of creating a time channel and filling it.
    Thanks very much for any help.
    Regards
    Matthew

    Hi Matthew,
    You are correct that there is a more efficient way to do this.  I'm a little confused about your "CurrDateTimeReal" assignment-- is this a constant?  Most people want a Time channel that counts up linearly in seconds or fractions of a second over the duration of the measurement.  But that looks like you would assign the same time value to all the rows of the new Time channel.
    If you want to create a "normal" Time channel that increases at a constant rate, you can use the ChnGenTime() function:
    ReturnValue = ChnGenTime(TimeChannel, GenTimeUnit, GenTimeXBeg, GenTimeXEnd, GenTimeStep, GenTimeMode, GenTimeNo)
    If you really do want a Time channel filled with all the same values, you can use the ChnLinGen() function and simply set the GenXBegin and GenXEnd parameters to be the same value:
    ReturnValue = ChnLinGen(TimeChannel, GenXBegin, GenXEnd, XNo, [GenXUnitPreset])
     In both cases you can use the Time channel you've already created (which as you say executes quickly) and point the output of these functions to that Time channel by using the Group/Channel syntax of the Time channel you created for the first TimeChannel parameter in either of the above functions.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Can we import a timestamp column in DIAdem

    I have a 2 channels with time information - one in string format and the other in timestamp format.  It seems that when I try to open my TDM file, DIAdem gets stuck.  I'm sure that its because I can't have string or timestamp information in a TDM file.  If that is the case then how do I import my time?  Thanks.
    --cj

    Hi cmiranda,
    Actually, you can have both string and date/time channels in a TDM file and in DIAdem.  So, I'm guessing the way you're writing your TDM file is suspect if DIAdem is hanging trying to import it.  What happens when you try to load that TDM file back into LabVIEW?
    The one goofy thing about this with LabVIEW 7.x and DIAdem 9.x is that LabVIEW saves the date/time values as the time in Greenwich, England (GMT), whereas DIAdem expects time to be saved as the local time.  So you either have to add on the number of seconds of time shift you have with GMT in LabVIEW prior to saving, or you have to add on those seconds after you've loaded the date/time channels into DIAdem.
    I'm including below an example of how to do the former-- save date/time channels in LabVIEW which can be read back perfectly in DIAdem.  Note, though, that this means these same value read back into LabVIEW will be interpreted incorrectly, so you have to make a fundamental choice to make DIAdem or LabVIEW happy and run a quick addition/subtraction in the other application.  We are indeed working to make this less irksome.
    Feel free to send in your VI that is creating the TDM file,
    Brad Turpin
    DIAdem Product Support Engineer,
    National Instruments
    Attachments:
    Save DIAdem DateTime.llb ‏232 KB

  • Importing multiple excel sheets into DIAdem

    Hello,
    I have an Excel file with multiple sheets. I am trying to import data from cells on each sheet into DIAdem. I am capable of importing anything I want so far using a VBS Script, but only from one sheet at a time. In order to import from another sheet, I have to select that sheet on Excel, save the file and close it. Then the next time the file is accessed by DIAdem, it will open on the sheet that was last saved on.
    Is there a way I can create a VBS file that would check if there are any other sheets on the same file, move to a different sheet and import data from it? I am thinking some kind of IF statement that would realize when the last row from a sheet was imported, and then move on to the next sheet.
    Any ideas/comments/suggestions will be greatly appreciated!
    Thanks, Andy

    Hi arkangel,
    The GroupDefaultSet() command changes the default group, but that only affects ADDITIONS to the Data Portal after that point, such as new FormulaCalculation channels, excerpted section channels from VIEW, new ANALYSIS channels from an FFT calculation, etc.
    If you want to reference channels of the same name from multiple groups, and you have DIAdem 9.x, you can use the [GroupName]/[ChannelName] adressing scheme to query off the "Time" channel from multiple groups. If you have DIAdem 9.1, then you can also use the [GroupIndex]/[ChannelName], [GroupName]/[ChannelIndex], or {GroupIndex]/[ChannelIndex] adressing options. For example:
    For i = 1 TO GroupCount
    ChNum = CNo("[" & i & "]/Time")
    IF ChNum > 0 THEN Msg = Msg & "Group " & i & " --> " & ChnLength(ChNum) & vbCRLF
    NEXT
    MsgBox Msg
    For DIAdem 8.x you will need to use the CNo() function's optional second parameter (ChannelNoStart) in order to ensure that you start at the next channel AFTER the one you just found. Channel numbers was all there was in DIAdem 8.x.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Diadem: Save as time vector as "DDC_Timestamp"

    Hello,
    I am writing measurement data into .tdms files using LV 2009 SP1. Time is recorded in timestamp format into a seperate channel. Due to an error in group and channel naming on the LV side, I have renamed group and channel names in existing .tdms files using Diadem 11.1.
    Apparently, the result was that the format of the time channel is no longer "DDC_Timestamp" but "DDC_Double".
    I use Matlab for postprocessing the data, and in order for my scripts to work, the time channel needs to be in "DDC_Timestamp" format. Is it possible to modify the .tdms file in Diadem in order to re-convert the time channel format from "DDC_Double" into "DDC_Timestamp".
    Any help is appreciated, best regards
    Philip

    Hi RMathews,
    thank you for your reply. Unfortunately this did not seem to work for me. When reading the tdms file into Matlab, the function DDC_GetDataType still returns "DDC_Double" for the time channel.
    I also tried the ChnPropSet("Timegroupname/timechannelname","datatype","DT_Date") function from within the Diadem Script panel, but this returns an error. I am not familiar with using the Diadem functions.
    Philip

  • How can I find the specific channel name and modify channel name in automatically in VBS?

    How can I find the specific channel name and modify channel name in automatically in VBS? (DIAdem 9.1)
    I would like to change channel name = "speed01" ... "speed10"  to  channel name = "velocity01"..."velocity10.
    martino

    Hello Martino,
    this script will help:
    Option Explicit
    Dim i
    Dim n
    For i=1 To 10
    If i < 10 then
    n = CNo("speed0" & i)
    Else
    n = CNo("speed" & i)
    End If
    If n > 0 Then
    If i < 10 then
    ChnName(n) = "velocitiy0" & i
    Else
    ChnName(n) = "velocitiy" & i
    End If
    End If
    Next
    Matthias
    Matthias Alleweldt
    Project Engineer / Projektingenieur
    Twigeater?  

  • How do you find the average value of all the data between two points on a single channel

    I am tring to calculate the average value of all the data points on a single plot between two seperate points
    I have attahced an illustration.
    Tim
    Solved!
    Go to Solution.
    Attachments:
    plot.jpg ‏173 KB

    Hey smoothdurban,
    I've seen Brad's code, and trust me, it's worth the effort to let him help you get it up and running - it's definitely the most ideal way to solve this problem.  However, as Brad said, there are multiple ways to tackle this - both interactive and programmatic - so in the meantime, I'll take a second to detail one of the interactive and sure-fire ways to find the average of data between two points on a single channel.
    We'll use"Flags."  Set up your VIEW graph exactly as you did on your original screenshot, using Band Cursors to approximate the beginning and ending X-values representing the range you want to examine.  Next:
    1. Click the "Set Flags" button () that is a part of your 2D Axis System.  Note that you can hold down the Shift button if you ever decide you want to do this on more than a single curve at one time.
    2. Select the "Flags: Copy Data Points" button that enables after Flags are set.
    3. This creates new channel(s) in the default (bold) group in the Data Portal that contains only the Flagged data.
    4. Select DIAdem ANALYSIS.
    5. Select Statistics » Descriptive Statistics.
    6. In the Channels input, select the newly created channel containing your Flagged Y-Data.
    7. Ensure that the Arithmetic Mean parameter is set.  You can preview the data and the result in the dialog before pressing OK to execute the calculation. 
    You may have noticed that in the Descriptive Statistics calculation, one of the parameters that you can set is the range of channel rows to operate on - so, if you know the row numbers of your beginning and ending X-values, you could just simply run the Descriptive Statistics calculation and use this parameter to operate on a row subset of your original channel instead of the entire channel.
    Derrick S.
    Product Manager
    NI DIAdem
    National Instruments

  • Notepad++ autocomplete für Diadem vbs

    Hallo,
    ich benutze des öfteren notepad++ um für Diadem Skripte zu schreiben. Das ist besonder praktisch wenn ich mal wieder an einem anderem Rechner sitze. Das gute an Notepad++ ist, dass man sogar die diadem.chm Hilfe über einen Plugin auf die F1 Taste legen kann - genau wie in Diadem selber.
    Notepad++ besitzt auch eine Autocomplete Funktion, welche sogar alle Funktionsparameter in einem Tooltip aufzeigt. Leider natürlich nur für VisualBasic und nicht speziel für Diadem. Alle Funktionen werden dazu in einer .XML datei aufgelistet.
    Das ganze sieht dann wie folgt aus:
            </KeyWord>
            <KeyWord name="MsgBox" func="yes">
                <Overload retVal="" descr="Displays a simple message box with optional timeout.">
                    <Param name="flag" />
                    <Param name="&quot;title&quot;" />
                    <Param name="&quot;text&quot;" />
                    <Param name="[timeout" />
                    <Param name="[hwnd]]" />
                </Overload>
            </KeyWord>
    Im Tooltip sieht das ganze dann so aus:
    MsgBox(flag, "title", "test", [timeout], [hwnd]])
    Displays a simple message box with optional timeout.
    Meine Frage: Gibt es bereits solch eine .xml Liste für Diadem oder existiert eine Liste welche alle Funktionen von Diadem ähnlich wie in dem oben beschriebenem Toottip auflistet? Eventuell könnte man diese dann mit einem Makro umwandeln.
    MfG Brian

    Hallo Brian,
    Mir ist nicht bekannt, dass eine XML Datei für DIAdem-Befehle existiert. Es dürfte auch sehr viel Arbeit sein diese zu erstellen, denn DIAdem hat mehrere tausend Befehle und Methoden.
    Das NodePad++ ist sicher ein guter Editor, aber den Script-Editor in DIAdem solltest du nicht unterschätzen. Mit DIAdem 11.0 wurde ein neuer Editor implementiert, der in den darauf folgenden Versionen weiter ausgebaut und in der aktuellen Version DIAdem 2010 auch in SUD zur Verfügung steht. Unter anderem werden folgende Funktionen unterstützt:
    Auto-Completion über die Tastenkombination STRG + LEERTASTE
    Code-Completion über die . (Punkt) Syntax (nicht nur für die DIAdem-API’s)
    Code-Folding zum Ausblenden von Script-Code von Prozeduren
    Tool-Tip mit Kurzhilfe zu allen Parametern von DIAdem-Befehlen und Link zur ausführlichen Hilfe
    Direkthilfe über F1
    Syntax-Coloring
    Debug Möglichkeiten
    Außerdem werden geänderte und nicht gespeicherte Code-Zeilen markiert.
    Gruß
    Walter

  • Channel config with daqmx

    Hi,
    how can I set the config for the first, the second and the fourth channel on the daqmx-config?
    I tried with dev1/ai0:1,3 but this is not working.
    thanks for any help
    yves

    Hello Yves,
    The syntax for a channel list is outlined in the DAQmx help file under "channels, physical syntax" in the index, or by searching the help for "Physical Channel Syntax".
    Try following for your configuration:
    Dev0/ai0:1, Dev0/ai3
    RegardsMessage Edited by Indiana on 04-21-2005 09:14 AM

  • "Diadem" AND "DataPlugin"

    Hello everyone:
    I have data logged on binary files. Each binary data file (*.cvd) has its corresponding xml header file (*.cvx) which describe the data on the binary file plus other Logging information.
    I have written a short Dataplugin for Diadem 10.0 to read these binary files into the Data Portal.
    The binary files contain data from Real (32-bit floating point) channels, Integer (32-bit) Channels and Boolean (1 bit) Channels.
    Boolean channels are all packed into a 32-bit DW (type U32).
    On the header file (xml formated - can be read with Worpad) there is a description for each channel (Channel Id No, channel name, type, size ect...)
    Once I got the Real, Integer and Packed Boolean channels loaded into the Diadem Data Portal I need to extract each individual "bit" from each Packed Boolean channel and create new channels (U8) on the data portal for each of the Boolean channels.
    Please find attached the data plugin (Read_M80-M_data.vbs), an example binary data file (1823310_00_00_47.cvd) and its corresponding header file (1823310_00_00_47.cvx).
    When you load the data using the given data Pluging in Diadem. you can see that the Double Word 101 has been imported as a "Packed DW 101" instead of a  specific channel name given on the header file. This is because each bit on that 32-bit DW represents a digital or boolean channel from the PLC (Process Controller).
    Data store on channel "Packed DW101"  contains the data for 32 digital/boolean channels which are described on the header file (from Channel id =101 to Channel id = 132).
    Since the data file could have 100s of Packed Boolean channels with > 3000 samples each.
    The  $1M Dollar Question is:
    How do we "Efficiently" extract each bit of each Packed Boolean Channel sample and load it in to Diadem Portal (This will not be Direct Access Channels I gess, but created channels after we load the data file).
    Any help on this will be highly appreciated
    Kind Regards
    Felix.
    BSc. MSc. Felix Beltran MIEE
    Control & Instrumentation Engineer
    CONVERTEAM Ltd.
    formerly ALSTOM Power Conversion
    Process Industries Department
    Rugby CV21 1BU
    United Kingdom
    Attachments:
    M80M Dataplugin.zip ‏269 KB

    Felix,
    I looked at your plugins and did a few edits to do what I think you want to do. First, its possible to split the digital channel while reading the data from file. You can use bitmasks to retrieve single bits. The "trick" is to define one channel for each digital channel. One thing is not obvious : As the base data types for dataplugins don't support "bit" you need to use e.g. U32. Now you have several of those you need at the same position in the file. This can be achieved by using one binary block for each channel.
    The block need to be set up so that the block "knows" that in between the values of the channel you use, there are gaps. Those gaps result from the fact that the file has a layout where you have chn1, chn2, chn3 and so forth. This is configured by setting the "BlockWidth" property
    In addition to the bit handling I added a few lines of code to show how you can create waveforms. Waveforms are channels with attached timing information. You can use them as long as deltaT in the time channel is constant. I used delta T from the XML header and added a dummy statement to calculate the offset (Tzero) This calculation probably needs adjustment (See line ""Base_Offset = Base_Rate*100.*(-1.))
    I have attached the updated code below.
    Please let me know if this works for you.
    Andreas
    Attachments:
    Customer_M80M.zip ‏3 KB

  • Diadem Oracle 10g - Fehlerhandling

    Hallo,
    wir möchten mit Diadem auf eine Oracle 10g Datenbank zugreifen um Daten in Tabellen zu schreiben.
    Wie kann man den Fehlerstatus (Daten erfolgreich in DB  geschrieben) der DB abfangen (abfragen) mit Diadem V9.1 SP2c und VBS?
    Wir greifen momentan über ADO auf die DB zu!
    Wäre auch dankbar für weitere Beispiele (habe schon ein paar in diesem Forum heruntergeladen)!
    Danke!

    Hallo Gunter!
    Für VB gibt es wirklich sehr viele ADO Beispiele. Wenn man mal die Unterschiede VB<->VBS intus hat kann man diese gut nutzen. Der größte Unterschied ist aber leider das Fehlerhandling, da VBS keine Labels und somit auch kein On Error Goto MyErrorHandling kennt. Dafür gibt es nur das ziemlich beschränkte (im doppelten Sinne  ) On Error Resume Next / On Error Goto 0 Konstrukt. Achtung: Es werden erstmal alle Fehler ignoriert und immer mit dem nächsten Befehl weitergemacht. Man muss immer das Err-Objekt mit Err.Number <> 0 abfragen ob was schiefgegangen ist.
    Die ADO Objekte produzieren bei Laufzeitfehler die man abfangen sollte. Das kann dann so aussehen:
    Option Explicit
    Dim oAdoConnection
    Set oAdoConnection = CreateObject("ADODB.Connection")
    ' Open connection
    oAdoConnection.ConnectionString = "DBQ=My.MDB;DRIVER={Microsoft Access Driver (*.mdb)};DefaultDir=C:\MyDb;UID=;PWD=;"
    On Error Resume Next
    Call oAdoConnection.Open()
    If Err.Number <> 0 then
    Call MsgBox("ADO Open failed!" & vbCRLF & vbCRLF & "Reason: " + Err.Description,vbCritical,"DIAdem ADO Example")
    End If
    On Error GoTo 0
    Durch das On Error Resume Next / On Error Goto 0 Konstrukt muss man dies für jede potentiell 'gefährlichen' so machen. Das macht das ganze etwas unübersichtlich. Ich favorisiere es das ganze in Funktionen und dann am liebsten noch in Klassen zu kapseln. Eine Funktion könnte dann so aussehen:
    Public Function AdoOpen(ByRef oConnetion )
    On Error Resume Next
    Call oAdoConnection.Open()
    If Err.Number = 0 then
    AdoOpen = true
    Else
    Call MsgBox("ADO Open failed!" & vbCRLF & vbCRLF & "Reason: " + Err.Description,vbCritical,"DIAdem ADO Example")
    AdoOpen = false
    End If
    On Error GoTo 0
    End Function
    Zusätzlich kann man sich von den ADO Objekten noch weitere Fehlerinformationen holen, z.B. so:
    Public Function AdoOpen(ByRef oConnetion )
    Dim oError
    On Error Resume Next
    Call oAdoConnection.Open()
    If Err.Number = 0 then
    AdoOpen = true
    Else
    Call MsgBox("ADO Open failed!" & vbCRLF & vbCRLF & "Reason: " + Err.Description,vbCritical,"DIAdem ADO Example")
    ' detailed ADO Error Info
    For Each oError In oConnetion.Errors
    Call MsgBox("ADO Error: " & oError.Description,vbCritical,"DIAdem ADO Example")
    Next
    AdoOpen = false
    End If
    On Error GoTo 0
    End Function
    Noch ein Hinweis zum Err-Objekt: Dessen Inhalt ändert sich ggf. mit bestimmten Befehlen! Am besten wenn man einen Fehler festgestelt hat die wichtigen Daten daraus sichern.
    Ich hoffe das hilft schon mal etwas weiter
    Matthias
    Matthias Alleweldt
    Project Engineer / Projektingenieur
    Twigeater?  

  • Wie muss ich meinen Beschleunigungskanal umrechnen um die Anzeige in dB zu erhalten?

    ich habe eine Datenaufzeichnung eines Beschleunigungsaufnehmers mit der Einheit "g"
    nun möchte ich im Diadem diesen Kanal so umformen, das meine Anzeige und die Werte die ich auslesen möchte in "dB" angezeigt werden.
    für eine Hilfe bin ich sehr dankbar.
    Thomas

    Hallo,
    ich habe ein VB Script, welches die dB Skalierung durchführen kann. Probieren Sie mal aus, ob Ihnen das weiter hilft:
    In der Variable c wird die Kanalnummer des zu skalierenden Kanals gespeichert, die Routine erzeugt dann einen neuen Kanal.
    ' Channel to Scale
    c= 1
    ' new channel (db scaling)
    nc = cno(chnalloc("db",cl(c))(0))
    ' calculate logarithmic scaling and change 0 in original value with novalues
    for i = 1 to cl(c)
    old = chdx(i,c)
    if old <= 0 then chdx(i,nc) = nv else chdx(i,nc)=20*log(old)/log(10)
    next
    cl(nc)=cl(c)
    Gruß
    Ingo Schumacher
    Systems Engineer Sound&VibrationNational Instruments Germany

  • Print Y axis Name in Legend

    Hi,
    we have a report that we use to print multiple result on multiple Y-AXIS. The problem is that in the legend, we only see the name of the channel, but not the name of the Y-AXIS that is associated with it.
    Is there a way we can print in the legend the channel name and the Y-AXIS number that the channel is associated too ?
    Thanks

    Hello Crusader,
    DIAdem 2011 (available this summer) adds a new function that allows to create more elaborate axis labels.
    I have attached two images for you that show the new CurveSnippet function of DIAdem 2011:
    If you think this function might be useful to you, please check out the DIAdem BETA version 2011 here (requires sign up):
    http://www.ni.com/beta
    Let us know if that helps,
          Otmar
    Otmar D. Foehner
    Business Development Manager
    DIAdem and Test Data Management
    National Instruments
    Austin, TX - USA
    "For an optimist the glass is half full, for a pessimist it's half empty, and for an engineer is twice bigger than necessary."

Maybe you are looking for