帮忙看看cmp块的一个程序段

我的本意是编一个小程序,模拟量输入点,与32767比较。当AI点大于32767时,加一个延时,然后输出;当AI点小于32767时,让计时器复位。但是,在线看程序,发现和自己想的不一样。图1正常输入时,显示状态没问题,图2,此时输入信号为32768,为什么cmp功能快的状态没有变化,请各位帮忙看我哪里出了问题。谢谢各位

问题补充:
各位老师,我想请教一下,用CMP时,是应该用十进制还是采用16进制

图片说明:

帮忙看看cmp块的一个程序段    帮忙看看cmp块的一个程序段   

最佳答案

CMP(I)的2个引脚的类型都是INT,你给定的32768大于INT类型的范围了(-32768---32767),所以程序出错了。
补充:引脚的类型都是INT,所以是十进制数。

提问者对于答案的评价:
实在抱歉,回复晚了,谢谢各位的帮助

专家置评

32767是个故障值,满量程的值是27648,32511是上溢的上限。
可参考S7-300模块手册:
http://www.ad.siemens.com.cn/download/docMessage.aspx?ID=1878&loginID=&srno=&sendtime

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc224503.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月1日 上午12:20
下一篇 2018年12月1日

相关推荐