数据转换 (DTR)

此信息适用于
CompactLogix
5370、
ControlLogix
5570、
Compact GuardLogix
5370、
GuardLogix
5570、
Compact GuardLogix
5380、
CompactLogix
5380、
ControlLogix
5580、
GuardLogix
5580 和 ControlLogix 5590 控制器。
DTR 指令将 Source 值经 Mask 屏蔽码处理,再将结果与 Reference 值进行比较。
DTR 指令还会将经屏蔽处理的 Source 值写入 Reference 值,以便进行下一次比较。Source 保持不变。
屏蔽码中的“1”表示将传递相应的数据位。屏蔽码中的“0”表示会阻止相应的数据位。
使能后,置位的 Mask 位会传递数据的相应位;清零的 Mask 位会屏蔽数据的相应位。
如果经屏蔽处理后的 Source 与 Reference 不同,EnableOut 将变为真,且持续一次扫描的时间。如果经屏蔽处理后的 Source 与 Reference 相同,EnableOut 为假。
重要提示: 使用此指令进行联机编程会出现危险。如果 Reference 值与 Source 值不同,EnableOut 将变为真。应谨慎在处理器处于运行或远程运行模式时插入此指令。
可用语言
梯形图
操作数
梯形图
操作数
类型
格式
说明
Source
DINT
立即数
标签
要与参考数组进行比较的数组
Mask
DINT
立即数
标签
要屏蔽或传递的位
Reference
DINT
标签
要与源数组进行比较的数组
输入立即数屏蔽码值
输入屏蔽码时,编程软件默认使用十进制值。如果要输入其他格式的屏蔽码,可在数值前加上相应的前缀。
前缀
说明
16#
十六进制(例如,16#0F0F)
8#
八进制(例如,8#16)
2#
二进制(例如,2#00110011)
影响数学状态标志
严重/轻微故障
没有特定于此指令的故障。有关操作数相关的故障,请参阅 常用属性
执行
梯形图
条件
Action
预扫描
Reference = Source AND Mask。
梯级输入条件为假
Reference = Source AND Mask。
梯级输入条件为真
请参见“DTR 流程图(真)”
后扫描
不适用
DTR 流程图(真)
示例
梯形图
启用后,DTR 指令将屏蔽 value_1。如果经屏蔽处理的两个值不同,则 EnableOut 设置为真。
在示例 1 中,由于参考值等于 sourcevalue_1 AND Mask,因此 EnableOut 将始终设置为假。在示例 2 中,出于某种原因源值发生变化,reference_value 不等于 source_value AND Mask,在这种情况下,EnableOut 将设置为 TRUE,引用值将更新为源值和屏蔽码之间与运算的结果。因此,前次扫描中的参考值为 183,而当前扫描中则为 187。检测到值变化时,梯级仅在一次扫描的时间内保持为真,因为在下次扫描时只要源值不发生变化,梯级就会保持为假,原因是参考值将再次等于源值与屏蔽码之间与运算的结果。
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal