签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
各位,1200PLC我想通过编码器脉冲计算实际米数。用ID1000的寄存器直接参与计算,可是得到的结果一直为零,不知道为什么???(图片的数据值只是参考,不是实际值)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1653359&b_id=50&s_id=0&num=7
1、你的id1000是强制状态的。
2、你的脉冲输入信号的硬件组态正确吗?
单看这一段程序看不出什么
这个是接入PLC在线的状况,id1000是有数值的,但是计算后就是为零。
0*无穷大还是0
由于ID1000转换的REAL实际上不是REAL,还是DINT ,你看看都不带小数点不是?
你可以这样操作一下,转换出来的值*1.0看看?
编码器脉冲设置有2种,一种是频率,一种是累积的,频率计算瞬时速度用的
你的数据要转换一下,ID1000是DWORD,不是REAL,你使用不同数据类型进行运算肯定有问题,你把ID1000转换为REAL ,如果还是有问题的话,可以考虑把转换为REAL的数据*1.0看看。
你这个问题我在N年之前就遇到过。
加个中间变量,ID1000是输入寄存器应该不可能是实数。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录