签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
很久没用SCL 了, 最近一个项目想把梯形图转换成SCL 来锻炼下,但是刚刚入手,就被一个简单的逻辑给打败了,有兄弟能帮忙解答下么? 痛苦的一笔
scl还是要会的,这个是趋势。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1775072&b_id=50&s_id=0&num=51
M0.3:=((M0.0 OR M0.3) AND NOT M0.1 AND NOT M0.2) OR M0.4 OR M0.5
有些逻辑梯形图简单,有些时候SCL简单,没必要追求只用一种语言来写,有时候混合起来用会更方便的。
梯形图更适合位逻辑的编写,SCL比较适合写大批量的算法。
为什么一定要全部用SCL,可以混用的
想这种逻辑明显LAD更好
可以用IF...Else套嵌也可完成,
你把他变成3行
每一行一条语句
前边的都是条件,后边的是输出。将条件展开,判断,结果送给输出。
同意楼上意见!
你这个梯形图就写得很好啊,已经比很多工程师强了。
可以试一下这个
复杂算法才适合SCL吧。
计算适用SCL,逻辑还是梯形图。
人1楼的答案就一行指令啊,梯形图功底不好的,很难装SCL的逼,IF THEN ELSE 的裹脚布是又臭又长啊
是不是学计算机编程的都这样?PLC明明是可编程逻辑控制器。
写程序上来就是IF THEN ;敲代码有那么得劲儿么?
明明 IF THEN 中间条件判断就是布尔运算结果;还要加个 == TRUE;
不是装又是什么?是按代码行算钱么?
最近做了一个项目用日系的PLC,梯形图实在是用不来,不知道是编程软件太难用,还是自己的梯形图太烂,总之发现,在博图上用SCL写好,然后拷贝到日系PLC,有些小问题稍微修改一下,完事,这个时候发现SCL真好用,写完程序看都懒得再看一眼!
M0.3:=((M0.0 OR M0.3) AND NOT M0.1 AND M0.2) OR M0.4 OR M0.5
1楼的指令存在错误吧,原图片中M0.2是常闭触点,正确的应该是
M0.3:=((M0.0 OR M0.3) AND NOT (M0.1 OR M0.2)) OR M0.4 OR M0.5 ;或者
M0.3:=((M0.0 OR M0.3) AND NOT M0.1 AND NOT M0.2) OR M0.4 OR M0.5;
所有的逻辑都转换成置1和置0两段逻辑,以不变应万变。
IF ( (M0.0=1) AND (M0.1=0) AND (M0.2=0) ) OR
M0.4 OR
M0.5
THEN
M0.3 := 1;
END_IF;
IF ((M0.1=1) OR (M0.2=1) ) AND
( M0.4=0) AND
(M0.5=0)
M0.3 := 0;
过来学习学习,感觉梯形图就挺好
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录