LabVIEW如何减少下一代测试系统中的硬件过时 1

简介: LabVIEW如何减少下一代测试系统中的硬件过时 1

LabVIEW如何减少下一代测试系统中的硬件过时 1


许多测试系统的问题是,整个系统运行的时间必须超过单个系统组件的支持时间。有时被测试的设备有几十年的有效使用寿命,而许多测试仪器已经过时,在5年或更短的时间后就不再支持了。其他时候,被测试的设备的有效使用寿命以月为单位。这两个都是生命周期不匹配的例子。


生命周期不匹配导致需要在不改变测试应用程序、测试fixture和被测设备(dut)的情况下升级过时的仪器,或者需要在不改变任何硬件或特定于硬件的软件的情况下改变测试应用程序软件。更新测试系统需要新的测试软件开发、重新验证和重新记录,这些都是昂贵的、资源密集型的和耗时的。为了尽量减少与迁移或升级测试系统相关的时间和成本,您可以在测试系统中使用硬件抽象层(hal)来将测试应用程序与仪器硬件分离。本文涵盖了HAL的架构、最佳实践、特性和优点,并概述了LabVIEW和基于c的实现的示例。


硬件抽象类HAL


大多数HAL可以分为三组:行业标准、供应商定义和用户定义。行业标准HAL由行业标准机构定义和维护。供应商定义的HAL由单个供应商提供和维护。用户定义的HAL由构建测试系统的最终用户定义和维护。本文主要关注用户定义的HALs。


行业标准


一个著名的行业标准HAL是由IVI基金会维护的可互换虚拟仪器(IVI)。IVI为八种部署最广泛的仪器类型提供了标准的应用程序接口(API)。IVI规范具有基本、扩展和特定于仪器的API选项;检查范围;模拟;以及其他功能,使升级仪器更容易。IVI的一个限制是用户可能需要仅在特定于仪器的驱动程序中可用的功能,从而降低了互换性。这是因为用户很难扩展现有的IVI类驱动程序。


供应商定义


供应商定义的HAL是指供应商为不同的仪器类型和型号创建一个插件系统。厂商定义的HAL具有由厂商投资于设计、生产、支持和维护的优势。供应商定义的HALs的限制包括支持的仪器的广度和深度、质量以及快速轻松添加新仪器的能力——尤其是竞争对手的仪器。此外,供应商可能会专注于最大化系统中仪器的性能,而不是整体系统性能。依赖HAL供应商的技术支持可能会增加停机时间和成本,特别是在不提供源代码的情况下。源代码的缺乏限制了您可以帮助自己或快速添加新工具的能力。此外,供应商定义的HAL的过时将有效地淘汰您的整个测试系统。


用户定义的


用户定义的HAL的优点是,可以自定义它们以满足独特需求并优化系统性能。如果架构良好,HAL将促进更好的测试应用程序开发并增加重用。建议选择一个广泛使用、支持良好的应用程序开发环境(ADE),该环境足够强大且不需要高级编程技能。用户定义的HAL的限制包括设计、实现和维护它们的时间和成本


以仪器为中心和特定于应用程序的HALs


三个HAL类别中的每一个都有一个以仪器为中心的应用程序接口(API),一个特定于应用程序的API,或两者的组合。


Instrument-Centric


以仪器为中心的API通过使用一组通用的仪器类函数调用来抽象仪器的差异,这些函数调用是唯一仪器可以支持的。例如,IVI采用以工具为中心的抽象视图——也就是说,让顶级测试应用程序调用以工具为中心的API,使所有工具看起来相似(例如,iviscope_configureacquitiontype)。具有以仪器为中心的API的用户定义的hal可以使用“myDMM”或“standardSigGen”调用来抽象唯一的仪器。


特定于应用程序


在特定于应用程序的方法中,测试应用程序调用特定于应用程序的API,该API与其需要执行的测试类型(例如,LED test)保持一致。特定于应用程序的HALs将您与特定仪器类型的行为隔离开来。用户定义的hal更有可能使用特定于应用程序的api,因为除了硬件差异之外,它们还可以抽象仪器的复杂性。特定于应用程序的HALs有助于将特定于dut的参数与可重用的测试逻辑分离。此外,特定于应用程序的hal可以使用以仪器为中心的hal来提供额外的抽象层。


HAL选择优先事项


类别选择


如果能满足您的要求,请选择一个行业标准HAL。许多公司的投资和标准多年来的稳定性减少了您设计、开发和维护它的需要,节省了您的时间和金钱。如果行业标准的HALs不能满足您的需求,其余选项是由供应商定义的或用户定义的。通过实现您自己的用户定义的HAL,您可以选择最适合您的应用程序的架构、工具和行业软件标准。非常仔细地考虑供应商定义的HAL解决方案,因为它们可能会将您锁定在他们的技术架构和业务结构中,限制您更快更容易地迁移的能力——这是HAL的首要要点。


API的选择


在设计用户定义的HAL时,重要的是要确定以仪器为中心的API还是特定于应用程序的API最能满足您的需求。如果以仪器为中心的API是更好的选择,那么定义一个内部通用的以仪器为中心的API“标准”,您可以跨多种类型的dut使用它。将函数分成类似于IVI的三类——基本、扩展和特定。每种仪器类型的最常用函数都包含在基本函数中。在许多(但不是所有)工具中共享的函数被分组在扩展函数中,如果该函数存在于


