VeriStand部署Customer Device时出现报错1003

更新 Sep 22, 2020

适用于

软件

  • VeriStand
  • ECU Measurement and Calibration Toolkit
  • LabVIEW Electric Motor Simulation Toolkit

问题详述

我有一个VeriStand项目,其System Definition File中包含一个Customer Device。将项目部署到目标控制器时,出现以下部署错误:
The VeriStand Gateway encountered an error while deploying the System Definition file.

Details:
Error 1003 occurred at Project Window.lvlib:Project Window.vi >> Project Window.lvlib:Command Loop.vi >> NI_VS Workspace ExecutionAPI.lvlib:NI VeriStand - Connect to System.vi

Error Message:LabVIEW:The VI is not executable.Most likely the VI is broken or one of its subVIs cannot be located. Select File»Open to open the VI and then verify that you are able to run it.

解决方案

该错误有几种可能的原因:
1.您的目标控制器可能缺少您正在使用的自定义设备的软件,驱动程序或API依赖项。
2.您的内存可能已用完,无法容纳VeriStand项目的所有自定义设备,模型和其他组件。
3.Customer Device的源分发/构建规范存在问题

  1. 确保在目标上安装了Customer Device使用的所有依赖项。如果您使用的是VeriStand插件社区中或VeriStand开源插件GitHub上的Customer Device,请参阅自定义设备的Readme文件以获取依赖项列表。
注意:虽然可以通过NI MAX安装某些依赖项(例如NI设备驱动程序),但您可能需要手动将任何第3方库转移到target

下面列出了一些NI支持的Customer Device,它们可能会引发此错误:
部署使用XCP / CCP主自定义设备的VeriStand项目,而RT目标上未安装NI ECU测量和校准工具包
部署使用电动仿真自定义设备的VeriStand项目,而RT目标上未安装NI电机仿真工具包
  1. 如果所有依赖项都已加载,请确认您的设备没有内存不足。首先监视系统的内存使用情况 。如果目标看起来似乎已达到其内存容量的最大值,则可能需要最小化设备上运行的组件数量;如果目标仍以最小的负载耗尽了内存,则可能需要考虑使用更多的目标您的项目的RAM。
  2. 此问题是由“生成规范”中的设置引起的,尤其是“其他排除项”。
    a. 右键单击LabVIEW Project中Build Specification下的Source Distribution,然后选择Properties
    b。在左侧,选择其他排除
    C。确认未勾选Exclude files from vi.libExclude files from instr.lib和Exclude files from user.lib。

相关信息

NI VeriStand中使用的许多Customer Device都依赖于其他软件,驱动程序和API,而这些软件,驱动程序和API通常可能未安装在运行VeriStand引擎的计算机或NI Real-Time目标控制器上。如果目标中缺少这些依赖关系中的一个或多个,则Customer Device在部署期间初始化过程中将引发error 1003。