概览
功能原型系列是一个文档集,你可以通过它来了解原型过程。请阅读关键概念,原型的优势,关于产品选择的讨论以及其它技术资源。
装备与测试
开发原型的一个目的是为了快速地向潜在的客户、投资者和同行展示一个想法和其设计。另一个同样重要的原因在于原型能用来测试并验证基本的软件和硬件性能。通常,只有当你设法将一个功能型原型的电子器件、软件和机械部件结合在一起时,问题便会凸显。
通过原型阶段的完整测试,你能在问题将要导致巨大损失或无法修复之前就发现它们。原型测试为性能索赔的备份提供了具体的证据,并且使你自信地将更加可靠的产品付诸实施。
优势
* 提高整体质量–通过将系统发挥至极限来为你的嵌入式原型I/O进行信号完整性测试。
* 提高可靠性 –请确认你的嵌入式原型可以承受极限条件而不产生错误,并对防止产品发生过载的安全系统进行测试。
* 提高算法性能 – 通过在产品开发周期中通过测试和排除一切异常状况来提高你的嵌入式程序的效率。
创建一个软件测试平台
软件测试方法
软件定义的仪器本身十分灵活且易于实现自动化。所以,当今的产品设计团队可以通过减少人工测试的小时数和尽量减少实验用的仪器数量来简化开发过程。
有了NI LabVIEW图形化软件平台,你可以轻松地设置简单的程序以测试主要算法的质量和可靠性。原型的时候,请注意测试中主要的两个方面:
1. 极限测试——请确定软件设计提供了I/O通道整个范围内的高质量数据。这将使原型在整个产品开发周期内都符合质量标准。
2. 压力测试——请确定在长期使用后或当所有I/O通道同时达到极限时都可以符合质量标准。算法要足够鲁棒从而能考虑到有过载数据正在处理时的情况。
通过使用模拟 VI以使软件算法达到极限,从而进行无需硬件的测试。你可以在LabVIEW 中通过使用不同的信号生成VI或开发能准确描述实际I/O的VI来轻松地实现测试。
图1. I/O 模拟方法
随着计算机的发展,通过模拟I/O,你无需使用任何硬件就可以完整地测试软件。简单而有效的I/O模拟方法有以下几种:
* 信号产生VI –LabVIEW有一个特定的函数面板用来产生信号。从种类繁多的VI中选择以有效地模拟I/O。
* 定制VI –有了高级的LabVIEW图形化编程环境,开发能描述I/O的测试平台VI变得十分简单。
* 现有数据 –LabVIEW具有从许多文件类型和数据库中提取数据的功能。有了LabVIEW, 你可以使用模型化数据来为I/O模拟数据点。
使用I/O节点模拟进行嵌入式FPGA测试
开发具有嵌入式现场可编程门阵列(FPGAs)的原型是件棘手的事情,它的开发技术与FPGA硬件和计算机软件不同,主要原因有三:
1. 编译时间——你需要大量的时间将一个设计编译成硬件代码并在FPGA上运行。同时,通常需要采用多次编译来寻找程序错误。
2. 硬件中不具备典型的LabVIEW调试功能——一旦在硬件中运行代码,或者说代码即硬件,你将无法进行单步,过程高亮,设置断点等动作。
3. FPGA可高速并确定性地执行——FPGA被用在高速和确定性应用中。因此,设计者通常关注的是在FPGA的每个时钟周期时所发生的情况,要么是纯粹的性能原因,要么是描述并行任务间的同步性。
LabVIEW FPGA为通过模拟I/O或使用真实I/O进行的基本FPGA算法测试提供了强大功能。
* 在有模拟I/O的开发计算机上执行VI –当你按下运行箭头时,FPGA VI就在PC上运行。你可以选择使用随机数据或定制I/O将测试平台VI写入以确定输入和捕获输出。
* 在有真实I/O的开发计算机上执行VI –这时,仅NI R系列内插设备才具备该功能。当程序在FPGA I/O节点执行时,这个选项在PC机上运行VI并将一个固定的性能下载到R系列设备以进行I/O采样。在早期测试和原型开发中,这是非常有用的,但是,请记住:I/O是软件定时采样,很有可能无法代表你真正预想VI应该使用的时间。
* 注意: 使用真正的I/O需要硬件。
使用数据采集来测量I/O
由于软件测试不能提供使用真实硬件的同样感觉,因而具有局限性。有了LabVIEW,你可以使用商用现成硬件去实现真实的I/O测试。
通过使用数字万用表或数据采集设备,你可以轻松地调试物理硬件I/O。LabVIEW与NI-DAQmx设备相结合,从而为执行复杂的数据采集任务提供一个简单易用的高级接口。
图2. 使用DAQ进行测试
使用DAQmx Express VI:
* 测量嵌入式原型的物理输出并分析信号的质量和可靠性
* 为嵌入式原型提供实时信号以使软件算法达到极限并对测试系统加压
完全系统试验台
系统ID
LabVIEW系统识别工具包不仅是一个VI库,还是一个基于大量原始数据开发系统模型的助手。有了这些工具,你可以完成整个系统的识别,从分析原始数据到验证识别模型。你可以在更少的时间内,使用该系统识别助手来开发能够反映某种特定动态系统行为的模型。
系统识别是一种基于所测量激励和响应数据而开发动态系统数学模型的方法。你能够在许多应用中使用系统识别,包括机械工程,生物学,生理学,气象学,经济学和基于模型的控制设计等。
基于模型的控制设计过程通常包含有识别对象模型,分析并综合控制器,模拟闭环系统,将控制器应用到实时硬件中等过程。
LabVIEW系统识别工具包:
* 帮助你从真实数据中识别高阶系统中的大型多变量模型
* 提供两种工具,一个助手和一个VI库,用来识别离散的单输入单输出和多输入多输出线性系统
* 帮助你完成整个系统的识别,从分析原始数据到验证识别模型
* 与其它附加功能相集成,包括LabVIEW实时和LabVIEW控制设计与模拟模块
系统识别工具包提供这样一些VI,你可以用它们从动态系统中预处理原始数据并开发能反映该系统行为的模型。有了数据预处理VI,你可以分析某一特定激励下的动态系统响应。分析完数据后,你可以使用参数模型估计,非参数模型估计,部分已知模型估计,递推模型估计,频域模型估计VI等来估计动态系统的模型。最后,你可以使用模型验证或模型分析VI来确定该模型是否能准确描述系统的动态特性。
硬件在环(HIL)应用
嵌入式控制系统在控制一个典型机械系统的不同元件时发挥了重要的作用。实际测试之前的系统软件模拟并不总是有用的,因为模拟不能随实际的模拟和数字信号而实时运行。这一难题迫使我们在最后部署前,采用HIL模拟作为测试嵌入式控制系统的标准方法。
测试一个完整的嵌入式原型可能会很困难,特别是当你要测试整个系统的所有元件间的相互作用时。测试原型嵌入式控制系统时,安全性,可用性或成本考虑都能令使用完整系统进行必要的测试变得不切实际。你可以使用HIL模拟来仿真带来这些挑战的系统部件,这将使你在真实的整体系统测试前,在虚拟环境中彻底地对嵌入式控制设备进行测试。有了这个功能,即使你的测试系统变得更加复杂,你也能合算地保持可靠性和市场投放时间的要求。
图 3. 一个包含有三个主要元件的HIL测试系统:一个软件接口, 一个实时处理器和一个I/O接口
在较短的时间内快速投放市场、更好的可靠性以及日益复杂的产品等多方面带来的挑战使得人们迫切需要HIL测试平台的帮助:
* 在主机上配置并监控用户界面和诸如NI VeriStand的测试管理工具
* 使用实时模拟器,在嵌入式控制器和测试系统之间产生真实的电气交互
* 设置物理负载和故障插入测试——HIL测试系统可以精确地模拟真实的条件并测试故障情况下的反应
LabVIEW图形化开发环境和NI PXI模块化的硬件平台是建立HIL系统以实现高度逼真的控制器测试模拟的理想工具。
图4. 图形化系统设计
NI VeriStand是一个为了配置包含HIL测试的实时测试应用的软件环境。它可以帮助你配置多核实时引擎来执行下列任务:
* 基于模拟、数字、通信总线和现场可编程门阵列(FPGA)的I/O
* 触发、多文件数据记录
* 产生实时激励
* 计算通道
* 事件报警和报警响应例行测试
NI VeriStand也可以输入控制算法并在LabVIEW软件和第三方环境中仿真模型。你能使用一个运行时可编辑的用户界面来监测这些任务并与其交互,这个界面包括了许多有用的工具来进行强制赋值、报警监控、I/O校准和激励文件编辑等。使用NI VeriStand时无需任何编程知识,它可以被定制和扩展到多种软件环境下,如NI LabVIEW, NI TestStand, Microsoft Visual Studio .NET, C/C++, 和Python等。
下一步
NI提供了大量的嵌入式原型测试工具。将LabVIEW平台和NI-DAQmx , NI VeriStand结合在一起可以帮助你彻底地对质量、可靠性和整个产品开发周期的表现进行测试。
评论
查看更多