TestStand与LabVIEW UI 交互
交互起因
客户觉得TestStand界面复杂,希望一个简单的界面即可进行序列执行,采用LabVIEW调用TestStand引擎可实现快速设计,将TestStand拆解到LabVIEW。
然而,这样做需要设计大量回调函数,开发较费时间,项目对时间要求很严格,且投入不多,故希望有快速解决方案。
为此,设计时希望LabVIEW可以充当一个辅助软件,可配置和控制执行,进行简单数据交互,执行还是TestStand进行
解决方案
TestStand加载LabVIEW界面进行配置后,执行UUT测试,当执行结束后,又回到LabVIEW界面,本文主要总结该实现的关键技巧
1.LabVIWE如何嵌入Teststand界面,也就是需要大量开发时间的方案技术。
参考最权威文档即Teststand的Help文件
NI官网: 手把手教你创建Teststand User Interface
2.Teststand与LabVIEW交互UI
参考NI官网: 基于UI Messages在TestStand和LabVIEW OI之间实现数据的双向传递
Teststand API 架构 TestStand的序列编辑器中如何找到并访问Application Manager
3.其他注意点
上述文章可以帮助了解基本的LabVIWE和Teststand的交互,然而还有一些需要注意的点
如:TestUUT时,如何弹出LabVIEW界面进行配置,然后进入正式测量
TestStand采用面向对象编程,类似于工厂模式,在测试序列底层也是执行的一系列的序列。
基于继承和重写,TestStand可以重写UUT测试中的底层序列,下文将介绍如何重写底层序列。
首先,需要明确UUT测试执行时,会进行初始化和结束,我们只需重写初始化的序列即可增加初始化的操作。如图所示,右键MainSequence,选择Sequence File Callbacks
选择PreUUT,并添加Seq,可以重写该UUT的内容
新增序列后,可以增加UUT序列,即可进行后续编写,而且在序列执行时,只会进行一次
如 :测试UUT时,总是弹出是否进行下一次UUT测试的提醒,能否弹出LabVIEW的界面替换该界面
如图,可以对PreUUT序列编辑,改变逻辑,从而实现自定义弹出LabVIEW对话框作为配置选项
TestStand与LabVIEW UI 交互的更多相关文章
- react UI交互 简单实例
<body><!-- React 真实 DOM 将会插入到这里 --><div id="example"></div> <!- ...
- iOS开发笔记7:Text、UI交互细节、两个动画效果等
Text主要总结UILabel.UITextField.UITextView.UIMenuController以及UIWebView/WKWebView相关的一些问题. UI细节主要总结界面交互开发中 ...
- 类似UC天气下拉和微信下拉眼睛头部弹入淡出UI交互效果(开源项目)。
Android-PullLayout是github上的一个第三方开源项目,该项目主页是:https://github.com/BlueMor/Android-PullLayout 原作者项目意图实现 ...
- firefox 扩展开发笔记(三):高级ui交互编程
firefox 扩展开发笔记(三):高级ui交互编程 前言 前两篇链接 1:firefox 扩展开发笔记(一):jpm 使用实践以及调试 2:firefox 扩展开发笔记(二):进阶开发之移动设备模拟 ...
- 【附案例】UI交互设计不会做?设计大神带你开启动效灵感之路
随着网络技术的创新发展,如今UI交互设计应用越来越广泛,显然已经成为设计的主流及流行的必然趋势.UI界面交互设计中的动效包括移动,滑块,悬停效果,GIF动画等.UI界面交互设计为何越来越受到青睐?它有 ...
- 旅游玩乐 业务组件 UI 交互
旅游玩乐 业务组件 UI 交互 旅游业务组件 ctrip PC web https://piao.ctrip.com/dest/t4651499.html M web https://m.ctrip. ...
- 大数据量 与 UI交互时的处理 总结与心得
[以下均在主线程中操作时]1.UI直接操作,数据量较大时,直接使用UI会非常慢2.数据驱动操作,数据量较大时,数据与UI的交互效率相比“1”提升明显 总结:但以上这两种操作 都会“较长时间”占用主线 ...
- UI交互设计教程分享:提高界面交互体验的“葵花宝典”
本次分享的是在界面设计中最长实用也最容易被忽略的十个原则,就是尼尔森十大可用性设计原则,这是十分基础且重要的原则.原则是死的,如何正确的结合到实际运用中才是关键.接下来我会通过对每一个原则的理解和现 ...
- C#穿透session隔离———Windows服务启动UI交互程序
在Windows服务里面启动其他具有界面的应用程序,需要穿透session隔离,尝试了很多种方法,都可行,现在一一列举下来,并写下几个需要注意的地方. 需要注意的地方 首先要将服务的Account属性 ...
随机推荐
- matlab练习程序(简单多边形的核)
还是计算几何, 多边形的核可以这样理解:这个核为原多边形内部的一个多边形,站在这个叫核的多边形中,我们能看到原多边形的任何一个位置. 算法步骤如下: 1.根据原多边形最大和最小的x,y初始化核多边形, ...
- c++ shared_ptr 使用注意事项. 1
条款1:不要把一个原生指针给多个shared_ptr管理 int* ptr = new int; shared_ptr<int> p1(ptr); shared_ptr<int> ...
- 【框架】异步加载大量图片--ImageLoader
public abstract class BaseImageLoaderProvider { public abstract void loadImage(Context ctx, ImageLoa ...
- jvm运行机制与内存管理
http://blog.csdn.net/lengyuhong/article/details/5953544 http://www.cnblogs.com/nexiyi/p/java_memory_ ...
- jsp网站环境搭建
工具:tomcat7(exe安装版).jre7.javaxcms(安装版.非源码).mysql 1.先安装jre7,或者安装java7(自带了jre7) 2.安装tomcat7,期间要选择jre7安装 ...
- 【转】HBase原理和设计
简介 HBase —— Hadoop Database的简称,Google BigTable的另一种开源实现方式,从问世之初,就为了解决用大量廉价的机器高速存取海量数据.实现数据分布式存储提供可靠的方 ...
- css3易混淆属性详解
1.background, background-color, color (1)background:在一个声明中设置所有属性: 如:background: #00FF00 url(bgima ...
- HTML5拖放事件(Drag-and-Drop,DnD)
拖放 拖放是一种常见的特性,即抓取对象以后拖到另一个位置.在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放. 拖放是在“拖放源(drag source)”和“拖放目标(drop target ...
- POJ3308 Paratroopers(最小割/二分图最小点权覆盖)
把入侵者看作边,每一行每一列都是点,选取某一行某一列都有费用,这样问题就是选总权最小的点集覆盖所有边,就是最小点权覆盖. 此外,题目的总花费是所有费用的乘积,这时有个技巧,就是取对数,把乘法变为加法运 ...
- AIM Tech Round 3 (Div. 2)
#include <iostream> using namespace std; ]; int main() { int n, b, d; cin >> n >> ...



