Quantcast
Channel: DIAdem topics
Viewing all 3196 articles
Browse latest View live

Labview Waveform Type into Diadem

$
0
0

We have created some TDMS files in Labview using the native NI "Waveform" data type (this is basically a cluster, with the Y axis data, and a Start-time and delta-time structure to document the time axis).

 

To our surprise, importing this into Diadem seems to ignore the time part of this cluster, and just create our Yaxis structures.

Am I missing something, surely as part of the NI toolset, Diadem should automatically create the required time vector?

I have tried to use the generate time function in Analysis, but it looks like that would require us to manually enter the start time and delta time.

 

 


Running Diadem From Within VB.NET

$
0
0

I use the following snippet of code that works for my needs using VB.NET 

 

oDiadem = New DIAdem.TOCommand

'Save Diadem file as TDM in the specified folder.

nDiademStatus = oDiadem.TextVarSet("T3", sFolderPath & "\" & sFileName & ".TDM")
oDiadem.CmdExecuteSync("DataFileSave(T3, 'TDM')")

'Close down diadem

oDiadem.CmdExecuteSync("DataDelAll(1)")
nDiademStatus = oDiadem.TextVarSet("T3", "ignore") '
oDiadem.CmdExecuteSync("FileModification:= T3")

oDiadem.CmdExecuteSync("ProgramExit()")

oDiadem = Nothing 

The file save works fine, but at the "ProgramExit()" call. I get the following error (see attached screen shot)

 

Clicking OK closes the dialog by the instance of Diadem remains running in memory

 

 

DIAdem DAC Script - High CPU and slow

$
0
0

Thanks to this board I now have a working serial port reader script.

 

But now 2 issues have become apparent. 

 

1) the oUDIM.Read function appears to take, minimum, 0.1 seconds to execute. Sometimes a bit longer. It is reading a response that is <25 characters long with a CRLF at the end. I am asking it to read the whole line, up to the CRLF.

I can't see how I can make that any faster? I am trying to shoot for 10Hz so with it taking minimum 0.1, its not really achieving that.

 

2) if I run the script, via DAC, asynchronously I get a horrible looking data trace with steps in it. If I run synchronously, I get a nice data trace that is smooth.  Issue is the later eats 25% CPU and this script has to run on a laptop, on battery, for 2-3 hours. I am just in the process of seeing how bad the battery drain is. The asynchronous option is only polling the CPU 2% of the time!!

Get value of a Channel by row number

$
0
0

Hello,

 

I have recorded a script that calculates the N peak values of a channel and saves them into a new channel. Each channel contains the X value and the Y values of the selected peaks (PeakX and PeakY)

 

Now, I want to get the value of a channel on the PeakX values that I have saved from the Peaks calculation.

 

Groups = Data.Root.ChannelGroups.Count

Set oMyChannel = Data.Root.ChannelGroups(Groups).Channels("PeakX")

for i = 1 to Data.Root.ChannelGroups(Groups).Channels("PeakX").Properties("length").Value

' Find the row where the "[1]/Time" matches with PeakX calculated values rowToFind= pno("[1]/[1]",oMyChannel.Values(i))

'How to get the value of a 3rd channel on the rowToFind row next

 How can I get the values of a 3rd Channel on the rowToFind row?

 

Thanks in advance.

 

Martin

 

Wait until external program is finished to continue the script

$
0
0

I create a python script to analyze an excel file and export another excel file (X) as the result.

My vbscript needs to execute the python script and wait until it finished to read this X excel file to do further processing.

I have tried with:

Call ExtProgram()

and

Set oShell = CreateObject("Wscript.Shell")
oShell.Run exe & " " & PySc

where: exe is path of python engine and PySc is path of Python Script

With these, DIAdem could not wait until the python script finishes to continue its execution. As the result, DIAdem got an error because X excel file was not available for the next processing.

 

Is there anyway, excepting pausing the script with pause(), to make this happen?

Thank you

 

Hai

 

Define a global user constant in DIAdem 2017

$
0
0

Hi all,

 

