VeriStand的口头机制

本次技术分享引见VeriStand的口头机制以及该机制下 信号 传输的提前,当 仿真 测试对信号提前有必定要求时,思考VeriStand口头机制的影响是必要的,如今请追随小编的步调一同窗习吧!

本文 教程

VeriStand口头机制

一、 配件 单点采样

VeriStand参与通道时自动经常使用的是配件单点采样形式,该形式下采集数据不会在缓存中逗留期待,这是由于配件单点采样形式不带缓冲机制,无需期待采集到特定个点数后再读取。

在VeriStand中设置配件单点定时采集时,将经常使用机箱背板提供的 时钟 来同步和AO 。如下图,配件定时同步降级 I/O形式下AI采集的值经过了R、P、W步骤后,须要期待下一次性时钟的回升沿能力由AO输入,即AI、AO操作须要与时钟信号对齐。

二、VeriStand的上班机制和提前

1、并行口头形式

在并行口头形式下,经常使用配件定时同步降级 I/O,AI和AO须要与时钟对齐,AO输入的是上一次性PCL主循环(Primary Control Loop)中AI读取并经模型处置的值,所以存在一个PCL口头期间的提前,关于10k 模拟 频率的状况,提前为100μs。

详细原理如上图,模型的口头结果间接传输到下一PCL主循环,AI、AO都对齐来自机箱背板的时钟信号成功同时口头,但AO输入的是上一个PCL的口头结果,环节中有一个PCL口头周期的提前。

2、低提前口头形式

低提前口头形式下,AI采集到值并经过模型运算后立刻传到AO输入,无需期待到下一次性PCL再启动AO输入;AI在采样时钟的回升沿启动采集,AO期待接遭到模型口头结果后输入,AI到AO的提前约等于模型口头期间(数据的配件传输期间不超越1us)。

此时AI依然严厉对齐时钟,然而AO的降级期间由失掉模型处置结果后对AO赋值的期间节点选择,由于模型的口头速度不是准确恒定,AO的输入节奏会有颤抖,能否发生不良影响由详细状况而定。

3、模型口头顺序Execuonder

当须要口头多个模型且模型之间有数据传递,模型的口头顺序设置会对提前发生较大影响。

还记得之前教程出现过的Execution Order吗,在这里可以设置模型的口头顺序,口头前后顺序按Group分组,自动会把一切模型放到同一分组并行口头。上方经过示用意展现模型口头的机制,论断基于验证明验推导而来。

3.1 模型的并行口头

首先看自动的模型并行口头的状况,假定三个模型从上到下依次传递数据。

三个模型同组的口头机制如上图所示,相似于前文形容的 输入、模型、输入 并行口头形式,只不过这里变成了模型1、模型2、模型3并行口头,即三个模型照旧是同时口头,但每次传递数据到下一个模型都必定期待下一次性PCL主循环。

所以,若VeriStand设置为并行口头,三个模型均在同一Group,则上图中PCL n启动了AI采集并立刻传输给模型1运算,经过传递,最终在PCL n+2中由模型3输入最终计算结构,并在下一次性的PCL n+3中由AO输入,AI到AO有三个PCL周期的提前。

同理,假设VeriStand设置为低提前形式,三个模型依然是在同一Group,那么AI到AO的提前=两个PCL口头周期+模型3的口头耗时。

3.2 模型的分步口头

当模型被布置到前后按顺序口头的一个个Group时,模型的口头机制就相似于上文中形容的VeriStand低提前口头形式。

如上图所示,三个模型不是并行口头,其依照设置的Group顺序前后启动。

若VeriStand设置为并行口头,模型口头顺序依照分组前后口头:AI在PCL n开局时采集,经过三个模型计算,运算结果在PCL n+1开局时由AO输入,AI到AO的提前为一个PCL周期。

