签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
老师说有一个错误地方,请教一下各位。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1734622&b_id=4&s_id=0&num=7
这是啥语言,看起来好别扭
M001跳转到tw1后,还会跳转到M001吗?
temp1 temp2是哪里来的,你就直接加
t1w上面两个L然后T,第一个L没必要吧
temp1,temp2需要使用静态变量;
t1w里面没有对out进行赋值。
这个应该是一个FC 块,用于类似流量统计的计算。为避免出现实数类型大数加小数造成精度不够,误差大的情况,当累计值大于10000,就清0功能。 TEMP1 TEMP2 为实数类型临时变量,清0时 应 L 0.0 ;有一段 L TEMP1 L TEMP2 和运算时 漏掉了+R指令。 TEMP1 TEMP2没记忆功能,应改为输入输出管脚。
这个程序有几个问题。
这应该是FC块,temp1、temp2应该是临时变量吧,这种情况temp1、temp2是不保持的,可以使用FB块解决这点。
M001段结尾是将temp2传送给输出,这里是将temp1、temp2相加在输出,少了一个加指令。
当指令跳转到t1w时,此周期无输出,建议t1w结束时跳转回M001段的JC指令后,此处问题不大。
t1w段指令没有考虑到相加时temp1大于1万的情况,不应将temp1清零,应该将temp1减10000后在赋值给temp1。此处会出现小数计算不准的现象。
M001里面 L #TEMP1
L #TMEP2
+R
T OUT
//BEU 慎用
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录