LabVIEW 主流架构框架选型 点击:7 | 回复:0



fjczd

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:1699帖 | 125回
  • 年度积分:413
  • 历史总积分:4609
  • 注册:2008年8月14日
发表于:2026-05-31 20:45:45
楼主

LabVIEW 自动化测试与工业控制领域衍生出DQMH、AF、JKI SMO、DCAF、Messenger Library、Glued等主流架构框架,适配不同项目规模、开发门槛与硬件场景。各框架基于消息传递、状态机、Actor 模型、事件订阅等核心范式设计,在并发调度、IO 管理、网络通信、开发门槛、扩展性上差异显著,开发者需结合团队技术栈、项目复杂度、实时性需求及硬件平台合理选型,同时规避框架固有设计缺陷与使用误区。

一、核心框架基础背景与定义

LabVIEW 作为图形化编程工具,广泛应用于 ATE 测试、工业 RT 控制、嵌入式采集等场景,随着系统多任务并发、模块化复用需求提升,原生基础架构无法满足中大型项目,社区与 NI 衍生出多款标准化开发框架,分为消息队列类、Actor 模型类、IO 专用类、自定义事件驱动类四大类别,均以解耦模块、统一通信、简化并发为核心设计目标。

二、各框架特点、适用场合与注意事项

1. DQMH(增强队列消息处理器)

  • 核心特点:基于原生 QMH 优化,依托用户事件实现模块异步通信;内置脚本工具、API 调试器,低门槛无需深入 OO 思想;社区生态完善,支持多实例并行。

  • 适用场合:中小型多模块并行测试系统、TestStand 集成项目、新手团队快速开发、老旧代码重构。

  • 使用注意:自定义消息需多位置配置,依赖脚本工具降低重复工作量;复杂层级逻辑易出现耦合,需规范模块接口定义。

2. AF(NI Actor Framework)

  • 核心特点:纯面向对象 Actor 模型,模块完全解耦;支持海量并行进程调度,内存占用优化好;适合高可靠性安全级项目。

  • 适用场合:半导体测试、多工位并发高精度控制系统、大规模分布式异步任务。

  • 使用注意:类结构繁杂,代码阅读与调试成本高;天然适配并发,顺序流程需额外开发调度逻辑,易出现逻辑冗余。

3. JKI SMO(状态机对象框架)

  • 核心特点:状态机与对象结合,兼顾流程顺序控制与模块化;可通过开发规范模拟 Actor 通信模式。

  • 适用场合:流程固定的工控顺序控制、中等复杂度时序逻辑项目。

  • 使用注意:引用类数据易引发竞态条件与隐性 Bug,需严格制定开发编码规则;无原生脚本支持,自定义消息开发效率偏低。

4. DCAF(分布式控制应用框架)

  • 核心特点:专注 CompactRIO 等 RT 硬件 IO 管理,支持标签化配置、CSV 批量管理 IO 点位;适配海量 IO 采集场景。

  • 适用场合:工业现场大规模 IO 监控、cRIO 实时采集控制系统、串行 / Modbus 仪器驱动管理。

  • 使用注意:无内置事件与消息触发器,用户指令触发需借助标签状态变通实现;动态模块开发难度大,底层源码规范性一般,二次维护需自行修复漏洞。

5. Messenger Library(信使库)

  • 核心特点:通用化消息通信框架,支持队列、事件、TCP/UDP 多通信方式;请求 - 回复、发布 - 订阅、散射 - 收集多通信模式;弱类型通用消息,无需频繁定义自定义数据类型。

  • 适用场合:跨进程、跨网络分布式通信项目、中小型自定义 Actor 架构、多协议消息中转系统。

  • 使用注意:运行时类型匹配依赖开发规范,无编辑期类型校验;不强制 OO 设计,大型项目易出现架构混乱。

6. Glued(自定义全局事件驱动架构)

  • 核心特点:基于用户事件发布订阅模型,变体属性承载事件数据;Actor 默认非可重入,便于 RT 调试;支持远程跨目标机 Actor 调度、全局数据只读隔离。

  • 适用场合:定制化中大型 RT 实时测试系统、需本地与远程混合调度的 Actor 项目。

  • 使用注意:架构定制化程度高,无通用社区支持;小项目从零开发易遗漏内置核心特性,建议统一复用模板工程。

7. 通用架构(QMH / 状态机 / SOA 服务架构)

  • QMH:原生队列消息架构,结构简洁,适合简单异步任务、单模块 UI 交互;注意模块增多后耦合度飙升,不适合大型项目。

SOA 面向服务架构:模块化独立服务,通过类 SCPI 字符串 API 通信,可跨项目移植;适合多子系统拆分的大型平台,需自定义执行引擎调度消息。

三、主流框架功能对比

表格

框架

开发门槛

并发能力

网络通信

IO 管理能力

调试便捷性

适合项目规模

DQMH

中高

一般

普通

优(自带调试器)

中小大型

AF

极高

普通

差(类结构复杂)

大型超大型

JKI SMO

一般

普通

中型

DCAF

极强

工业 IO 专项

Messenger Library

极强

普通

分布式通信

Glued

优(适配 RT 调试)

定制化中大型

四、实际应用案例说明

  1. 汽车零部件 ATE 测试:采用DQMH+JKI SMO组合,12 个并行测试模块基于 DQMH 实现消息交互,时序流程控制依托 JKI SMO,适配多工位同步测试,兼顾开发效率与流程稳定性,可无缝对接 TestStand 序列调度。

  2. cRIO 工业实时采集:以DCAF为底层管理数百路模拟量、数字量 IO,上层封装自定义消息子系统弥补无内置事件缺陷,实现 IO 标签配置、数据采集与阈值告警一体化。

  3. 分布式远程测控系统:基于Messenger Library搭建,利用 TCP 通信模式实现上位机与多个 RT 目标机消息交互,采用请求 - 回复模式完成指令下发与数据回传,无需定义复杂自定义数据类型。

  4. 半导体晶圆测试设备:选用AF 框架,依托其海量并发调度能力,支撑上百个异步 Actor 独立运行,模块完全解耦,满足高可靠、高精度的并行测试需求。

  5. 定制化实验室综合测试平台:采用Glued 架构,复用模板工程内置错误、配置、探针专用 Actor,支持本地与远程 RT 设备联动,非可重入设计保障现场调试与故障定位效率。

五、框架选型核心建议

  1. 新手团队、快速原型、TestStand 集成优先选DQMH

  2. 高可靠大规模并发、安全关键项目选用AF

  3. 工业海量 IO、cRIO 硬件专属场景必选DCAF

  4. 跨网络、多协议消息通信优先Messenger Library

  5. 有定制化开发能力、RT 混合调度项目可自研Glued 类事件驱动架构

  6. 避免盲目从零搭建架构,小项目也建议复用成熟框架模板,减少后期功能补全与架构重构成本。





热门招聘
相关主题

官方公众号

智造工程师