LabVIEW监控实时嵌入式目标上的CPU和内存使用情况

NI实时(RT)控制器上有不同的用于监测CPU和内存使用情况的不同选项。可用内存量取决于多个因素,包括已安装的软件和用户应用程序内存要求。

本文将介绍从Windows操作系统访问此信息的不同方法:

以编程方式使用LabVIEW 2012及更高版本

外部使用用Measurement& Automation Explorer(MAX)(仅内存)

外部使用NI分布式系统管理程序(DSM)(LabVIEW2009或更新版本)

外部使用实时跟踪查看器

LabVIEW8.6.x及更早版本

对于Linux实时控制器,内存管理和报告与其他实时目标不同。有关如何实现内存监控的信息,请参阅NILinux实时操作系统目标的内存报告问题。

使用LabVIEW2012及更高版本:使用系统配置API,您可以使用系统属性节点获取内存使用信息,使用系统属性节点获取内存使用信息,使用硬件属性节点获取内存和CPU

使用详细信息。有关如何使用硬件和系统属性节点的更多信息,请参阅LabVIEW中的资源Monitor.vi示例,方法是转到帮助>>查找示例...,并在NI示例查找器加载后,浏览至硬件输入和输出>>系统配置。




pho 监控内存 实时监控内存_pho 监控内存


外部使用Measurement& Automation Explorer(MAX)(仅内存):

1. 打开最大。您可以通过选择开始»程序»NI»测量与自动化来执行此操作。

2. 在“配置”窗口中展开“远程系统”。

3. 选择您的实时控制器。

4. 在主窗口中,选择“系统设置”选项卡。此选项卡包括总内存和可用内存,以及总磁盘空间和磁盘上的可用空间量。


pho 监控内存 实时监控内存_LabVIEW编程_02


外部使用NI分布式系统管理器(DSM)(LabVIEW2009或更新版本):

1. 打开分布式系统管理器。您可以在Windows中选择开始»程序»NI»分布式系统管理器,或从LabVIEW单击工具»分布式系统管理器来执行此操作。

2. 在“配置”窗口中展开“网络项目”。

3. 选择实时控制器的IP地址。

4. 选择CPU/内存选项卡,然后在自动视图中查看内存使用情况。


pho 监控内存 实时监控内存_LabVIEW_03


还可以选择保存“可用内存”值的单个共享变量以查看可用内存。


pho 监控内存 实时监控内存_pho 监控内存_04


注意:如果在NI分布式系统管理器中看不到此信息,请参阅NI分布式系统管理器中不可见的CPU和内存使用情况,并确保系统状态发布器已安装在实时控制器中。

在外部使用实时跟踪查看器:

监视RT目标上的CPU使用情况的另一个选项是使用实时跟踪查看器。使用实时跟踪查看器,您可以创建执行跟踪,以便查看内存分配、CPU使用情况和线程调度。实时跟踪器包含在LabVIEW2014实时模块及更高版本中。2014年之前的LabVIEW实时模块将实时跟踪观察器打包为一个独立的工具包(即实时执行跟踪工具包)。有关使用实时跟踪查看器的详细信息,请参阅使用实时跟踪查看器调试多核应用程序。

LabVIEW版本8.6及更早版本:

LabVIEW7.1,8.0,8.2.x,8.5.x,8.6.x:

实时系统管理器显示有关在RT目标上运行的VI的详细信息,并提供目标性能的动态显示。这将提供内存使用情况的最详细视图。

LabVIEW7.0:

选择操作»RT引擎信息以查看RT引擎的内存使用信息。您将看到总内存和可用内存。

LabVIEW6.0.2,6.1:

将以下行添加到主机上的labview.ini文件,然后重新启动LabVIEW:

目标记忆信息=真

然后,您可以选择操作»RTEngineInfo以查看RT引擎的内存使用情况。

附加信息

LabVIEW实时控制器上的可用内存量取于多种因素,包括安装的软件和用户应用程序内存需求。

对于Linux实时控制器,内存管理和报告与其他实时目标不同。有关如何实现内存监控的信息,请参阅NILinux实时操作系统目标的内存报告问题。

如果您使用LabVIEW2009及更高版本,则可以使用RT获取CPU负载和RT获取内存使用VI以编程方式监测CPU和内存使用情况。


pho 监控内存 实时监控内存_pho 监控内存_05


如果您使用的是LabVIEW8.6或更早版本,而不是NI分布式系统管理器,则需要使用实时系统管理器。

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