LabVIEWCompactRIO 开发指南15
托管和监控网络发布的共享变量
托管
要使用网络发布的共享变量,共享变量引擎必须在分布式系统中的至少一个节点上运行。网络上的任何节点都可以读取或写入共享变量引擎发布的共享变量。所有节点都可以在不安装共享变量引擎的情况下引用变量,并且,对于实时控制器,需要一个小型的可安装变量客户端组件来引用托管在其他系统上的变量。
还可以让多个系统同时运行共享变量引擎,从而允许应用程序根据需要将共享变量部署到不同的位置。
决定在分布式系统中部署哪些计算设备和宿主网络发布的共享变量时,必须考虑以下因素。
共享变量引擎兼容性
分布式系统中的一些计算设备可能不支持托管共享变量引擎,包括Macintosh、Linux和Windows CE系统。有关兼容系统和平台的列表,请参阅LabVIEW帮助中的“NI-PSP网络技术”部分。
可用的资源
托管大量网络变量会占用CompactRIO系统的大量资源,因此对于大型分布式应用程序,NI建议将一个系统专门用于运行共享变量引擎。
所需的功能
如果应用程序需要LabVIEW DSC功能,那么这些变量必须托管在运行共享变量引擎的Windows机器上。
可靠性
一些托管的进程变量可能对分布式应用程序至关重要,因此它们从运行在可靠的嵌入式操作系统(如LabVIEW Real-Time)上受益,从而提高系统的整体可靠性。
结论
如果希望使用网络变量直接向实时目标上的时间关键循环发送数据或从该循环发送数据,则必须启用RT FIFO以确保确定性数据传输。只能在实时目标上托管启用RT FIFO的网络变量。
动态访问变量
当在应用程序中使用网络变量作为可执行文件部署到多个CompactRIO目标时,应该考虑使用Programmatic Shared Variable API来访问客户端上的网络变量,而不是共享变量节点。可编程共享变量API公开了要部署到的CompactRIO目标的位置,这可以防止以后发生部署问题。动态API还可以帮助您在高通道数应用程序中创建干净、可扩展的框图。
图4.9 可编程共享变量API
动态访问网络变量的路径名与Windows网络共享名类似,如“//machine/myprocess/item”。下面是网络变量引用的其他示例:
//localhost/my_process/my_variable
//test_machine/my_process/my_folder/my_variable
//192.168.1.100/my_process/my_variable
监测变量
NI分布式系统管理器为监控网络上的系统和管理发布的数据提供了一个中心位置。在系统管理器中,可以访问网络发布的共享变量和I/O变量,而无需使用LabVIEW开发环境。
图4.10 NI分布式系统管理器
使用NI分布式系统管理器,可以写入网络发布的共享变量,这样就可以远程修改和调整进程设置,而不需要明确的专用HMI。还可以通过NI分布式系统管理器实时监控和管理控制器故障和系统资源。从LabVIEW中,选择Tools»Distributed System Manager来启动系统管理器。
需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。