|
|||||||||||||
I/O Trace is extremely useful when debugging system-level text-based applications. Error handling for systems involving multiple drivers + software packages (RF toolkits, for example) is very difficult. After recognizing there was an error, we still have to determine which device threw the error and then query the appropriate driver/toolkit with the correct handle to determine what the error was. NI I/O Trace is a great way to quickly determine which device threw an error and at which function call. Unfortunately, the error reporting returned by I/OTrace is pretty limited. For example, consider the I/O Trace shown below of an application synchronizing two waveform generators. A property is not configured correctly for one of the generators. I/O Trace clearly indicates there is an error, however the exact cause of the error is difficult to discern from the message:
The actual error message is: “The Sample Rate property can not be configured if OSP Enabled is VI_TRUE. “. It would be great if I/O trace could provide the entire error description. Compare this to the LabVIEW error handler:
Currently the stimulus profile message box prompt allows user text input, but the user text isn't usable anywhere. I'd like to the text to be returned for use in the profiles/sequences. Thank you.
I'd like a way to select/deselect dependencies that get sent to the target upon deployment. I understand that all dependencies are necessary for a project to run. However, I deploy one system definition to many targets, and often there are very minor changes that don't need a transfer of all the dependencies which takes time. Also, the fact that the default is to transfer all dependencies means I need to keep every computer updated and sync'd or else a deployment could fail. I'd like the ability to manage which dependencies to transfer and potentially overwrite. Thank you.
In most places around VeriStand, channels can be searched and filtered. However, in the channel logging pane of the simulus profile editor, one must manually dig down through the nodes and select channels independently which requires users to know exactly where the channels are in the structure. This is a pain for large systems (we have 4000 channels including CAN and 2000 channels excluding CAN). Thank you.
Although user channels and alarms can be created under folders for better organization, I don't see a way to:
- move channels/alarms in folders out of folders (without first deleting them and recreating them outside of the folders)
- move channels/alarms out of folders
Being able to drag and drop in and out of folders would make organization easier. Thank you.
NI-DAQmx Tasks can frequently have dozens of channels, sometimes hundreds. Renaming each channel can prove tedious when the format needs to be more complex than rootname_#, indexed from zero.
This change will allow developers to batch rename channels in a more flexible format, saving task setup time.
This idea includes:
1. Using rootname as it is now, allowing for all channels to have a common base name
2. Creating wildcards for naming channels. Each channel would then have the base name, a changeable separator character if specified, and an incremented number or character(s) specified by the wildcard. Examples include:
a. Current_[001] = Current_001, Current_002, Current_003...
b. Temp [AA] = Temp AA, Temp AB, Temp AC, ..., Temp BA, etc.
c. [05]_Reactor = 05_Reactor, 06_Reactor, 07_Reactor, etc.
The built in CAN information channels for timestamp and time difference are useful. However, to detect a dead CAN network, I'd really like to know the time since a message was last received. The time difference doesn't work because it waits for a next frame before computing the time difference. If I have a 10 Hz frame that is not coming in, it will just display 0.10 s even if no new frames come in. I'd like to have a time since the last message so I can detect if the message is no longer coming in. I was thinking of doing a difference between system time and the most recent receive time, but system time is relative to the start of VeriStand while the CAN receive time seems to refer to real world time. I hear that real world time will be available in VeriStand 2012, so we can more easily do this checking in a calculated channel, but it'd be great to have this feature as a CAN information channel. Thank you.
I have many procedures that check for certain conditions before completing its intended function. If a precondition is not met, the procedure exits. It'd be nice to be able to pop up dialogs as necessary. Right now, in order to do so, I have to have the procedure call other alarms if I want any sort of feedback/popup which gets convoluted pretty quickly. Thanks.
Say I have profileA which calls sequenceB which calls sequenceC. sequenceC needs to access UserChannelX defined in the system definition. Currently, the only way to do so, I believe, is to pass UserChannelX into sequenceC as a parameter which means it needs to be defined as a parameter in sequenceB as well, even if it's not used in sequenceB. This greatly increases the number of arguments of a sequence which may never be used but is necessary in order to give the lowest sequence access to system definition channels. It seems like we should make sytem definition channels directly available at any subsequence level (sort of like how global variables can be referenced anywhere). Thank you.
It'd be great to be able to convert between strings and numbers in the stimulus profile editor. This way we can easily create and use multiple variables that are like:
User1Var, User2Var, User3Var, ..., UserNVar
Also, if we have those channels defined in the system definition, then we could right to multiple variables via parameters in one for loop by incrementing a loop counter. Thanks.
I have hundreds of signals and I want to be able to set a values to them all at once without listing each one individually in every sequence. How do I write to many signals at once? Is there away to assign all the signals to one variable or array of some type and just write to that variable? I did not see such mechanism and NI support says nothing similar exists. Maybe this should be considered.
Whenever I delete a signal (whether it's a custom device, user channel, calculated channel, etc.), VeriStand goes through to delete that signal from anything referencing it. This is often nice but at times undesirable because I may plan to add it back again at a later time with a new custom device with the same signal names, for example. The auto deletion of all references means that I'd need to go back to relink all of the broken references even if the missing signal gets restored later anyway. Some of my channels are used in 20+ places.
I'd like to see VeriStand prompt me or give me an option as to whether I want to delete all references. If I choose not to delete the reference, I understand that an error will show up later if I try to deploy or run. Thanks.
A piece of feedback received from a regional seminar:
It would be great if MAX could tell you what different modules are used for (e.g. NI 9235 - strain gage module or NI 9213 - thermocouple module) or include information such as what is on the product page for the module. Of course, you could rename the modules as soon as they are detected to make it easier to identify but you would still need to go one by one matching up a number to the measurement type.
The only way to change channel mappings to control and indicators is to right click on each control to change the channel. The work around is to use alias for each workspace item and them modify the alias from the system definition.
I think another more convenient option would have the operator use the manage items window from the screen tab to select which channels to display on the workspace. It already shows all the channels connected but it would add plenty of functionality if you could change the mappings from this window also.
tldr: Screen>>Manage Items... - ability to change channel mappings
In simple, to have a way of downloading different versions of MAX from ni.com without having to download drivers.
This would be useful if problems with MAX arise whereby it needs repairing or even if a specific version of MAX is required.
My Profile | Privacy |
Legal |
Contact NI
© 2011 National Instruments Corporation. All rights reserved. | E-Mail this Page
|
||

E-Mail this Page