From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

DIAdem Idea Exchange

Community Browser
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

Other IDE programs (like PyCharm or Visual Studio Code) have an "autosave" feature which is very useful! After a certain amount of time, the script you are working on is auto-saved (if it has been saved).  

Currently, ONE python engine is started with each instance of DIAdem.  This behavior is not well-documented and comes with limitations. 

 

For example, if I have an imported function ".py" script called "MyHelperFunctions.py" and import this into another script, the function is only loaded once.  If I make edits to this function, and save the file, the edits will not be available until I close/reopen DIAdem!

 

I suggest having multiple embedded python engines at the same time.  And this would enable DIAdem to always be ready for a python call but still retire a python engine that was bloated.

 

At the least, having a script command to spin up a new python engine would be very helpful for me!

Please implement dark mode in Diadem. 

All my other softwares are setted up to dark mode, when I exchange to Diadem is like going out of a dark tunnel in sunny days.

 

When I am loading multiple same-named channels into the Data Portal from a DataFinder Search Results list (after 'searching for channels'), if I load these channels into the data portal, by default they all load into the 'default' group, and because they have the same name, they are re-named inside the Data Portal with suffix numbers.

 

I think it would be better to create a new group in the Data Portal with the name of the group the channels belong to in their respective files, or at least provide this option.

Errors occuring in Diadem user commands result in all running scripts aborting without any clear sign of the reason. The only means to find out is the log file in Diadem Script.

Support says this in a feature, as user commands are supposed to handle events and there should be no (frequent) error messages.

On the other side, user commands are the ideal place to have a user functions library as it is accessible from everywhere including dialogs. With ScriptInclude command such a library has to be included at every script start and possibly several times as dialogs have a separate script environment.

 

Therefore I would welcome an option to turn on error messages / beep when there is an error in user commands.

The current behaviour of silent abortion of any script is quite confusing, especially for people that are only applying scripts for evaluation.

We are very happy about the support of Python as additional language in DIAdem script.

It would be a really nice feature if the DIAdem Python module would also be available in Python scripts that are running not within DIAdem script but on a machine with valid DIAdem license.
This would allow to create Python applications that use DIAdem commands but do not require the user to explicitly open DIAdem and load a Python script and thus improve usability.
Another use case would be an improved communication between Matlab and DIAdem by calling Python code including DIAdem commands from Matlab as executing Python code from Matlab is possible.

I was using an “assignment” channel as the “ChnEventTrueChn” for “ChnEventCreateFilteredTrueChn” and was really hoping the result channel would also be an assignment channel, but no, it’s not.  

 

My original assignment channel is matched up nicely with some text values, so it would be really helpful to have those values “carry” if I execute a function or calculation on the numeric channel.

 

FYI, Brad Turpin provided a workaround until this is implemented that works just fine for me:

Clone your assignment channel and use the clone for the ResultChannel channel in the “ChnEventCreateFilteredTrueChn”  function.

 

Set OldGroup = Data.Root.ChannelGroups(1)

Set NewGroup = Data.Root.ChannelGroups(2)

Set OldAssignChannel = OldGroup.Channels(1)

Set NewAssignChannel = NewGroup.Channels.AddChannel(OldAssignChannel)

Call ChnEventCreateFilteredTrueChn(NewAssignChannel, ChnEventList, OldAssignChannel, ChnEventFalseValue)

 

 

I use n Systems Y-axis viewing a lot, often with groups of channels defined into common axes with Curve Related Scaling.  The only way to save this is in a TDV file, which locks it into that specific layout.  I cannot share a scaling definition with another View area or sheet in the same layout - I have to manuall enter all the details again every time.  

Would it be posisble to allow Curve-related Scaling settings to be sharable in some way, so they can be more easily re-used both within a single session, and across sessions, independently of the complete TDV layout?

The icons for DIAdem 2017, 2018 and 2019 are frustratingly identical.  LabVIEW has helpful little numbers showing the version number.  