I would like to define a global user constant in a VBS script in DIAdem 2017, which is going to be used by other scripts. This constant will have information that depends on the computer I'm running the scripts. My idea is to only run once the script that defines the global user constant, and have the users run the other scripts without needing to worry about it.

 

I saw that there are "user variables" in DIAdem 2017 (link), but the recommended way of defining them (UserVarCompile) seems to be obsolete (link). Would anybody have an idea of how to implement this?

 

Thanks

Franco

DataFinder Server 2018 Resource Manager Service

$
0
0

Hi Group.

 

I am looking to understand the use case for some of the advance settings for Data Finder Server. 

In the TDM Server Control Panel

1.0 These are Resource Manager Service and Information Audit Service.  Both of these have the option to store the results of these Service in a different DB from default SQL db. Would like to understand what intended use case was for this feature. So that I can use it productively.  I have setup a MS Sql server 2012 on a VM  running dfse 2018, and it created some tables with basic status of the individual Tasks(Parameters passed) 

2.0  Option exists for setting a Cache for file cache path and Server Cache path,   Would like to understand the intended use case for this options.   So that it can be used corrrectly.

 

Thanks for your help as always. 

 

Paul

Script to check if value has been exceeded and feed test to report

$
0
0

Hi All, I want to check to see if a value has been exceeded and then have an alerts tab on a report. For example I want to check if the speed of 7000 rpm was exceeded. I then want on the alert tab of the report for it to say yes or no for verification the value was exceeded. I can find if it was exceeded fine but how do I translate that into a corresponding text statement for a report? Thanks in advance!


Command Line Scipt Start and Data Loading Priority

$
0
0

I have been working with a custom user Interface that collects data into a .tdms file. There is a button on the user interface that opens DIAdem with the data file loaded into the data portal. I added in the command line parameter to run a script once DIAdem has been opened, but I've run into an issue. The script will first run and exit once it detects that no data has been entered, and then DIAdem will load the data file upon termination of the script. Is there a priority given to running a script before loading a data file, or does anyone have suggestions to fix this issue? I can't view the actual command line call as it is taken care of in the user interface and I have no access to the inner mechanics of it. Any help is appreciated

Constant Channel for Common Limits

$
0
0

Hi,

Is it possible to create a channel containing constant values? I have multiple views of data and all shares common limits. I would like to create one channel containing my limits and plot it on every view.

TDMS to .wav giving zero values

$
0
0

When i save a TDMS file to a wav file and then open it in matlab I get all zero values. How can I get the actual frequencies of the sound?

Data loading process is very slow using DIAdem 2017

$
0
0

Hi everyone,

 

Some colleagues and I noticed that the data loading process in DIAdem 2017 is very slow. We internally use a tool developed in DIAdem 2014 to process some data which are loaded with MDF3 plugin. The size of all the files is around 8 gb and we have in total 288 files. Normally, it takes about 5 hours to process them with 2014 version but with the new one its around 26 hours (even more). We ran the tool on the same machine with the following properties: 32 bit, 4 gb RAM and processor core i7 vpro. 

 

Any suggestion concerning this is welcome,

Thanks 

Programmstart mittels /CScriptStart - Informatiopn übergeben

$
0
0

Hallo zusammen,

 

aktuell starte ich ein vbs-Script mittels CScriptStart über eine Verknüpfung. Im Zielpfad ist folgendes angegeben:

"C:\Program Files (x86)\National Instruments\DIAdem 2017\DIAdem.exe" /CScriptStart('"W:\...\Report_anzeigen.VBS"')

 

Das aufgerufene Script führt hauptsächlich folgende zwei Aufgaben aus:

Call DataFileLoad("S:\...\001\Auswertung\Auswertung_001.tdms")

Call Report.LoadLayout(CurrentScriptPath & "Vorlage_Diagramm.TDR")   

 

Die Verknüpfung zu dem Script liegt im selben Ordner wie die Datei "Auswertung_001.tdms", die eingeladen werden soll. Jedoch gibt es noch die Ordner 002\Auswertung und 003\Auswertung mit den zugehörigen tdms-Dateien "Auswertung_002.tdms" und "Auswertung_003.tdms". Hier entsteht ein Problem was ich nicht lösen kann:

 

