数据读取: 计算 Tag:按名称读取宿主计算结果
ReadCalculatedTag(name, fallbackValue?) 读取 Mingcedar 已发布计算 Tag 的最新可用结果。只填写保存的名称,无需选择 PLC,也不执行页面侧计算公式。
1. 方法与适用字段
在函数选择器 Calculated Tag / Read 中选择读取方法,可用于动画 Value、Condition、Script Text 和页面脚本。全局方法与 hqVisuDesigner.ReadCalculatedTag 使用同一读取规则。
TextText
ReadCalculatedTag("Line01TotalFlow")
ReadCalculatedTag("Line01TotalFlow", null)
ReadCalculatedTag("Line01Ready", false)
hqVisuDesigner.ReadCalculatedTag("Line01TotalFlow", null)
2. 名称规则与只读边界
按 Mingcedar 列表中保存的计算 Tag 名称填写。Line01TotalFlow 不需要添加 PLC 或 CALC 前缀;若保存的名称本身为 Line01.TotalFlow,则完整保留该名称。计算 Tag 没有写入方法,不作为 Input 的 PLC Tag 写入目标。
- 名称总长度不超过 128;支持英文字母、数字、下划线和分隔点,各段以字母或下划线开头。
- 不支持 [0] 等位后缀。
- 同名普通 Tag 不会被此方法作为计算结果读取。
- 修改草稿名称后尚未发布时,页面继续使用原已发布名称;完成发布后再同步页面名称。
3. 默认值与数据质量
结果有效且质量为 good 时,返回数值或布尔值,并保留 0 和 false。未加载、未发布、停用、质量异常、无权限或订阅不可用时,返回指定默认值;未指定默认值时返回 null。默认值用于显示处理,不代表有效计算结果。
- 显示缺失数据时,可选择 null 并显示“--”,避免将不可用结果显示为正常零值。
- 条件字段需要布尔默认值时,可使用 false。
- 可用
ReadTagQuality("Line01TotalFlow") 查看质量;质量与工艺报警是不同含义。
4. 模板、名称变量与结果变量组合
模板参数 CALCULATED_TAG 填 Line01TotalFlow,Setup Script 读取替换后的名称,Display Text 显示结果。共用参数须满足所有引用字段的要求;计算 Tag 与 PLC 写入目标应分别使用 CALCULATED_TAG、SETPOINT_TAG。示例代码按注释填入对应字段。
JavaScriptJavaScript
// Setup Script
var calculatedTagName = "<CALCULATED_TAG>";
var totalFlow = ReadCalculatedTag(calculatedTagName, null);
// Script Text 的 Display Text
totalFlow === null ? "--" : totalFlow.toFixed(1) + " m³/h"
5. 运行检查
先在宿主确认计算 Tag 已发布、启用且质量正常,再检查页面中的名称和访问权限。名称来自变量时,确认其最终值是完整名称字符串。读取复用宿主最新值和订阅,不会额外轮询 PLC。