S7-300的模拟量转换为不同位数的数字后,为什么都是0~27648?

已锁定

Automann

  • 帖子

    6291
  • 精华

    139
  • 被关注

    292

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

S7-300的模拟量转换为不同位数的数字后,为什么都是0~27648?

7691

14

2011-05-01 08:55:27

本帖转自http://blog.gkong.com/blog.asp?name=liaochangchu
日本的PLC将12位模拟量输入模块转换后的数(0~4095)去掉尾数后为0~4000,对应于模块的模拟量的量程(例如0~10V)。美国的PLC(例如S7-200和GE的PLC)将4000左移3位,12位模拟量输入模块转换后的数为0~32000,接近16位正数的最大值32767。
S7-300的模拟量输入模块一般采用积分转化法,转换后的二进制数的位数可以设置为9~16位(与模块的型号和组态有关),如果小于16 位(包括符号位),则转换值被自动左移,使其最高位(符号位)在16位字的最高位,左移后未使用的低位则填入0。设转换的精度为12位加符号位,左移3位后低3位为0,相当于实际的值被乘以8。这种处理方法使转换后的数值与模拟量的关系与组态的A/D转换的位数无关,便于对转换值的后续计算和处理,例如PID控制功能块FB 41需要将来自模拟量输入模块的整数转换为0~100.0%的浮点数。
下表给出了模拟量输入模块的转换值与以百分数表示的模拟量之间的对应关系,其中最重要的关系是双极性模拟量量程的上、下限(100%和−100%)分别对应于模拟值27648和−27648。单极性模拟量量程的上、下限(100%和0%)分别对应于模拟值27648和0。

有人可能要问,为什么是27648呢?我认为可能是制定规则的人担心实际的模拟量输入可能会超过选择的量程,因此在量程的上、下限(-100%~100%)之外设置了18.5%的裕量。为什么是27648而不是别的数呢?因为27648的十六进制数6C00H是个较特殊的数。
不能认为模块的分辨率为1/27648,分辨率还是取决于模块设置的实际精度(转换后的位数)。

S7-300的模拟量转换为不同位数的数字后,为什么都是0~27648? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54045条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。