最后,将不常用函数分组到特定函数中。在可能的情况下构建IVI标准,因为它减少了在系统升级期间定义和实现以及迁移的时间和精力。如果特定于应用程序的API对于您的需求来说是更好的选择,那么您需要确定应用程序功能的哪个部分开发效率最高且最容易重用


自定义HAL架构


下图显示了用户定义的HAL的体系结构。测试应用程序位于顶层。测试应用程序开发人员只需要知道要运行哪些测试、这些测试的参数以及测试硬件需求(采样率、分辨率等等)。在设计测试时,开发人员不需要知道具体的仪器。LabVIEW示例中的测试应用程序名为“Main test App.vi”,它调用来自HAL的函数。建议在HAL中有两个级别。示例HAL有一个应用程序分离层(ASL),测试应用程序将调用它,还有一个特定于设备的软件插件(DSSP), ASL将调用它。

需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

相关文章
|
4天前
|
数据采集 算法 测试技术
【硬件测试】基于FPGA的16psk调制解调系统开发与硬件片内测试,包含信道模块,误码统计模块,可设置SNR
本文介绍了基于FPGA的16PSK调制解调系统的硬件测试版本。系统在原有仿真基础上增加了ILA在线数据采集和VIO在线SNR设置模块,支持不同信噪比下的性能测试。16PSK通过改变载波相位传输4比特信息,广泛应用于高速数据传输。硬件测试操作详见配套视频。开发板使用及移植方法也一并提供。
19 6
|
4天前
|
消息中间件 监控 小程序
电竞陪玩系统架构优化设计,陪玩app如何提升系统稳定性,陪玩小程序平台的测试与监控
电竞陪玩系统架构涵盖前端(React/Vue)、后端(Spring Boot/php)、数据库(MySQL/MongoDB)、实时通信(WebSocket)及其他组件(Redis、RabbitMQ、Nginx)。通过模块化设计、微服务架构和云计算技术优化,提升系统性能与可靠性。同时,加强全面测试、实时监控及故障管理,确保系统稳定运行。
|
1月前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
63 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
10天前
|
数据采集 算法 数据安全/隐私保护
【硬件测试】基于FPGA的8PSK调制解调系统开发与硬件片内测试,包含信道模块,误码统计模块,可设置SNR
本文基于FPGA实现8PSK调制解调系统,包含高斯信道、误码率统计、ILA数据采集和VIO在线SNR设置模块。通过硬件测试和Matlab仿真,展示了不同SNR下的星座图。8PSK调制通过改变载波相位传递信息,具有高频谱效率和抗干扰能力。开发板使用及程序移植方法详见配套视频和文档。
24 7
|
17天前
|
数据采集 算法 测试技术
【硬件测试】基于FPGA的QPSK调制解调系统开发与硬件片内测试,包含信道模块,误码统计模块,可设置SNR
本文介绍了基于FPGA的QPSK调制解调系统的硬件实现与仿真效果。系统包含测试平台(testbench)、高斯信道模块、误码率统计模块,支持不同SNR设置,并增加了ILA在线数据采集和VIO在线SNR设置功能。通过硬件测试验证了系统在不同信噪比下的性能,提供了详细的模块原理及Verilog代码示例。开发板使用说明和移植方法也一并给出,确保用户能顺利在不同平台上复现该系统。
57 15
|
25天前
|
数据采集 算法 数据安全/隐私保护
【硬件测试】基于FPGA的2FSK调制解调系统开发与硬件片内测试,包含信道模块,误码统计模块,可设置SNR
本文介绍了基于FPGA的2FSK调制解调系统,包含高斯信道、误码率统计模块及testbench。系统增加了ILA在线数据采集和VIO在线SNR设置模块,支持不同SNR下的硬件测试,并提供操作视频指导。理论部分涵盖频移键控(FSK)原理,包括相位连续与不连续FSK信号的特点及功率谱密度特性。Verilog代码实现了FSK调制解调的核心功能,支持在不同开发板上移植。硬件测试结果展示了不同SNR下的性能表现。
64 6
|
2月前
|
数据库连接 Go 数据库
Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性
本文探讨了Go语言中的错误注入与防御编程。错误注入通过模拟网络故障、数据库错误等,测试系统稳定性;防御编程则强调在编码时考虑各种错误情况,确保程序健壮性。文章详细介绍了这两种技术在Go语言中的实现方法及其重要性,旨在提升软件质量和可靠性。
44 1
|
3月前
|
监控 测试技术
如何进行系统压力测试?
【10月更文挑战第11天】如何进行系统压力测试?
200 34
|
2月前
|
缓存 监控 测试技术
全网最全压测指南!教你如何测试和优化系统极限性能
大家好,我是小米。本文将介绍如何在实际项目中进行性能压测和优化,包括单台服务器和集群压测、使用JMeter、监控CPU和内存使用率、优化Tomcat和数据库配置等方面的内容,帮助你在高并发场景下提升系统性能。希望这些实战经验能助你一臂之力!
120 3
|
2月前
|
编解码 安全 Linux
网络空间安全之一个WH的超前沿全栈技术深入学习之路(10-2):保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali——Liinux-Debian:就怕你学成黑客啦!)作者——LJS
保姆级别教会你如何搭建白帽黑客渗透测试系统环境Kali以及常见的报错及对应解决方案、常用Kali功能简便化以及详解如何具体实现