交互: Write Tag Bit 修改位
点击后对整数 Tag 的指定位置 1、置 0 或取反。选择父 Tag、位号和动作,运行平台负责执行写入。
功能说明
Set 置 1,Reset 置 0,Toggle 取反。插件根据读到的整数计算新值,并将位号和动作交给运行平台。其他程序同时修改控制字时,结果取决于平台与设备的写入方式。显示位状态需另加 State Color 或 Tag Text。
字段配置
编辑器分为 General、Interaction Setup 和 Options:
- Behavior Name 行为名称:给这个行为起个备注名,便于后期辨认。
- Component Name 组件名称:当前图形名,只读、不可改。
- Setup Script:可选。在这里先算好要用的变量或辅助逻辑,留空也行。
- Target Tag 目标标签:必须填承载这些位的“父整数标签”,不要在这里加位下标。纯标签名可不加引号;用变量时按表达式写。
- Bit Index 位序号:要改第几位,可选范围 0-31。Bit 0 是最低位(最右边那一位)。
- Bit Action 位动作:Set 置位(置 1)/ Reset 复位(置 0)/ Toggle 取反(0、1 互换),三选一。
- FORCE 写入不可用。打开旧项目时,请复核写入配置并重新保存行为。
- Condition 条件(Enabled):相当于开关,结果为 true 才执行、false 则跳过本次点击。
- Options 选项:Show hand cursor when enabled(启用时显示手型光标)、Use bold border when enabled(启用时加粗描边)、Hide when disabled(禁用时隐藏)。
TextText
Target Tag: PLC_LINE01.PUMP01.CTRL_WORD
Bit Index: 3
Bit Action: Toggle
Condition: ReadTagBoolean("PLC_LINE01.PUMP01.REMOTE", false)
适用场景
用于在一个整数控制字中按位存放多个开关的设备。
- “启动/停止”按钮:用 Toggle 翻转控制字里的运行位,一个按钮在线启停。
- 复位某个报警确认位:用 Reset 把指定位清零;或用 Set 把使能位置 1。
- 想用条件限制点击时机时,在 Condition 里判断(例如只在远程模式下才允许翻位)。
注意事项与常见错误
- Tag 要填承载这些位的父整数标签,不要在标签名后面再追加 [位号],位号由 Bit Index 单独指定(位下标 [0..31] 那种写法是读取时用的,写位不用)。
- 位序号从 0 起算,最低位为 0。只选父 Tag 实际支持的位:8 位为 0–7,16 位为 0–15,32 位为 0–31;编辑器允许 0–31 不等于已校验设备位宽。64 位整数父 Tag 不支持此位写入口。
- 写入不一定立即生效:宿主机可能加权限校验、二次确认、原因填写或异步处理,不要假设“点了就一定成功、一定同步”。
- Condition 留空时默认按 true 处理(会执行)。
图示 1: Write Tag Bit 编辑器
选择父整数 Tag 和 Bit Index,再选择 Set、Reset 或 Toggle;在运行平台核对写入结果。