转换为 BCD (TO_BCD)
下表列出了支持此指令的控制器和应用程序。
架构 | 标准应用程序 | 安全应用程序 |
|---|---|---|
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器 | 是 | 否 |
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器 | 是 | 是 |
TO_BCD 指令将十进制值(0
Source
99,999,999)转换为 BCD 值,并将结果存储在 Destination 中。
Source
99,999,999)转换为 BCD 值,并将结果存储在 Destination 中。
小贴士:
在 Logix Designer 版本 36 中,此指令的助记符从 TOD 更改为 TO_BCD。
可用语言
梯形图

功能块图
功能块图支持以下元素:
FBD 块

结构化文本
此指令不可用于结构化文本中。
操作数
重要提示:
以下情况下会导致运行出现意外:
- 输出标签操作数被覆盖。
- 结构操作数的成员被覆盖。
- 除非另外指定,否则结构操作数由多条指令共用。
指令中混用数据类型时,需遵从相关的数据转换规则。请参阅 数据转换。
梯形图
操作数 | 数据类型 CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器 | 数据类型 CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器 | 格式 | 说明 |
Source | SINT INT DINT | SINT INT DINT LINT USINT UINT UDINT ULINT | 立即数 标签 | 要转换为 BCD 的值 0 Source 99,999,999 |
Destination | SINT INT DINT | SINT INT DINT LINT USINT UINT UDINT ULINT | 标签 | 用于存储结果的标签 |
功能块图
FBD 块
操作数 | 类型 | 格式 | 说明 |
TO_BCD 标签 | FBD_CONVERT | 结构 | TO_BCD 结构 |
FBD_CONVERT 结构
输入成员 | 数据类型 | 说明 |
EnableIn | BOOL | 启用输入。如果此参数清零,指令不会执行,也不会更新输出。 默认置位。 |
Source | DINT | 转换指令的输入。 有效值 = 任意整型值 |
输出成员 | 数据类型 | 说明 |
EnableOut | BOOL | 启用输出。 |
Dest | DINT | 转换指令的结果。将该输出的数学状态标志置位。 |
说明
BCD 表示二进制编码的十进制数字系统,其使用 4 位二进制计数法来表示各十进制数 (0-9)。
Source | Destination | 目标类型 |
负源值 < 0 | 0 | |
Source > 9,999, 999,999, 999,999 | 16#9999_9999_9999_9999 | ULINT |
Source > 9,999, 999,999, 999,999 | 16#9999_9999_9999_9999 | LINT |
源 > 99,999,999 | 16#9999_9999 | UDINT |
源 > 99,999,999 | 16#9999_9999 | DINT |
源 > 99,999,999 | 16#9999 | UINT |
源 > 99,999,999 | 16#9999 | INT |
源 > 99,999,999 | 16#99 | USINT |
源 > 99,999,999 | 16#99 | SINT |
影响数学状态标志
控制器 | 影响数学状态标志 |
CompactLogix 5380、ControlLogix 5580、Compact GuardLogix 5380、GuardLogix 5580 和 ControlLogix 5590 控制器 | 有一定条件下影响,请参阅 。 |
CompactLogix 5370、ControlLogix 5570、Compact GuardLogix 5370 和 GuardLogix 5570 控制器 | 是 |
严重/轻微故障
有关操作数相关的故障,请参阅 。
在以下情况下会发生轻微故障: | 故障类型 | 故障代码 |
功能已启用并检测到溢出,Source < 0 | 4 | 4 |
功能已启用并检测到溢出,Source > 99,999,999/9,999, 999,999, 999,999 | 4 | 4 |
功能已启用并检测到溢出 | 4 | 4 |
执行
梯形图
条件/状态 | 执行的操作 |
预扫描 | 不适用。 |
梯级输入条件为假 | 将梯级输出条件设置为梯级输入条件。 |
梯级输入条件为真 | 控制器将 Source 转换为 BCD 并将结果存储在 Destination 中。 |
后扫描 | 不适用。 |
功能块图
FBD 块
条件/状态 | 执行的操作 |
预扫描 | 不适用 |
EnableIn 为假 | 将 EnableOut 设为 EnableIn。 |
EnableIn 为真 | Dest = BCD 值中计算的结果。 如果发生溢出 将 EnableOut 设置为假。 否则 将 EnableOut 设置为真。 |
指令首次扫描 | 不适用 |
指令首次运行 | 不适用 |
后扫描 | 不适用 |
示例
梯形图

功能块

提供反馈
Source
99,999,999