FANUC PMC计数器数据类型二进制与BCD详解

二进制与BCD

PMC计数器数据类型可分为二进制类型与BCD类型,二进制类型比较常用也方便理解,BCD类型可能很多初学者接触较少,接下来我们做下简单介绍。

BCD码英文为:Binary-Coded Decimal‎,中文翻译为:二进制编码的十进制代码。是用4位二进制数来表示1位十进制数中的0~9这10个数码。

通过上面这张图,可以明确看出BCD码的结构类型。为了更方便大家理解,我们举个例子:

如:56的BCD码,存储于C0-C1字节中,可将56拆解成两个部分:十位数的5和个位数的6;拆解完成后填入下图表格;

用C0的#0-#3共四位对应个位数6;用C0的#4-#7共四位对应十位数5;将6转换成二进制

“0110”填入#3-#0中,将5转换成二进制

“0101”填入#7-#4中(左右顺序一致),因没有百位与千位故C1忽略。

故56的BCD码表示为“01010110”,可按照此方式进行其他数据的BCD码转换。

BCD码与二进制代码本质都是以二进制为基础,只是两者表现形式有所差异。

同样字节长度的地址用于表达二进制与BCD时,有以下不同:

1.表达二进制时的数据范围要大于BCD数据范围;二进制数据范围为:-32768~+32767,BCD数据范围为:0~9999;(双字节长度)

2.二进制可表达正负数,BCD只可以表达正数;

3.二进制有单字节、双字节、四字节表达方式,BCD最多占用双字节。

注意事项

本文讲述了BCD代码的转换方法,在实际转换计数器数据格式后,一定要在PLC中对相关计数器进行数据转换,否则会导致数据出错。

例如:二进制时设定1号计数器设定值为20,将计数器更改为BCD类型后,计数器设定值就变为了14,计数器在计数时就会产生误差!

出现上述原因是因为在PLC中对1号计数器使用了二进制赋值功能指令而不是BCD赋值功能。

切记在更改计数器类型时,需要对PLC中相关指令进行变更。

发表回复

登录... 后才能评论