Download All

In general, DIAdem does not handle single-value data well.  I think the argument would be “if a data channel only has one value this should be meta-data” and I agree, but DIAdem doesn’t 

have great options for viewing/plotting metadata. 

 

Suggested improvements:

  • allow dragging properties into a table
  • allow plotting property over multiple channels (without having to create channel containing property data)

Add "Wrap and truncate" text wrap functionality to REPORT axis labels (similar implementation as currently available in legends and tables).  

 

When channel names are very long, it would be helpful to have a  "wrap and truncate" feature like other areas in DIadem.

I would like a tool that would help identify noise spikes in my data, so that they may be set to NO VALUE or carefully interpolated.  In the attached example, I have two torque spikes in my data that are significantly higher than the mean.  If I were only looking at one file, I would simply "Set Flags" in VIEW, then "Flags: Remove Data Points". However, I am reviewing dozens of files with several channels of interest.  

 

Peak data points are the most damaging to the components under test, so it is important that we keep the real events and reject the noise.  

 

Concerns with other peak / spike removal options:

  • Manual Set Flags -> Flags:  Remove Data Points; time required
  • ANALYSIS -> Event Search -> Event = Window -> Upper Limit:  In other data files, I have real events with values higher than the noise in this data file.  
  • ANALYSIS -> Digital Filters or Smoothing:  This will change all of the data - it will likely narrow the peak-to-peak of my other data and interpolate my noise spikes, adding damage that is not actually real.  I only want to remove a few data points in the channel data. 

nCode Glyphworks has a nice Spike Detection Tool that uses 6 available algorithms to detect spikes.  Once it identifies them, it allows the user to see them, prior to performing any actions - this is important, because it allows the user to identify if they are real or noise, prior to taking action.  

Download All

I'd like the legend items to transfer when data is dragged from one area to another in VIEW. Currently, for example when I drag a curve from one 2D axis in VIEW to an empty area, the legend items are the defaults, "name" and "unit".

When I create a new 2D curve (or drag and drop from another area) in VIEW, I always get “name and unit” for the legend items.  For a table, it’s always Name, Group name, Length and Unit.

 

I'd like these defaults to be customized. For example, if I always want just name for my 2D axis system legends, I'd like to set this somewhere.  I think a great place would be in "DIAdem Settings -> General" near the "Colors" area.  

Most dialog editors I've used have a "timer" function of sorts, and I would like the DIAdem SUD dialog editor to have a "timer" function.  This would allow an event to happen at a specified interval (example 1 second) 

 

The simplest case would be to simply display the current date/time on a user dialog, and this is not possible right now without using worker objects, and I feel silly using a worker object just as a time-keeper! I would use this function often.

 

 

In DIAdem 2018, the VIEW legend changed and multi-line legends are no longer supported.  I'd like to add back in a predictable multi-line legend option.  When multiple legend items are added in DIAdem 2018, much more of the screen is taken up with the legend (if I want to view all of the legend items), and less of the data area is visible.

 

I've attached two images to show the comparison of a 2D axes with 5 legend items in DIAdem 2017 and 2018. 

 

 

Download All

When I drag and drop a channel property to REPORT it always puts it into a text box.  If I have an existing table in REPORT, it would be nice if I could drag the property there, and it would automatically populate an "expression".  Right now, I have to go into the text object, copy the code and paste into a table expression.

When I right-click on a REPORT sheet, I have the option to "manage..." sheets.  There is a similar but less functional dialog available in VIEW.  I would like all of the functionality of REPORT "manage..." sheets in VIEW.

Add more options for VIEW legends:

- legend position - top/bottom/left instead of only right

- allow floating legend

In REPORT, you have the option of using a "Joint x-channel", which allows REPORT to use the x-channel of the first curve as the x-channel for all other curves in a 2D axis system.

 

I would like this exact same functionality in VIEW.