若VeriStand设置为低提前形式,模型口头顺序依照分组前后口头:AI在PCL n开局时采集,经过三个模型计算,运算结果在第三个模型口头完结后立刻由AO输入,无需期待到下一次性PCL主循环,AI到AO的提前约等于三个模型的计算耗时。

4、试验验证

感兴味的小同伴可以参考上图的原理设计一个试验来验证本文所提到的两种口头形式的原理和提前。其中,信号出现器发生三角波输入到AI 0,VeriStand采集到AI 0的数据后映射到模型,模型不扭转值并间接输入到AO 0,AO 0输入电压到AI 1,将AI 0、 AI 1、AO 0显示在波形显示面板。

上图统计了各设置下口头时AI 0到AO 0的试验实在提前,本次试验的VeriStand指标频率是1k,1ms等价于1个PCL周期,大家可以自己推导一下实践提前做对比;两设置陈列组合下一切状况的提前都符正当论预设的预期。

以上就是本次分享的一切内容啦,欢迎大家留言探讨,交换分享!

原文题目:VeriStand 口头机制


Ni VeriStand是一种配置实时测试应用程序的软件环境。 即买即用的NI VerStand有助于您配置针对多核处理器的实时引擎,以执行以下任务:模拟、数字、通信总线,和基于现场可编程门阵列(FPGA)的I/O接口可触发,多文件数据记录实时激励生成计算通道事件预警和预警响应程序NI VeriStand 还能够从NI LabVIEW 软件和第三方环境中导入控制算法,仿真模型和其他任务。 您可以使用运行时可编辑的用户界面监测这些任务,并与其交互,该界面包含许多用于强制赋值、警报监控、I/O校准、激励配置编辑的有效工具。 NI VeriStand的使用不需要掌握编程知识,但是可以在多种不同的软件环境进行自定义和扩展,如NI LabVIEW,ANSI C/C++,和其他建模和编程环境。 1. NI VeriStand 面向实时测试应用实时测试中将实时操作系统作为测试系统的一部分。 与使用通用操作系统相比,推动实时测试系统最常见的需求是需要实现更高的可靠性和更高的性能。 实时测试系统的一个实例是硬件回路测试仿真器,在该系统中,必须确定性地执行系统模型,以提供在物理上不属于测试组件的准确仿真。 使用闭环控制的应用程序是另一种实时测试应用。 这些系统必须自动控制测试系统某部分,如温室,通过传感器交互,确定性定点设置的变化以实现达到系统的预想状态。 系统也必须检测并对预警条件迅速地作出 响应,这有助于防止操作人员受伤或对测试系统造成损害。 与这些应用程序类似,测试单元激励和检测应用程序都已经拥有一个完整的控制系统,或者不需要闭环控制,只需要能够提供确定性激励生成和测试单元检测的工具。 这些实时测试应用程序必需的核心功能已经实现,并在NI VeriStand架构上进行了优化——可以配置并使用。 这包括主接口通信、数据记录、激励生成、预警检测和响应,以及算法和模型执行。 在该框架的基础上,您可以通过使用LabVIEW,ANSI C/C++和其他模型和编程环境,向NI VeriStand软件环境添加定制功能。 通过使用NI VeriStand 来建立您的实时测试系统,您既可以缩短开发时间与应用程序维护成本,又能在每次版本升级时,获得软件功能和性能的提升。 至页首2. 用NI VerStand软件环境来开发应用程序NI VeriStand 实时测试应用程序通常包括一个或多个实时执行目标,这些目标通过以太网与主机系统进行通信。 每个实时执行目标运行NI VeriStand 引擎,该引擎通过Windows主系统进行配置,通过以太网部署。 一旦您的NI VeriStand引擎配置完成部署,您就可以使用NI VeriStand 工作区窗口和其所提供的工具,如激励配置文件编辑器,在运行时与您的测试系统进行交互。 当开发和运行NI VeriStand应用程序时,您可以使用三个主要窗口:系统资源管理器,工作区,和激励配置文件编辑器。 系统资源管理器您可以使用系统资源管理器窗口来创建一个系统定义。 该系统定义包含了执行NIVeriStand引擎任务的设置选项,如硬件I/O,还有从其他程序或模型环境中导入的功能。 您可以通过添加选项到位于系统资源管理器左侧的系统定义树上,和在右侧窗口的配置选项上设置选项,进行系统的定义。 一旦系统定义完成,您就部署了您的执行目标的系统定义,并开始使用NI VeriStand 工作区来创建一个针对您的测试系统的运行界面。 SysExp - 工作区工作区是部署后的系统定义用户界面。 使用该运行时可编辑的用户界面,您可以放置界面输入控件和显示控件,并将它们映射到您的实时应用程序的通道中。 您可以使用多个工作区屏幕,将您的控件和指示组织成您的逻辑组,从而对应各类不同的应用任务,或者仅是为了增加用户界面的可用空间。 用户接入管理功能允许您基于不同用户的登录账号,对不同的用户控制其访问权限。 NIVS 2010 激励配置文件编辑器激励配置文件编辑器是NI VeriStand工作区上的一种工具,用于创建激励生成,以及记录部署于NI VeriStand引擎、对测试配置文件确定性执行的任务。 激励配置文件是通过指定一组NI VeriStand实时引擎将会执行的激励生成步骤而创建的。 在您的激励生成器中,产生波形、回放数据、设置通道值有多个步骤,以及执行分支和循环结构有一个条件步骤。 您还可以以独立的日志速率添加多个日志任务和激励条件到您的激励配置文件中。 例如,对于变化缓慢的通道,一个日志文件能够以较低的速率采集数据,如果在测试期间,触发条件发生,那么另一个日志文件能够被设置为较高的速率进行采集数据。 激励配置文件在NI VeriStand实时引擎中执行,然而,您可以从主机界面中使用NI VeriStand 工作宏记录,或者使用其他工具,如NI TestStand或Iron Python添加额外的测试自动化功能。 NIVS 2010 Stimulus Profile Editor 除了激励配置文件编辑器,NI VeriStand工作区包括许多其他工具,当与实时测试应用程序协同工作时,这些工具是很有用的。 这些工具可用来检测预警、校准硬件I/O,和强制为通道赋值。 还有一个实时控制浏览器,其能够监控您的实时执行目标的运行状态。 NIVS 2010 Consol 至页首3. NI VeriStand 引擎架构NI VeriStand 引擎是非可见执行机制,负责执行硬件I/O、模型、过程、预警和在系统定义文件中指定的其他测试系统任务。 引擎不但控制整个系统的定时,而且控制NI VeriStand 引擎和工作区的主机之间的通信。 NI VeriStand 引擎包括多个定时循环,其执行定时由硬件事件控制,精度为微妙。 确定性内存缓冲器在不同循环任务间提供通信,不会在引擎执行中引起数据抖动。 采用多循环架构,NI VeriStand引擎自然利用了多核处理器并行处理能力的优势,提升了系统性能。 创建系统定义时,包括在高吞吐量、并行性和低延时、顺序结构间选择的能力,可以配置各种不同的引擎执行设置。 此外,NI VeriStand引擎发布了各种系统参数,您可以在运行时访问。 或者您可以使用NI 实时执行跟踪工具更细致地查看您的应用程序的执行。 引擎的实时I/O任务使用硬件定时,单点I/O结构,是仿真,控制,和逐点分析任务的理想选择。 然而,使用NI VeriStand定制设备可以添加对较高速率,缓冲信号生成和采集的支持,这些内容将会在下一节进行讨论。 NI VeriStand引擎可以在NI PCI,NI PXI实时系统,还有NI CompactRIO和具有128MB或更大 的DRAM RIO接口上的单板RIO上运行。 实时系统使您能够结合同步I/O确定性地执行您的测试——这对于实现闭环控制或与真实组件交互的系统仿真应用程序来说是关键的能力。 然而,对于低性能系统需求或实现模型在环(MIL)或软件在环(SIL)的测试,您还可以在同一台计算机上将NI VeriStand 引擎作为您的用户界面加以运行。 至页首4. 自定义NI VerStandNI VeriStand通过使用基于配置的开发方法,为创建实时测试应用程序提供软件架构。 实时测试应用程序所需要的所有常见任务已经在NI VeriStand引擎内部进行了实现与优化。 然而,您还可以使用LabVIEW和其他软件工具添加功能到您的NI VeriStand应用程序中。 自定义设备您可以使用NI VeriStand自定义设备,通过客户自定义时间经验,向NI Veristand引擎中添加运行时功能。 创建NI VeriStand自定义设备的LabVIEW使用的模板库中,包含针对NI VeriStand数据和定时资源的接口。 这使得自定义设备能够向NI VeriStand 引擎中的本地任务一样运行。 该接口使用方式的示例包括:对第三方硬件I/O接口添加支持,或执行缓冲信号采集,以提供高速率测量。 模型NI VeriStand能够导入您在LabVIEW、MathWorks公司的Simulink®、ITI公司的SimulationX、Gamma技术公司的GT-POWER,和其他建模和编程环境中创建的编译代码。 具有该功能,您可以添加实时闭环控制、系统仿真、信号处理和信号发生器到NI VeriStand应用程序中。 尽管许多软件环境已在NI VeriStand下支持,您还是可以添加产品提供的NI VeriStand模型框架所产生C代码的从而支持其他环境。 FPGA特性当添加实时I/O硬件接口到NI VeriStand中,您可以快速配置各种不同的标准模拟,数字和通信总线接口;然而,NI VeriStand还提供LabVIEW基于FPGA可重配置I/O(RIO)设备的用户定义I/O 硬件。 您可以使用该功能来创建用户定义I/O硬件接口,实现自定义信号处理、仿真、触发和/或 控制任务,并以25纳秒的速率执行,不占用任何您实时应用程序的处理带宽。 此外,因为I/O 接口是基于FPGA的,您可以很容易地重新配置特性或设备的行为,以适应新的需求,或者创建能够用于多个应用程序的测试系统,而不需要改变I/O接口硬件。 工作区工具NI VeriStand 提供了许多工具,您可以使用这些工具来监测NI VeriStand引擎,并与之进行互动。 您可以使用LabVIEW 来创建您自己的运行工具,将它们添加到NI VeriStand工作区中。 例如,您可以创建一个自定义运行工具,该工具与数字万用表或示波器交互,提供专门测试数据作为验证程序的一部分。 工作区对象当与运行可编辑工作区协同工作时, 您可以添加各种不同的输入和输出控制和指示到工作区上,并将它们与NI VeriStand通道连接。 尽管NI VeriStand包含各种不同的工作区对象,您仍需使用LabVIEW来创建能够在运行时被加入NI VeriStand工作区的自定义控制和指示。 其中的一些实例包括添加更接近系统界面的UI对象,或用自定义功能创建UI对象,如顺序处理或预警。 API 库NI VeriStand为工作区和系统资源管理器 提供基于的API,您可以使用该API 来创建NI VeriStand自定义接口,或实现配置和/或NI VeriStand应用程序操作的自动化。 例如,您可以使用系统资源管理器API库来创建一个自定义配置窗口,限制用户对NI VeriStand应用程序作出改变,或使应用程序参数指定在表格中,以简化配置过程。 此外,您可以使用工作区API 库使NI VeriStand应用程序操作进行自动化,或使用LabVIEW软件创建一个完全的自定义运行接口。

© 版权声明
评论 抢沙发
加载中~
每日一言
不怕万人阻挡,只怕自己投降
Not afraid of people blocking, I'm afraid their surrender