Das Skript soll aus dem Ordner der tdms-Datei durch eine Verknüpfung o.ä. gestartet werden und genau die Datei einladen, welche im selben Ordner wie die Verknüpfung liegt. Diese Verknüpfung muss also auf irgendeine Weise ihren eigenen Pfad an das vbs-Script übergeben, sodass im Script folgendes stehen kann:

 

Call DataFileLoad(Pfad zur Verknüpfung & "Auswertung_XXX.tdms")

Call Report.LoadLayout(CurrentScriptPath & "Vorlage_Diagramm.TDR")   

 

Der Name der Datei (Auswertung_XXX.tdms) könnte dann Problemlos aus dem Pfad ermittelt werden, da ein Ordner im Pfad diesselbe Bezeichnung hat.

 

Ich hoffe ich konnte das Problem verständlich darstellen. Kann mir jemand helfen?

Viele Grüße

Jakob Griebenow

How to change report font color with script based on criteria

$
0
0

Is there a way to have the font color change for the report based on the determination found in the script?

For example this script checks to see if a value was exceeded and reports yes or no on an alert page of the report.

 

If Data.Root.ChannelGroups(1).Channels("Speed (rpm)").Maximum > 6300.1 Then
T1 = "YES"
Else
T1 = "No"
End If

 

I would like the YES text to be green and the No text to be red. Is this possible?

Thanks!!!

 

data amount limitation?

$
0
0

Hi,

 

I am new to diadem and I am interested in which amount of data diadem is able to handle.

Is there any limitation of rows, lines or measurement points for the data file?

Or what else could be responsible for possible limitation of data handling?

 

Thanks for your answers 


Measurement of periodic signal parameters

$
0
0

Hi. I need professional help. I am just starting to work with Diadem and would like to understand if it is possible to do the following.

I have periodic pulse signals. There is a task: to define the fronts and the slices of the pulse period (frequency), to calculate the mean for each steady-state value of the signal, etc.

Maybe someone has experience, please advice how is it time-consuming rr easier to do in means of LabVIEW or Excel?

Filtering a channel based on the values of another channel

$
0
0

Hi all,

 

I have imported in DIAdem some height measurements I have taken with a laser profilometer. Each profile consists of 3 channels: X (position), Z (height) and I (laser intensity). I would like to discard (set to novalue) the Z value for those readings whose laser intensity is less than 100. Is there a quick way of doing this?

 

Thank you.

 

Regards

Andrea

How to implement my own data into SQL Wizard

$
0
0

Hello, 

 

I have scoured the forums for a way to implement my own SQL files into diaDEM in order to create Box Charts, but when importing SQL Wizard I realized I do not know how to import my SQL data into line 12 like other forum discussions advised. I don't mean to require my hand being held, but I am not sure how implement the data and code I need into this software. 

 

Thank you

For each element of an ElementList: is there an index?

$
0
0

Hello

I want to repeatedly run a calculation over 2 channels of many groups, such as

ChnMapLinCalc("[i]/chan A","[i]/chan B,.... )"

and the like, which take 2 input channels

 

Now this could be done quite efficiently using lists, e.g.

Set oXList = data.getchannels("*/chan A")

Set oYList = data.getchannels("*/chan B")

and run

foreach oXCh in oXlist

Set oYch = oYList( index of oCh in oXList )

       CallChnMapLinCalc(oXCh, oYCh)

next

 

However, I cannot find a way to retrieve which index in oXList my loop is at.

(Apart from some workarounds with loop variables like i=0: i=i+1. in which case I could just as well discard the ElementList- elegance.

OTOH, there must be some type of internal pointer to the list element.

 

Thank you for suggestions.

 

Michael

 

 

 

 

Multiple x-axes on a single 2D plot in REPORT

$
0
0

Anyone know a way to create two x-axes on a single 2D plot in REPORT?   For example, an FFT of speed variation for a torsionally vibrating shaft with nominal speed of 1800 rpm would have orders of 1, 2, 3... corresponding to frequencies (in Hz) of 30, 60, 90...  It would be nice to show both frequency and order as parallel axes, but I'm not seeing an easy way to do this...

 

Thanks,

Chris

Viewing all 3196 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>